Package org.apache.jackrabbit.oak.core

Examples of org.apache.jackrabbit.oak.core.ImmutableTree


            userEntries = Collections.emptyMap();
            groupEntries = Collections.emptyMap();
        } else {
            EntriesBuilder builder = new EntriesBuilder();
            for (Principal principal : principals) {
                ImmutableTree t = getPrincipalRoot(permissionsTree, principal);
                if (t.exists()) {
                    trees.put(principal.getName(), t);
                    builder.addEntries(principal, t, restrictionProvider);
                }
            }
            repoEntries = builder.getRepoEntries();
View Full Code Here


            return null;
        }
    }

    private static Tree getTree(String name, NodeState nodeState) {
        return new ImmutableTree(ImmutableTree.ParentProvider.UNSUPPORTED, name, nodeState, TreeTypeProvider.EMPTY);
    }
View Full Code Here

        this.workspaceName = root.getContentSession().getWorkspaceName();
        acConfig = securityProvider.getConfiguration(AccessControlConfiguration.class);
        if (principals.contains(SystemPrincipal.INSTANCE) || isAdmin(principals)) {
            compiledPermissions = AllPermissions.getInstance();
        } else {
            ImmutableTree permissionsTree = getPermissionsRoot();
            if (!permissionsTree.exists() || principals.isEmpty()) {
                compiledPermissions = NoPermissions.getInstance();
            } else {
                compiledPermissions = new CompiledPermissionImpl(principals,
                        permissionsTree, getBitsProvider(),
                        acConfig.getRestrictionProvider(),
View Full Code Here

        assertFalse(cp.hasPrivileges(null, PrivilegeConstants.JCR_READ));
    }

    private CompiledPermissionImpl createPermissions(Set<Principal> principals) {
        ImmutableTree permissionsTree = new ImmutableRoot(root, TreeTypeProvider.EMPTY).getTree(PERMISSIONS_STORE_PATH);
        return new CompiledPermissionImpl(principals, permissionsTree, pbp, rp, DEFAULT_READ_PATHS);
    }
View Full Code Here

        NodeBuilder root = EMPTY_NODE.builder();
        createPath(root, "a/b/c/d");
        createPath(root, "q");
        createPath(root, "x/y/x/y/z");
        createPath(root, "r/s/t/u/v/r/s/t/u/v/r/s/t/u/v/w");
        tree = new ImmutableTree(root.getNodeState());
    }
View Full Code Here

     * ** should match every path
     */
    @Test
    public void all() {
        Filter filter = new GlobbingPathFilter(STAR_STAR);
        ImmutableTree t = tree;

        for(String name : elements("a/b/c/d")) {
            t = t.getChild(name);
            assertTrue(filter.includeAdd(name, t.getNodeState()));
            filter = filter.create(name, t.getNodeState(), t.getNodeState());
            assertNotNull(filter);
        }
    }
View Full Code Here

     * **&#47r/s/t/u/v should match r/s/t/u/v and r/s/t/u/v/r/s/t/u/v and r/s/t/u/v/r/s/t/u/v/r/s/t/u/v
     */
    @Test
    public void multipleMatches() {
        Filter filter = new GlobbingPathFilter("**/r/s/t/u/v");
        ImmutableTree t = tree;

        for(int c = 0; c < 2; c++) {
            for(String name : elements("r/s/t/u")) {
                t = t.getChild(name);
                assertFalse(filter.includeAdd(name, t.getNodeState()));
                filter = filter.create(name, t.getNodeState(), t.getNodeState());
                assertNotNull(filter);
            }

            t = t.getChild("v");
            assertTrue(filter.includeAdd("v", t.getNodeState()));
            filter = filter.create("v", t.getNodeState(), t.getNodeState());
            assertNotNull(filter);
        }
    }
View Full Code Here

     * **&#47r/s/t/u/v/w should match r/s/t/u/v/r/s/t/u/v/r/s/t/u/v/w
     */
    @Test
    public void matchAtEnd() {
        Filter filter = new GlobbingPathFilter("**/r/s/t/u/v/w");
        ImmutableTree t = tree;

        for(String name : elements("r/s/t/u/v/r/s/t/u/v/r/s/t/u/v")) {
            t = t.getChild(name);
            assertFalse(filter.includeAdd(name, t.getNodeState()));
            filter = filter.create(name, t.getNodeState(), t.getNodeState());
            assertNotNull(filter);
        }

        t = t.getChild("w");
        assertTrue(filter.includeAdd("w", t.getNodeState()));
        filter = filter.create("w", t.getNodeState(), t.getNodeState());
        assertNotNull(filter);
    }
View Full Code Here

     * r/s/t&#47** should match r/s/t and all its descendants
     */
    @Test
    public void matchSuffix() {
        Filter filter = new GlobbingPathFilter("r/s/t/**");
        ImmutableTree t = tree;

        for(String name : elements("r/s")) {
            t = t.getChild(name);
            assertFalse(filter.includeAdd(name, t.getNodeState()));
            filter = filter.create(name, t.getNodeState(), t.getNodeState());
            assertNotNull(filter);
        }

        for (String name: elements("t/u/v/r/s/t/u/v/r/s/t/u/v/w")) {
            t = t.getChild(name);
            assertTrue(filter.includeAdd(name, t.getNodeState()));
            filter = filter.create(name, t.getNodeState(), t.getNodeState());
            assertNotNull(filter);
        }
    }
View Full Code Here

    }

    private static TreePermission getTreePermission(PermissionProvider permissionProvider,
            NodeState root, String basePath) {
        TreePermission treePermission = permissionProvider.getTreePermission(
                new ImmutableTree(root), TreePermission.EMPTY);

        for (String name : PathUtils.elements(basePath)) {
            root = root.getChildNode(name);
            treePermission = treePermission.getChildPermission(name, root);
        }
View Full Code Here

TOP

Related Classes of org.apache.jackrabbit.oak.core.ImmutableTree

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.