private void update(AccessControlManager acm, JcrAccessControlList a1, AccessControlList a2) throws AccessControlException, RepositoryException { Collection<JcrPolicy> policies = a1.entries(); for (JcrPolicy policy : policies) { a2.addAccessControlEntry( new SimplePrincipal(policy.getPrincipal()), privileges(acm, policy.getPermissions())); } }
private JcrAccessControlList getAccessList(AccessControlManager acm, Node node) throws RepositoryException { AccessControlList accessList = findAccessList(acm, node); if (accessList == null) { return JcrAccessControlList.defaultInstance(); } JcrAccessControlList acl = new JcrAccessControlList(); AccessControlEntry[] entries = accessList.getAccessControlEntries(); for (AccessControlEntry entry : entries) { JcrPolicy en = new JcrPolicy(); en.setPrincipal(entry.getPrincipal().getName()); Privilege[] privileges = entry.getPrivileges(); for (Privilege p : privileges) { en.add(new JcrPermission(p.getName())); } } return acl; }