test_class.file: oak-core/src/test/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionUtilTest.java
test_class.identifier: PermissionUtilTest
test_case.body: @Test
      public void testGetReadOnlyTreeOrNullFromNull() {
          Root r = mock(Root.class);
  
          assertNull(PermissionUtil.getReadOnlyTreeOrNull(null, r));
          verify(r, never()).getTree(anyString());
      }
test_case.class_method_signature: PermissionUtilTest.testGetReadOnlyTreeOrNullFromNull()
test_case.full_signature: @Test public void testGetReadOnlyTreeOrNullFromNull()
test_case.identifier: testGetReadOnlyTreeOrNullFromNull
test_case.invocations: mock assertNull getReadOnlyTreeOrNull getTree verify never anyString
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testGetReadOnlyTreeOrNullFromNull()
focal_class.file: oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionUtil.java
focal_class.identifier: PermissionUtil
focal_class.interfaces: implements PermissionConstants
focal_class.class_method_signature: PermissionUtil.PermissionUtil()
focal_class.full_signature: private  PermissionUtil()
focal_class.identifier: PermissionUtil
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.signature:  PermissionUtil()
focal_class.class_method_signature: PermissionUtil.getParentPathOrNull(@NotNull final String path)
focal_class.full_signature: @Nullable public static String getParentPathOrNull(@NotNull final String path)
focal_class.identifier: getParentPathOrNull
focal_class.modifiers: @Nullable public static
focal_class.parameters: (@NotNull final String path)
focal_class.return: String
focal_class.signature: String getParentPathOrNull(@NotNull final String path)
focal_class.class_method_signature: PermissionUtil.getEntryName(@Nullable String accessControlledPath)
focal_class.full_signature: @NotNull public static String getEntryName(@Nullable String accessControlledPath)
focal_class.identifier: getEntryName
focal_class.modifiers: @NotNull public static
focal_class.parameters: (@Nullable String accessControlledPath)
focal_class.return: String
focal_class.signature: String getEntryName(@Nullable String accessControlledPath)
focal_class.class_method_signature: PermissionUtil.checkACLPath(@NotNull NodeBuilder node, @NotNull String path)
focal_class.full_signature: public static boolean checkACLPath(@NotNull NodeBuilder node, @NotNull String path)
focal_class.identifier: checkACLPath
focal_class.modifiers: public static
focal_class.parameters: (@NotNull NodeBuilder node, @NotNull String path)
focal_class.return: boolean
focal_class.signature: boolean checkACLPath(@NotNull NodeBuilder node, @NotNull String path)
focal_class.class_method_signature: PermissionUtil.checkACLPath(@NotNull Tree node, @NotNull String path)
focal_class.full_signature: public static boolean checkACLPath(@NotNull Tree node, @NotNull String path)
focal_class.identifier: checkACLPath
focal_class.modifiers: public static
focal_class.parameters: (@NotNull Tree node, @NotNull String path)
focal_class.return: boolean
focal_class.signature: boolean checkACLPath(@NotNull Tree node, @NotNull String path)
focal_class.class_method_signature: PermissionUtil.getPermissionsRoot(@NotNull Root root, @NotNull String permissionRootName)
focal_class.full_signature: @NotNull public static Tree getPermissionsRoot(@NotNull Root root, @NotNull String permissionRootName)
focal_class.identifier: getPermissionsRoot
focal_class.modifiers: @NotNull public static
focal_class.parameters: (@NotNull Root root, @NotNull String permissionRootName)
focal_class.return: Tree
focal_class.signature: Tree getPermissionsRoot(@NotNull Root root, @NotNull String permissionRootName)
focal_class.class_method_signature: PermissionUtil.getPrincipalRoot(@NotNull Tree permissionsTree, @NotNull String principalName)
focal_class.full_signature: @NotNull public static Tree getPrincipalRoot(@NotNull Tree permissionsTree, @NotNull String principalName)
focal_class.identifier: getPrincipalRoot
focal_class.modifiers: @NotNull public static
focal_class.parameters: (@NotNull Tree permissionsTree, @NotNull String principalName)
focal_class.return: Tree
focal_class.signature: Tree getPrincipalRoot(@NotNull Tree permissionsTree, @NotNull String principalName)
focal_class.class_method_signature: PermissionUtil.isAdminOrSystem(@NotNull Set<Principal> principals, @NotNull ConfigurationParameters config)
focal_class.full_signature: public static boolean isAdminOrSystem(@NotNull Set<Principal> principals, @NotNull ConfigurationParameters config)
focal_class.identifier: isAdminOrSystem
focal_class.modifiers: public static
focal_class.parameters: (@NotNull Set<Principal> principals, @NotNull ConfigurationParameters config)
focal_class.return: boolean
focal_class.signature: boolean isAdminOrSystem(@NotNull Set<Principal> principals, @NotNull ConfigurationParameters config)
focal_class.class_method_signature: PermissionUtil.getPath(@Nullable Tree parentBefore, @Nullable Tree parentAfter)
focal_class.full_signature: @Nullable public static String getPath(@Nullable Tree parentBefore, @Nullable Tree parentAfter)
focal_class.identifier: getPath
focal_class.modifiers: @Nullable public static
focal_class.parameters: (@Nullable Tree parentBefore, @Nullable Tree parentAfter)
focal_class.return: String
focal_class.signature: String getPath(@Nullable Tree parentBefore, @Nullable Tree parentAfter)
focal_class.class_method_signature: PermissionUtil.getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_class.full_signature: @Nullable public static Tree getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_class.identifier: getReadOnlyTreeOrNull
focal_class.modifiers: @Nullable public static
focal_class.parameters: (@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_class.return: Tree
focal_class.signature: Tree getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_class.class_method_signature: PermissionUtil.getReadOnlyTree(@NotNull Tree tree, @NotNull Root readOnlyRoot)
focal_class.full_signature: @NotNull public static Tree getReadOnlyTree(@NotNull Tree tree, @NotNull Root readOnlyRoot)
focal_class.identifier: getReadOnlyTree
focal_class.modifiers: @NotNull public static
focal_class.parameters: (@NotNull Tree tree, @NotNull Root readOnlyRoot)
focal_class.return: Tree
focal_class.signature: Tree getReadOnlyTree(@NotNull Tree tree, @NotNull Root readOnlyRoot)
focal_method.body: @Nullable
      public static Tree getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot) {
          if (tree instanceof ReadOnly) {
              return tree;
          } else {
              return (tree == null) ? null : readOnlyRoot.getTree(tree.getPath());
          }
      }
focal_method.class_method_signature: PermissionUtil.getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_method.full_signature: @Nullable public static Tree getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_method.identifier: getReadOnlyTreeOrNull
focal_method.invocations: getTree getPath
focal_method.modifiers: @Nullable public static
focal_method.parameters: (@Nullable Tree tree, @NotNull Root readOnlyRoot)
focal_method.return: Tree
focal_method.signature: Tree getReadOnlyTreeOrNull(@Nullable Tree tree, @NotNull Root readOnlyRoot)