You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by an...@apache.org on 2013/02/28 19:48:22 UTC
svn commit: r1451289 -
/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java
Author: angela
Date: Thu Feb 28 18:48:21 2013
New Revision: 1451289
URL: http://svn.apache.org/r1451289
Log:
OAK-527: permissions (wip)
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java?rev=1451289&r1=1451288&r2=1451289&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissionImpl.java Thu Feb 28 18:48:21 2013
@@ -18,6 +18,7 @@ package org.apache.jackrabbit.oak.securi
import java.security.Principal;
import java.security.acl.Group;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -30,7 +31,6 @@ import com.google.common.collect.Immutab
import org.apache.jackrabbit.oak.api.PropertyState;
import org.apache.jackrabbit.oak.api.Tree;
import org.apache.jackrabbit.oak.api.Type;
-import org.apache.jackrabbit.oak.core.ReadOnlyRoot;
import org.apache.jackrabbit.oak.core.ReadOnlyTree;
import org.apache.jackrabbit.oak.security.authorization.AccessControlConstants;
import org.apache.jackrabbit.oak.security.privilege.PrivilegeBits;
@@ -62,7 +62,7 @@ class CompiledPermissionImpl implements
update(permissionsTree, bitsProvider);
}
- void update(@Nonnull ReadOnlyTree permissionsTree, @Nonnull PrivilegeBitsProvider bitsProvider) {
+ void update(@Nullable ReadOnlyTree permissionsTree, @Nonnull PrivilegeBitsProvider bitsProvider) {
// TODO: determine if entries need to be reloaded due to changes to the
// TODO: affected permission-nodes.
this.bitsProvider = bitsProvider;
@@ -114,17 +114,22 @@ class CompiledPermissionImpl implements
//------------------------------------------------------------< private >---
- private void buildEntries(ReadOnlyTree permissionsTree) {
- EntriesBuilder builder = new EntriesBuilder();
- for (Principal principal : principals) {
- ReadOnlyTree t = getPrincipalRoot(permissionsTree, principal);
- if (t != null) {
- trees.put(principal.getName(), t);
- builder.addEntry(principal, t);
+ private void buildEntries(@Nullable ReadOnlyTree permissionsTree) {
+ if (permissionsTree == null) {
+ userEntries = Collections.emptyMap();
+ groupEntries = Collections.emptyMap();
+ } else {
+ EntriesBuilder builder = new EntriesBuilder();
+ for (Principal principal : principals) {
+ ReadOnlyTree t = getPrincipalRoot(permissionsTree, principal);
+ if (t != null) {
+ trees.put(principal.getName(), t);
+ builder.addEntry(principal, t);
+ }
}
+ userEntries = builder.userEntries.build();
+ groupEntries = builder.groupEntries.build();
}
- userEntries = builder.userEntries.build();
- groupEntries = builder.groupEntries.build();
}
@CheckForNull