Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/Util.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/Util.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/Util.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/accesscontrol/Util.java Wed Jul 18 14:37:06 2018 @@ -18,8 +18,6 @@ package org.apache.jackrabbit.oak.securi import java.security.Principal; import java.util.Set; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; import javax.jcr.security.AccessControlException; import javax.jcr.security.AccessControlPolicy; @@ -32,6 +30,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.principal.PrincipalImpl; import org.apache.jackrabbit.oak.spi.xml.ImportBehavior; import org.apache.jackrabbit.oak.spi.xml.ProtectedItemImporter; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Implementation specific access control utility methods @@ -44,12 +44,12 @@ final class Util implements AccessContro private Util() {} public static void checkValidPrincipal(@Nullable Principal principal, - @Nonnull PrincipalManager principalManager) throws AccessControlException { + @NotNull PrincipalManager principalManager) throws AccessControlException { checkValidPrincipal(principal, principalManager, ImportBehavior.ABORT); } public static boolean checkValidPrincipal(@Nullable Principal principal, - @Nonnull PrincipalManager principalManager, + @NotNull PrincipalManager principalManager, int importBehavior) throws AccessControlException { String name = (principal == null) ? null : principal.getName(); if (name == null || name.isEmpty()) { @@ -70,7 +70,7 @@ final class Util implements AccessContro } public static void checkValidPrincipals(@Nullable Set<Principal> principals, - @Nonnull PrincipalManager principalManager) throws AccessControlException { + @NotNull PrincipalManager principalManager) throws AccessControlException { if (principals == null) { throw new AccessControlException("Valid principals expected. Found null."); } @@ -79,7 +79,7 @@ final class Util implements AccessContro } } - public static boolean isValidPolicy(@Nullable String oakPath, @Nonnull AccessControlPolicy policy) { + public static boolean isValidPolicy(@Nullable String oakPath, @NotNull AccessControlPolicy policy) { if (policy instanceof ACL) { String path = ((ACL) policy).getOakPath(); return !((path == null && oakPath != null) || (path != null && !path.equals(oakPath))); @@ -87,28 +87,28 @@ final class Util implements AccessContro return false; } - public static void checkValidPolicy(@Nullable String oakPath, @Nonnull AccessControlPolicy policy) throws AccessControlException { + public static void checkValidPolicy(@Nullable String oakPath, @NotNull AccessControlPolicy policy) throws AccessControlException { if (!isValidPolicy(oakPath, policy)) { throw new AccessControlException("Invalid access control policy " + policy); } } - public static boolean isAccessControlled(@Nullable String oakPath, @Nonnull Tree tree, - @Nonnull ReadOnlyNodeTypeManager ntMgr) { + public static boolean isAccessControlled(@Nullable String oakPath, @NotNull Tree tree, + @NotNull ReadOnlyNodeTypeManager ntMgr) { String mixinName = getMixinName(oakPath); return ntMgr.isNodeType(tree, mixinName); } - public static boolean isACE(@Nonnull Tree tree, @Nonnull ReadOnlyNodeTypeManager ntMgr) { + public static boolean isACE(@NotNull Tree tree, @NotNull ReadOnlyNodeTypeManager ntMgr) { return tree.exists() && ntMgr.isNodeType(tree, NT_REP_ACE); } - @Nonnull + @NotNull public static String getMixinName(@Nullable String oakPath) { return (oakPath == null) ? MIX_REP_REPO_ACCESS_CONTROLLABLE : MIX_REP_ACCESS_CONTROLLABLE; } - @Nonnull + @NotNull public static String getAclName(@Nullable String oakPath) { return (oakPath == null) ? REP_REPO_POLICY : REP_POLICY; } @@ -120,8 +120,8 @@ final class Util implements AccessContro * @param index The index of the entry in the list * @return the name of the ACE node. */ - @Nonnull - public static String generateAceName(@Nonnull ACE ace, int index) { + @NotNull + public static String generateAceName(@NotNull ACE ace, int index) { String hint = (ace.isAllow()) ? "allow" : "deny"; if (index == 0) { return hint; @@ -134,4 +134,4 @@ final class Util implements AccessContro String importBehaviorStr = config.getParameters().getConfigValue(ProtectedItemImporter.PARAM_IMPORT_BEHAVIOR, ImportBehavior.NAME_ABORT); return ImportBehavior.valueFromString(importBehaviorStr); } -} \ No newline at end of file +}
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAccessControlManager.java Wed Jul 18 14:37:06 2018 @@ -19,7 +19,6 @@ package org.apache.jackrabbit.oak.securi import java.security.Principal; import java.util.List; import java.util.Set; -import javax.annotation.Nonnull; import javax.jcr.RepositoryException; import javax.jcr.security.AccessControlException; import javax.jcr.security.AccessControlManager; @@ -39,6 +38,7 @@ import org.apache.jackrabbit.oak.namepat import org.apache.jackrabbit.oak.spi.security.SecurityProvider; import org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.AbstractAccessControlManager; import org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.PolicyOwner; +import org.jetbrains.annotations.NotNull; /** * Access control manager that aggregates a list of different access control @@ -51,16 +51,16 @@ class CompositeAccessControlManager exte private final List<AccessControlManager> acMgrs; - public CompositeAccessControlManager(@Nonnull Root root, - @Nonnull NamePathMapper namePathMapper, - @Nonnull SecurityProvider securityProvider, - @Nonnull List<AccessControlManager> acMgrs) { + public CompositeAccessControlManager(@NotNull Root root, + @NotNull NamePathMapper namePathMapper, + @NotNull SecurityProvider securityProvider, + @NotNull List<AccessControlManager> acMgrs) { super(root, namePathMapper, securityProvider); this.acMgrs = acMgrs; } //-----------------------------------------------< AccessControlManager >--- - @Nonnull + @NotNull @Override public Privilege[] getSupportedPrivileges(String absPath) throws RepositoryException { ImmutableSet.Builder<Privilege> privs = ImmutableSet.builder(); @@ -160,4 +160,4 @@ class CompositeAccessControlManager exte List<AccessControlPolicy> l = privs.build(); return l.toArray(new AccessControlPolicy[l.size()]); } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAuthorizationConfiguration.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAuthorizationConfiguration.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAuthorizationConfiguration.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeAuthorizationConfiguration.java Wed Jul 18 14:37:06 2018 @@ -20,8 +20,6 @@ import java.security.Principal; import java.util.ArrayList; import java.util.List; import java.util.Set; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; import javax.jcr.security.AccessControlManager; import com.google.common.collect.Lists; @@ -35,6 +33,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.authorization.permission.PermissionProvider; import org.apache.jackrabbit.oak.spi.security.authorization.restriction.CompositeRestrictionProvider; import org.apache.jackrabbit.oak.spi.security.authorization.restriction.RestrictionProvider; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -115,7 +115,7 @@ public class CompositeAuthorizationConfi super(AuthorizationConfiguration.NAME); } - public CompositeAuthorizationConfiguration(@Nonnull SecurityProvider securityProvider) { + public CompositeAuthorizationConfiguration(@NotNull SecurityProvider securityProvider) { super(AuthorizationConfiguration.NAME, securityProvider); } @@ -123,10 +123,10 @@ public class CompositeAuthorizationConfi this.compositionType = CompositionType.fromString(ct); } - @Nonnull + @NotNull @Override - public AccessControlManager getAccessControlManager(@Nonnull final Root root, - @Nonnull final NamePathMapper namePathMapper) { + public AccessControlManager getAccessControlManager(@NotNull final Root root, + @NotNull final NamePathMapper namePathMapper) { List<AuthorizationConfiguration> configurations = getConfigurations(); switch (configurations.size()) { case 0: throw new IllegalStateException(); @@ -138,7 +138,7 @@ public class CompositeAuthorizationConfi } } - @Nonnull + @NotNull @Override public RestrictionProvider getRestrictionProvider() { List<AuthorizationConfiguration> configurations = getConfigurations(); @@ -157,11 +157,11 @@ public class CompositeAuthorizationConfi } } - @Nonnull + @NotNull @Override - public PermissionProvider getPermissionProvider(@Nonnull final Root root, - @Nonnull final String workspaceName, - @Nonnull final Set<Principal> principals) { + public PermissionProvider getPermissionProvider(@NotNull final Root root, + @NotNull final String workspaceName, + @NotNull final Set<Principal> principals) { List<AuthorizationConfiguration> configurations = getConfigurations(); switch (configurations.size()) { case 0: throw new IllegalStateException(); @@ -190,4 +190,4 @@ public class CompositeAuthorizationConfi return pp; } } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositePermissionProvider.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositePermissionProvider.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositePermissionProvider.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositePermissionProvider.java Wed Jul 18 14:37:06 2018 @@ -19,9 +19,6 @@ package org.apache.jackrabbit.oak.securi import java.util.List; import java.util.Set; import java.util.function.Function; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Root; import org.apache.jackrabbit.oak.api.Tree; @@ -40,6 +37,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission; import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeBits; import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeBitsProvider; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import static org.apache.jackrabbit.oak.security.authorization.composite.CompositeAuthorizationConfiguration.CompositionType.AND; @@ -65,9 +64,9 @@ class CompositePermissionProvider implem private PrivilegeBitsProvider privilegeBitsProvider; private TreeTypeProvider typeProvider; - CompositePermissionProvider(@Nonnull Root root, @Nonnull List<AggregatedPermissionProvider> pps, - @Nonnull Context acContext, @Nonnull CompositionType compositionType, - @Nonnull RootProvider rootProvider, @Nonnull TreeProvider treeProvider) { + CompositePermissionProvider(@NotNull Root root, @NotNull List<AggregatedPermissionProvider> pps, + @NotNull Context acContext, @NotNull CompositionType compositionType, + @NotNull RootProvider rootProvider, @NotNull TreeProvider treeProvider) { this.root = root; this.pps = pps.toArray(new AggregatedPermissionProvider[pps.size()]); this.ctx = acContext; @@ -92,7 +91,7 @@ class CompositePermissionProvider implem } } - @Nonnull + @NotNull @Override public Set<String> getPrivileges(@Nullable Tree tree) { Tree immutableTree = PermissionUtil.getReadOnlyTree(tree, immutableRoot); @@ -123,7 +122,7 @@ class CompositePermissionProvider implem } @Override - public boolean hasPrivileges(@Nullable Tree tree, @Nonnull String... privilegeNames) { + public boolean hasPrivileges(@Nullable Tree tree, @NotNull String... privilegeNames) { Tree immutableTree = PermissionUtil.getReadOnlyTree(tree, immutableRoot); PrivilegeBits privilegeBits = privilegeBitsProvider.getBits(privilegeNames); if (privilegeBits.isEmpty()) { @@ -161,15 +160,15 @@ class CompositePermissionProvider implem return hasPrivileges && coveredPrivs.includes(privilegeBits); } - @Nonnull + @NotNull @Override public RepositoryPermission getRepositoryPermission() { return repositoryPermission; } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreePermission parentPermission) { Tree readOnlyTree = PermissionUtil.getReadOnlyTree(tree, immutableRoot); if (tree.isRoot()) { return CompositeTreePermission.create(readOnlyTree, treeProvider, typeProvider, pps, compositionType); @@ -181,7 +180,7 @@ class CompositePermissionProvider implem } @Override - public boolean isGranted(@Nonnull Tree parent, @Nullable PropertyState property, long permissions) { + public boolean isGranted(@NotNull Tree parent, @Nullable PropertyState property, long permissions) { Tree immParent = PermissionUtil.getReadOnlyTree(parent, immutableRoot); boolean isGranted = false; @@ -209,7 +208,7 @@ class CompositePermissionProvider implem } @Override - public boolean isGranted(@Nonnull String oakPath, @Nonnull String jcrActions) { + public boolean isGranted(@NotNull String oakPath, @NotNull String jcrActions) { TreeLocation location = TreeLocation.create(immutableRoot, oakPath); boolean isAcContent = ctx.definesLocation(location); @@ -237,8 +236,8 @@ class CompositePermissionProvider implem private final CompositionType compositionType; - public CompositeRepositoryPermission(@Nonnull AggregatedPermissionProvider[] pps, - @Nonnull CompositionType compositionType) { + public CompositeRepositoryPermission(@NotNull AggregatedPermissionProvider[] pps, + @NotNull CompositionType compositionType) { this.pps = pps; this.compositionType = compositionType; } @@ -274,7 +273,7 @@ class CompositePermissionProvider implem //---------------------------------------< AggregatedPermissionProvider >--- - @Nonnull + @NotNull @Override public PrivilegeBits supportedPrivileges(@Nullable Tree tree, @Nullable PrivilegeBits privilegeBits) { PrivilegeBits result = PrivilegeBits.getInstance(); @@ -313,7 +312,7 @@ class CompositePermissionProvider implem } @Override - public boolean isGranted(@Nonnull TreeLocation location, long permissions) { + public boolean isGranted(@NotNull TreeLocation location, long permissions) { PropertyState property = location.getProperty(); Tree tree = (property == null) ? location.getTree() : location.getParent().getTree(); @@ -346,10 +345,10 @@ class CompositePermissionProvider implem } } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreeType type, - @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreeType type, + @NotNull TreePermission parentPermission) { Tree immutableTree = PermissionUtil.getReadOnlyTree(tree, immutableRoot); if (tree.isRoot()) { return CompositeTreePermission.create(immutableTree, treeProvider, typeProvider, pps, compositionType); Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeTreePermission.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeTreePermission.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeTreePermission.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/composite/CompositeTreePermission.java Wed Jul 18 14:37:06 2018 @@ -17,9 +17,6 @@ package org.apache.jackrabbit.oak.security.authorization.composite; import java.util.function.Supplier; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.plugins.tree.TreeProvider; @@ -30,6 +27,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.authorization.permission.Permissions; import org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission; import org.apache.jackrabbit.oak.spi.state.NodeState; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import static org.apache.jackrabbit.oak.security.authorization.composite.CompositeAuthorizationConfiguration.CompositionType.AND; import static org.apache.jackrabbit.oak.security.authorization.composite.CompositeAuthorizationConfiguration.CompositionType.OR; @@ -53,10 +52,10 @@ final class CompositeTreePermission impl private Boolean canRead; private Boolean canReadProperties; - private CompositeTreePermission(@Nonnull Tree tree, @Nonnull TreeType type, - @Nonnull TreeProvider treeProvider, - @Nonnull TreeTypeProvider typeProvider, @Nonnull AggregatedPermissionProvider[] providers, - @Nonnull TreePermission[] treePermissions, int cnt, @Nonnull CompositionType compositionType) { + private CompositeTreePermission(@NotNull Tree tree, @NotNull TreeType type, + @NotNull TreeProvider treeProvider, + @NotNull TreeTypeProvider typeProvider, @NotNull AggregatedPermissionProvider[] providers, + @NotNull TreePermission[] treePermissions, int cnt, @NotNull CompositionType compositionType) { this.tree = tree; this.type = type; @@ -68,11 +67,11 @@ final class CompositeTreePermission impl this.compositionType = compositionType; } - static TreePermission create(@Nonnull Tree rootTree, - @Nonnull TreeProvider treeProvider, - @Nonnull TreeTypeProvider typeProvider, - @Nonnull AggregatedPermissionProvider[] providers, - @Nonnull CompositionType compositionType) { + static TreePermission create(@NotNull Tree rootTree, + @NotNull TreeProvider treeProvider, + @NotNull TreeTypeProvider typeProvider, + @NotNull AggregatedPermissionProvider[] providers, + @NotNull CompositionType compositionType) { switch (providers.length) { case 0 : return TreePermission.EMPTY; case 1 : return providers[0].getTreePermission(rootTree, TreeType.DEFAULT, TreePermission.EMPTY); @@ -91,18 +90,18 @@ final class CompositeTreePermission impl } } - static TreePermission create(@Nonnull final Tree tree, @Nonnull TreeProvider treeProvider, @Nonnull CompositeTreePermission parentPermission) { + static TreePermission create(@NotNull final Tree tree, @NotNull TreeProvider treeProvider, @NotNull CompositeTreePermission parentPermission) { return create(() -> tree, tree.getName(), treeProvider.asNodeState(tree), parentPermission, null); } - static TreePermission create(@Nonnull final Tree tree, @Nonnull TreeProvider treeProvider, @Nonnull CompositeTreePermission parentPermission, + static TreePermission create(@NotNull final Tree tree, @NotNull TreeProvider treeProvider, @NotNull CompositeTreePermission parentPermission, @Nullable TreeType treeType) { return create(() -> tree, tree.getName(), treeProvider.asNodeState(tree), parentPermission, treeType); } - private static TreePermission create(@Nonnull Supplier<Tree> lazyTree, - @Nonnull String childName, @Nonnull NodeState childState, - @Nonnull CompositeTreePermission parentPermission, + private static TreePermission create(@NotNull Supplier<Tree> lazyTree, + @NotNull String childName, @NotNull NodeState childState, + @NotNull CompositeTreePermission parentPermission, @Nullable TreeType treeType) { switch (parentPermission.childSize) { case 0: return TreePermission.EMPTY; @@ -146,9 +145,9 @@ final class CompositeTreePermission impl } //-----------------------------------------------------< TreePermission >--- - @Nonnull + @NotNull @Override - public TreePermission getChildPermission(@Nonnull final String childName, @Nonnull final NodeState childState) { + public TreePermission getChildPermission(@NotNull final String childName, @NotNull final NodeState childState) { return create(() -> treeProvider.createReadOnlyTree(tree, childName, childState), childName, childState, this, null); } @@ -161,7 +160,7 @@ final class CompositeTreePermission impl } @Override - public boolean canRead(@Nonnull PropertyState property) { + public boolean canRead(@NotNull PropertyState property) { return grantsRead(property); } @@ -198,7 +197,7 @@ final class CompositeTreePermission impl } @Override - public boolean isGranted(long permissions, @Nonnull PropertyState property) { + public boolean isGranted(long permissions, @NotNull PropertyState property) { return grantsPermission(permissions, property); } @@ -257,11 +256,11 @@ final class CompositeTreePermission impl return supportedPermissions != Permissions.NO_PERMISSION; } - private static boolean isValid(@Nonnull TreePermission tp) { + private static boolean isValid(@NotNull TreePermission tp) { return NO_RECOURSE != tp; } - private static TreeType getType(@Nonnull Tree tree, @Nonnull CompositeTreePermission parent) { + private static TreeType getType(@NotNull Tree tree, @NotNull CompositeTreePermission parent) { return parent.typeProvider.getType(tree, parent.type); } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/AllPermissions.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/AllPermissions.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/AllPermissions.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/AllPermissions.java Wed Jul 18 14:37:06 2018 @@ -18,9 +18,6 @@ package org.apache.jackrabbit.oak.securi import java.util.Collections; import java.util.Set; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Root; import org.apache.jackrabbit.oak.api.Tree; @@ -28,6 +25,8 @@ import org.apache.jackrabbit.oak.plugins import org.apache.jackrabbit.oak.spi.security.authorization.permission.RepositoryPermission; import org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission; import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeConstants; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Implementation of the {@code CompiledPermissions} interface that grants full @@ -45,46 +44,46 @@ final class AllPermissions implements Co } @Override - public void refresh(@Nonnull Root root, @Nonnull String workspaceName) { + public void refresh(@NotNull Root root, @NotNull String workspaceName) { // nop } - @Nonnull + @NotNull @Override public RepositoryPermission getRepositoryPermission() { return RepositoryPermission.ALL; } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreePermission parentPermission) { return TreePermission.ALL; } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreeType type, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreeType type, @NotNull TreePermission parentPermission) { return TreePermission.ALL; } @Override - public boolean isGranted(@Nonnull Tree tree, @Nullable PropertyState property, long permissions) { + public boolean isGranted(@NotNull Tree tree, @Nullable PropertyState property, long permissions) { return true; } @Override - public boolean isGranted(@Nonnull String path, long permissions) { + public boolean isGranted(@NotNull String path, long permissions) { return true; } - @Nonnull + @NotNull @Override public Set<String> getPrivileges(@Nullable Tree tree) { return Collections.singleton(PrivilegeConstants.JCR_ALL); } @Override - public boolean hasPrivileges(@Nullable Tree tree, @Nonnull String... privilegeNames) { + public boolean hasPrivileges(@Nullable Tree tree, @NotNull String... privilegeNames) { return true; } } Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/ChildOrderDiff.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/ChildOrderDiff.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/ChildOrderDiff.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/ChildOrderDiff.java Wed Jul 18 14:37:06 2018 @@ -18,11 +18,10 @@ package org.apache.jackrabbit.oak.securi import java.util.Iterator; import java.util.Set; -import javax.annotation.CheckForNull; - import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Type; import org.apache.jackrabbit.oak.plugins.tree.TreeConstants; +import org.jetbrains.annotations.Nullable; import static com.google.common.collect.Sets.newLinkedHashSet; @@ -44,7 +43,7 @@ final class ChildOrderDiff { * @return the name of the first reordered child if any user-supplied node * reorder happened; {@code null} otherwise. */ - @CheckForNull + @Nullable static String firstReordered(PropertyState before, PropertyState after) { Set<String> afterNames = newLinkedHashSet(after.getValue(Type.NAMES)); Set<String> beforeNames = newLinkedHashSet(before.getValue(Type.NAMES)); 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=1836177&r1=1836176&r2=1836177&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 Wed Jul 18 14:37:06 2018 @@ -25,10 +25,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; -import javax.annotation.CheckForNull; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import com.google.common.collect.ImmutableMap; import org.apache.jackrabbit.JcrConstants; import org.apache.jackrabbit.commons.iterator.AbstractLazyIterator; @@ -53,6 +49,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeBitsProvider; import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeConstants; import org.apache.jackrabbit.oak.spi.state.NodeState; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -83,13 +81,13 @@ final class CompiledPermissionImpl imple private ReadOnlyVersionManager versionManager; private PrivilegeBitsProvider bitsProvider; - private CompiledPermissionImpl(@Nonnull Set<Principal> principals, - @Nonnull Root root, - @Nonnull String workspaceName, - @Nonnull PermissionStore store, - @Nonnull ConfigurationParameters options, - @Nonnull Context ctx, - @Nonnull ProviderCtx providerCtx) { + private CompiledPermissionImpl(@NotNull Set<Principal> principals, + @NotNull Root root, + @NotNull String workspaceName, + @NotNull PermissionStore store, + @NotNull ConfigurationParameters options, + @NotNull Context ctx, + @NotNull ProviderCtx providerCtx) { this.root = root; this.workspaceName = workspaceName; this.providerCtx = providerCtx; @@ -117,13 +115,13 @@ final class CompiledPermissionImpl imple typeProvider = new TreeTypeProvider(ctx); } - static CompiledPermissions create(@Nonnull Root root, - @Nonnull String workspaceName, - @Nonnull PermissionStore store, - @Nonnull Set<Principal> principals, - @Nonnull ConfigurationParameters options, - @Nonnull Context ctx, - @Nonnull ProviderCtx providerCtx) { + static CompiledPermissions create(@NotNull Root root, + @NotNull String workspaceName, + @NotNull PermissionStore store, + @NotNull Set<Principal> principals, + @NotNull ConfigurationParameters options, + @NotNull Context ctx, + @NotNull ProviderCtx providerCtx) { Tree permissionsTree = PermissionUtil.getPermissionsRoot(root, workspaceName); if (!permissionsTree.exists() || principals.isEmpty()) { return NoPermissions.getInstance(); @@ -134,7 +132,7 @@ final class CompiledPermissionImpl imple //------------------------------------------------< CompiledPermissions >--- @Override - public void refresh(@Nonnull Root root, @Nonnull String workspaceName) { + public void refresh(@NotNull Root root, @NotNull String workspaceName) { this.root = root; this.bitsProvider = new PrivilegeBitsProvider(root); this.versionManager = null; @@ -144,7 +142,7 @@ final class CompiledPermissionImpl imple groupStore.flush(); } - @Nonnull + @NotNull @Override public RepositoryPermission getRepositoryPermission() { return new RepositoryPermission() { @@ -156,15 +154,15 @@ final class CompiledPermissionImpl imple }; } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreePermission parentPermission) { return getTreePermission(tree, typeProvider.getType(tree, getParentType(parentPermission)), parentPermission); } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreeType type, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreeType type, @NotNull TreePermission parentPermission) { if (tree.isRoot()) { return createRootPermission(tree); } @@ -210,8 +208,8 @@ final class CompiledPermissionImpl imple } } - @Nonnull - private TreePermission buildVersionDelegatee(@Nonnull Tree versionableTree) { + @NotNull + private TreePermission buildVersionDelegatee(@NotNull Tree versionableTree) { if (!versionableTree.exists()) { return TreePermission.EMPTY; } else if (versionableTree.isRoot()) { @@ -227,8 +225,8 @@ final class CompiledPermissionImpl imple } } - @Nonnull - private TreePermission buildParentPermission(@Nonnull Tree tree) { + @NotNull + private TreePermission buildParentPermission(@NotNull Tree tree) { List<Tree> trees = new ArrayList<Tree>(); while (!tree.isRoot()) { tree = tree.getParent(); @@ -244,7 +242,7 @@ final class CompiledPermissionImpl imple } @Override - public boolean isGranted(@Nonnull Tree tree, @Nullable PropertyState property, long permissions) { + public boolean isGranted(@NotNull Tree tree, @Nullable PropertyState property, long permissions) { TreeType type = typeProvider.getType(tree); switch (type) { case HIDDEN: @@ -274,31 +272,31 @@ final class CompiledPermissionImpl imple } @Override - public boolean isGranted(@Nonnull String path, long permissions) { + public boolean isGranted(@NotNull String path, long permissions) { EntryPredicate predicate = new EntryPredicate(path, Permissions.respectParentPermissions(permissions)); return hasPermissions(getEntryIterator(predicate), predicate, permissions, path); } - @Nonnull + @NotNull @Override public Set<String> getPrivileges(@Nullable Tree tree) { return bitsProvider.getPrivilegeNames(internalGetPrivileges(tree)); } @Override - public boolean hasPrivileges(@Nullable Tree tree, @Nonnull String... privilegeNames) { + public boolean hasPrivileges(@Nullable Tree tree, @NotNull String... privilegeNames) { return internalGetPrivileges(tree).includes(bitsProvider.getBits(privilegeNames)); } //------------------------------------------------------------< private >--- - private boolean internalIsGranted(@Nonnull Tree tree, @Nullable PropertyState property, long permissions) { + private boolean internalIsGranted(@NotNull Tree tree, @Nullable PropertyState property, long permissions) { EntryPredicate predicate = new EntryPredicate(tree, property, Permissions.respectParentPermissions(permissions)); return hasPermissions(getEntryIterator(predicate), predicate, permissions, tree.getPath()); } - private boolean hasPermissions(@Nonnull Iterator<PermissionEntry> entries, - @Nonnull EntryPredicate predicate, + private boolean hasPermissions(@NotNull Iterator<PermissionEntry> entries, + @NotNull EntryPredicate predicate, long permissions, @Nullable String path) { // calculate readable paths if the given permissions includes any read permission. boolean isReadable = Permissions.diff(Permissions.READ, permissions) != Permissions.READ && readPolicy.isReadablePath(path, false); @@ -367,7 +365,7 @@ final class CompiledPermissionImpl imple return (allows | ~permissions) == -1; } - @Nonnull + @NotNull private PrivilegeBits internalGetPrivileges(@Nullable Tree tree) { TreeType type = (tree == null) ? TreeType.DEFAULT : typeProvider.getType(tree); switch (type) { @@ -388,7 +386,7 @@ final class CompiledPermissionImpl imple } } - @Nonnull + @NotNull private PrivilegeBits getPrivilegeBits(@Nullable Tree tree) { EntryPredicate pred = (tree == null) ? new EntryPredicate() @@ -414,15 +412,15 @@ final class CompiledPermissionImpl imple return allowBits; } - @Nonnull - private Iterator<PermissionEntry> getEntryIterator(@Nonnull EntryPredicate predicate) { + @NotNull + private Iterator<PermissionEntry> getEntryIterator(@NotNull EntryPredicate predicate) { Iterator<PermissionEntry> userEntries = userStore.getEntryIterator(predicate); Iterator<PermissionEntry> groupEntries = groupStore.getEntryIterator(predicate); return concat(userEntries, groupEntries); } - @CheckForNull - private Tree getEvaluationTree(@Nonnull Tree versionStoreTree) { + @Nullable + private Tree getEvaluationTree(@NotNull Tree versionStoreTree) { if (ReadOnlyVersionManager.isVersionStoreTree(versionStoreTree)) { return versionStoreTree; } else { @@ -430,7 +428,7 @@ final class CompiledPermissionImpl imple } } - @Nonnull + @NotNull private ReadOnlyVersionManager getVersionManager() { if (versionManager == null) { versionManager = ReadOnlyVersionManager.getInstance(root, NamePathMapper.DEFAULT); @@ -438,7 +436,7 @@ final class CompiledPermissionImpl imple return versionManager; } - private static TreeType getParentType(@Nonnull TreePermission parentPermission) { + private static TreeType getParentType(@NotNull TreePermission parentPermission) { if (parentPermission instanceof TreePermissionImpl) { return ((TreePermissionImpl) parentPermission).type; } else if (parentPermission == TreePermission.EMPTY) { @@ -452,7 +450,7 @@ final class CompiledPermissionImpl imple } } - private TreePermissionImpl createRootPermission(@Nonnull Tree rootTree) { + private TreePermissionImpl createRootPermission(@NotNull Tree rootTree) { return new TreePermissionImpl(rootTree, TreeType.DEFAULT, EMPTY); } @@ -482,9 +480,9 @@ final class CompiledPermissionImpl imple } //-------------------------------------------------< TreePermission >--- - @Nonnull + @NotNull @Override - public TreePermission getChildPermission(@Nonnull String childName, @Nonnull NodeState childState) { + public TreePermission getChildPermission(@NotNull String childName, @NotNull NodeState childState) { Tree childTree = providerCtx.getTreeProvider().createReadOnlyTree(tree, childName, childState); return getTreePermission(childTree, typeProvider.getType(childTree, type), this); } @@ -517,7 +515,7 @@ final class CompiledPermissionImpl imple } @Override - public boolean canRead(@Nonnull PropertyState property) { + public boolean canRead(@NotNull PropertyState property) { boolean isAcTree = isAcTree(); if (!isAcTree && isReadableTree) { return true; @@ -555,7 +553,7 @@ final class CompiledPermissionImpl imple } @Override - public boolean isGranted(long permissions, @Nonnull PropertyState property) { + public boolean isGranted(long permissions, @NotNull PropertyState property) { EntryPredicate predicate = new EntryPredicate(tree, property, Permissions.respectParentPermissions(permissions)); Iterator<PermissionEntry> it = concat(new LazyIterator(this, true, predicate), new LazyIterator(this, false, predicate)); return hasPermissions(it, predicate, permissions, tree.getPath()); @@ -598,7 +596,7 @@ final class CompiledPermissionImpl imple private TreePermissionImpl tp; - private LazyIterator(@Nonnull TreePermissionImpl treePermission, boolean isUser, @Nonnull EntryPredicate predicate) { + private LazyIterator(@NotNull TreePermissionImpl treePermission, boolean isUser, @NotNull EntryPredicate predicate) { this.treePermission = treePermission; this.isUser = isUser; this.predicate = predicate; @@ -631,8 +629,8 @@ final class CompiledPermissionImpl imple private interface ReadPolicy { - boolean isReadableTree(@Nonnull Tree tree, @Nullable TreePermissionImpl parent); - boolean isReadableTree(@Nonnull Tree tree, boolean exactMatch); + boolean isReadableTree(@NotNull Tree tree, @Nullable TreePermissionImpl parent); + boolean isReadableTree(@NotNull Tree tree, boolean exactMatch); boolean isReadablePath(@Nullable String treePath, boolean exactMatch); } @@ -643,12 +641,12 @@ final class CompiledPermissionImpl imple private EmptyReadPolicy() {} @Override - public boolean isReadableTree(@Nonnull Tree tree, @Nullable TreePermissionImpl parent) { + public boolean isReadableTree(@NotNull Tree tree, @Nullable TreePermissionImpl parent) { return false; } @Override - public boolean isReadableTree(@Nonnull Tree tree, boolean exactMatch) { + public boolean isReadableTree(@NotNull Tree tree, boolean exactMatch) { return false; } @@ -677,7 +675,7 @@ final class CompiledPermissionImpl imple } @Override - public boolean isReadableTree(@Nonnull Tree tree, @Nullable TreePermissionImpl parent) { + public boolean isReadableTree(@NotNull Tree tree, @Nullable TreePermissionImpl parent) { if (parent != null) { if (parent.isReadableTree) { return true; @@ -692,7 +690,7 @@ final class CompiledPermissionImpl imple } @Override - public boolean isReadableTree(@Nonnull Tree tree, boolean exactMatch) { + public boolean isReadableTree(@NotNull Tree tree, boolean exactMatch) { String targetPath = tree.getPath(); for (String path : readPaths) { if (targetPath.equals(path)) { Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissions.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissions.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissions.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/CompiledPermissions.java Wed Jul 18 14:37:06 2018 @@ -17,15 +17,14 @@ package org.apache.jackrabbit.oak.security.authorization.permission; import java.util.Set; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Root; import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.plugins.tree.TreeType; import org.apache.jackrabbit.oak.spi.security.authorization.permission.RepositoryPermission; import org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Internal interface to process methods defined by @@ -45,7 +44,7 @@ interface CompiledPermissions { * @param workspaceName The workspace name. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.PermissionProvider#refresh()} */ - void refresh(@Nonnull Root root, @Nonnull String workspaceName); + void refresh(@NotNull Root root, @NotNull String workspaceName); /** * Returns the {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.RepositoryPermission} @@ -54,7 +53,7 @@ interface CompiledPermissions { * @return an instance of {@code RepositoryPermission}. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.PermissionProvider#getRepositoryPermission()} */ - @Nonnull + @NotNull RepositoryPermission getRepositoryPermission(); /** @@ -66,8 +65,8 @@ interface CompiledPermissions { * @return The permissions for the specified tree. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission#getChildPermission(String, org.apache.jackrabbit.oak.spi.state.NodeState)} */ - @Nonnull - TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreePermission parentPermission); + @NotNull + TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreePermission parentPermission); /** * Returns the tree permissions for the specified {@code tree}. @@ -78,8 +77,8 @@ interface CompiledPermissions { * @return The permissions for the specified tree. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission#getChildPermission(String, org.apache.jackrabbit.oak.spi.state.NodeState)} */ - @Nonnull - TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreeType type, @Nonnull TreePermission parentPermission); + @NotNull + TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreeType type, @NotNull TreePermission parentPermission); /** * Returns {@code true} if the given {@code permissions} are granted on the @@ -92,7 +91,7 @@ interface CompiledPermissions { * @return {@code true} if granted. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.PermissionProvider#isGranted(org.apache.jackrabbit.oak.api.Tree, org.apache.jackrabbit.oak.api.PropertyState, long)} */ - boolean isGranted(@Nonnull Tree tree, @Nullable PropertyState property, long permissions); + boolean isGranted(@NotNull Tree tree, @Nullable PropertyState property, long permissions); /** * Returns {@code true} if the given {@code permissions} are granted on the @@ -103,7 +102,7 @@ interface CompiledPermissions { * @return {@code true} if granted. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.PermissionProvider#isGranted(String, String)} */ - boolean isGranted(@Nonnull String path, long permissions); + boolean isGranted(@NotNull String path, long permissions); /** * Retrieve the privileges granted at the specified {@code tree}. @@ -113,7 +112,7 @@ interface CompiledPermissions { * @return the set of privileges or an empty set if no privileges are granted. * @see {@link org.apache.jackrabbit.oak.spi.security.authorization.permission.PermissionProvider#getPrivileges(org.apache.jackrabbit.oak.api.Tree)} */ - @Nonnull + @NotNull Set<String> getPrivileges(@Nullable Tree tree); /** @@ -125,5 +124,5 @@ interface CompiledPermissions { * @param privilegeNames The privilege names to be tested. * @return {@code true} if the tree has privileges */ - boolean hasPrivileges(@Nullable Tree tree, @Nonnull String... privilegeNames); + boolean hasPrivileges(@Nullable Tree tree, @NotNull String... privilegeNames); } Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/EntryPredicate.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/EntryPredicate.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/EntryPredicate.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/EntryPredicate.java Wed Jul 18 14:37:06 2018 @@ -16,14 +16,12 @@ */ package org.apache.jackrabbit.oak.security.authorization.permission; -import javax.annotation.CheckForNull; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import com.google.common.base.Predicate; import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.commons.PathUtils; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Predicate used to evaluation if a given {@code PermissionEntry} matches @@ -43,11 +41,11 @@ final class EntryPredicate implements Pr this(null, null, null, false); } - EntryPredicate(@Nonnull Tree tree, @Nullable PropertyState property, boolean respectParent) { + EntryPredicate(@NotNull Tree tree, @Nullable PropertyState property, boolean respectParent) { this(tree, property, tree.getPath(), respectParent); } - EntryPredicate(@Nonnull String path, boolean respectParent) { + EntryPredicate(@NotNull String path, boolean respectParent) { this(null, null, path, respectParent); } @@ -67,7 +65,7 @@ final class EntryPredicate implements Pr this.respectParent = parent != null || parentPath != null; } - @CheckForNull + @Nullable String getPath() { return path; } @@ -92,4 +90,4 @@ final class EntryPredicate implements Pr return entry.matches(); } } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MountPermissionProvider.java Wed Jul 18 14:37:06 2018 @@ -20,8 +20,6 @@ import java.security.Principal; import java.util.Collection; import java.util.List; import java.util.Set; -import javax.annotation.Nonnull; - import org.apache.jackrabbit.oak.api.Root; import org.apache.jackrabbit.oak.commons.LongUtils; import org.apache.jackrabbit.oak.security.authorization.ProviderCtx; @@ -30,13 +28,14 @@ import org.apache.jackrabbit.oak.spi.mou import org.apache.jackrabbit.oak.spi.security.ConfigurationParameters; import org.apache.jackrabbit.oak.spi.security.Context; import org.apache.jackrabbit.oak.spi.security.authorization.restriction.RestrictionProvider; +import org.jetbrains.annotations.NotNull; import static com.google.common.collect.Lists.newArrayList; public class MountPermissionProvider extends PermissionProviderImpl { - @Nonnull - public static String getPermissionRootName(@Nonnull Mount mount, @Nonnull String workspace) { + @NotNull + public static String getPermissionRootName(@NotNull Mount mount, @NotNull String workspace) { if (mount.isDefault()) { return workspace; } else { @@ -46,10 +45,10 @@ public class MountPermissionProvider ext private final MountInfoProvider mountInfoProvider; - public MountPermissionProvider(@Nonnull Root root, @Nonnull String workspaceName, - @Nonnull Set<Principal> principals, @Nonnull RestrictionProvider restrictionProvider, - @Nonnull ConfigurationParameters options, @Nonnull Context ctx, - @Nonnull ProviderCtx providerCtx) { + public MountPermissionProvider(@NotNull Root root, @NotNull String workspaceName, + @NotNull Set<Principal> principals, @NotNull RestrictionProvider restrictionProvider, + @NotNull ConfigurationParameters options, @NotNull Context ctx, + @NotNull ProviderCtx providerCtx) { super(root, workspaceName, principals, restrictionProvider, options, ctx, providerCtx); this.mountInfoProvider = providerCtx.getMountInfoProvider(); } @@ -75,10 +74,10 @@ public class MountPermissionProvider ext this.stores = stores; } - @Nonnull + @NotNull @Override - public Collection<PermissionEntry> load(@Nonnull String principalName, - @Nonnull String path) { + public Collection<PermissionEntry> load(@NotNull String principalName, + @NotNull String path) { for (PermissionStoreImpl store : stores) { Collection<PermissionEntry> col = store.load(principalName, path); if (col != null && !col.isEmpty()) { @@ -88,9 +87,9 @@ public class MountPermissionProvider ext return null; } - @Nonnull + @NotNull @Override - public PrincipalPermissionEntries load(@Nonnull String principalName) { + public PrincipalPermissionEntries load(@NotNull String principalName) { PrincipalPermissionEntries ppe = new PrincipalPermissionEntries(); for (PermissionStoreImpl store : stores) { ppe.putAllEntries(store.load(principalName).getEntries()); @@ -99,9 +98,9 @@ public class MountPermissionProvider ext return ppe; } - @Nonnull + @NotNull @Override - public NumEntries getNumEntries(@Nonnull String principalName, long max) { + public NumEntries getNumEntries(@NotNull String principalName, long max) { long num = 0; boolean isExact = true; for (PermissionStoreImpl store : stores) { @@ -122,7 +121,7 @@ public class MountPermissionProvider ext } @Override - public void flush(@Nonnull Root root) { + public void flush(@NotNull Root root) { for (PermissionStoreImpl store : stores) { store.flush(root); } Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MoveAwarePermissionValidator.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MoveAwarePermissionValidator.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MoveAwarePermissionValidator.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/MoveAwarePermissionValidator.java Wed Jul 18 14:37:06 2018 @@ -16,10 +16,6 @@ */ package org.apache.jackrabbit.oak.security.authorization.permission; -import javax.annotation.CheckForNull; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import org.apache.jackrabbit.oak.api.CommitFailedException; import org.apache.jackrabbit.oak.api.Root; import org.apache.jackrabbit.oak.api.Tree; @@ -33,6 +29,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.authorization.permission.Permissions; import org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission; import org.apache.jackrabbit.oak.spi.state.NodeState; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import static org.apache.jackrabbit.oak.api.CommitFailedException.ACCESS; @@ -40,31 +38,31 @@ public class MoveAwarePermissionValidato private final MoveContext moveCtx; - MoveAwarePermissionValidator(@Nonnull NodeState rootBefore, - @Nonnull NodeState rootAfter, - @Nonnull PermissionProvider permissionProvider, - @Nonnull PermissionValidatorProvider provider, - @Nonnull MoveTracker moveTracker) { + MoveAwarePermissionValidator(@NotNull NodeState rootBefore, + @NotNull NodeState rootAfter, + @NotNull PermissionProvider permissionProvider, + @NotNull PermissionValidatorProvider provider, + @NotNull MoveTracker moveTracker) { super(rootBefore, rootAfter, permissionProvider, provider); moveCtx = new MoveContext(moveTracker, provider.createReadOnlyRoot(rootBefore), provider.createReadOnlyRoot(rootAfter)); } private MoveAwarePermissionValidator(@Nullable Tree parentBefore, @Nullable Tree parentAfter, - @Nonnull TreePermission parentPermission, - @Nonnull PermissionValidator parentValidator) { + @NotNull TreePermission parentPermission, + @NotNull PermissionValidator parentValidator) { super(parentBefore, parentAfter, parentPermission, parentValidator); MoveAwarePermissionValidator pv = (MoveAwarePermissionValidator) parentValidator; moveCtx = pv.moveCtx; } - @Nonnull + @NotNull @Override PermissionValidator createValidator(@Nullable Tree parentBefore, @Nullable Tree parentAfter, - @Nonnull TreePermission parentPermission, - @Nonnull PermissionValidator parentValidator) { + @NotNull TreePermission parentPermission, + @NotNull PermissionValidator parentValidator) { if (moveCtx.containsMove(parentBefore, parentAfter)) { return new MoveAwarePermissionValidator(parentBefore, parentAfter, parentPermission, parentValidator); } else { @@ -72,8 +70,8 @@ public class MoveAwarePermissionValidato } } - private Validator visibleValidator(@Nonnull Tree source, - @Nonnull Tree dest) { + private Validator visibleValidator(@NotNull Tree source, + @NotNull Tree dest) { // TODO improve: avoid calculating the 'before' permissions in case the current parent permissions already point to the correct tree. Tree immutableTree = moveCtx.rootBefore.getTree("/"); TreePermission tp = getPermissionProvider().getTreePermission(immutableTree, TreePermission.EMPTY); @@ -112,9 +110,9 @@ public class MoveAwarePermissionValidato private final Root rootBefore; private final Root rootAfter; - private MoveContext(@Nonnull MoveTracker moveTracker, - @Nonnull Root before, - @Nonnull Root after) { + private MoveContext(@NotNull MoveTracker moveTracker, + @NotNull Root before, + @NotNull Root after) { this.moveTracker = moveTracker; rootBefore = before; rootAfter = after; @@ -124,7 +122,7 @@ public class MoveAwarePermissionValidato return moveTracker.containsMove(PermissionUtil.getPath(parentBefore, parentAfter)); } - private boolean processAdd(@CheckForNull Tree parent, @Nonnull String name , @Nonnull MoveAwarePermissionValidator validator) throws CommitFailedException { + private boolean processAdd(@Nullable Tree parent, @NotNull String name , @NotNull MoveAwarePermissionValidator validator) throws CommitFailedException { if (parent == null) { return false; } @@ -142,7 +140,7 @@ public class MoveAwarePermissionValidato return false; } - private boolean processDelete(@CheckForNull Tree parent, @Nonnull String name, @Nonnull MoveAwarePermissionValidator validator) throws CommitFailedException { + private boolean processDelete(@Nullable Tree parent, @NotNull String name, @NotNull MoveAwarePermissionValidator validator) throws CommitFailedException { if (parent == null) { return false; } @@ -161,8 +159,8 @@ public class MoveAwarePermissionValidato return false; } - private boolean diff(@Nonnull Tree source, @Nonnull Tree dest, - @Nonnull MoveAwarePermissionValidator validator) throws CommitFailedException { + private boolean diff(@NotNull Tree source, @NotNull Tree dest, + @NotNull MoveAwarePermissionValidator validator) throws CommitFailedException { Validator nextValidator = validator.visibleValidator(source, dest); TreeProvider tp = validator.getTreeProvider(); CommitFailedException e = EditorDiff.process(nextValidator , tp.asNodeState(source), tp.asNodeState(dest)); @@ -172,10 +170,10 @@ public class MoveAwarePermissionValidato return true; } - private void checkPermissions(@Nonnull Tree tree, long permissions) throws CommitFailedException { + private void checkPermissions(@NotNull Tree tree, long permissions) throws CommitFailedException { if (!getPermissionProvider().isGranted(tree, null, permissions)) { throw new CommitFailedException(ACCESS, 0, "Access denied"); } } } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/NoPermissions.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/NoPermissions.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/NoPermissions.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/NoPermissions.java Wed Jul 18 14:37:06 2018 @@ -18,15 +18,14 @@ package org.apache.jackrabbit.oak.securi import java.util.Collections; import java.util.Set; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Root; import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.plugins.tree.TreeType; import org.apache.jackrabbit.oak.spi.security.authorization.permission.RepositoryPermission; import org.apache.jackrabbit.oak.spi.security.authorization.permission.TreePermission; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; /** * Implementation of the {@code CompiledPermission} interface that denies all permissions. @@ -43,46 +42,46 @@ final class NoPermissions implements Com } @Override - public void refresh(@Nonnull Root root, @Nonnull String workspaceName) { + public void refresh(@NotNull Root root, @NotNull String workspaceName) { // nop } - @Nonnull + @NotNull @Override public RepositoryPermission getRepositoryPermission() { return RepositoryPermission.EMPTY; } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreePermission parentPermission) { return TreePermission.EMPTY; } - @Nonnull + @NotNull @Override - public TreePermission getTreePermission(@Nonnull Tree tree, @Nonnull TreeType type, @Nonnull TreePermission parentPermission) { + public TreePermission getTreePermission(@NotNull Tree tree, @NotNull TreeType type, @NotNull TreePermission parentPermission) { return TreePermission.EMPTY; } @Override - public boolean isGranted(@Nonnull Tree tree, @Nullable PropertyState property, long permissions) { + public boolean isGranted(@NotNull Tree tree, @Nullable PropertyState property, long permissions) { return false; } @Override - public boolean isGranted(@Nonnull String path, long permissions) { + public boolean isGranted(@NotNull String path, long permissions) { return false; } - @Nonnull + @NotNull @Override public Set<String> getPrivileges(@Nullable Tree tree) { return Collections.emptySet(); } @Override - public boolean hasPrivileges(@Nullable Tree tree, @Nonnull String... privilegeNames) { + public boolean hasPrivileges(@Nullable Tree tree, @NotNull String... privilegeNames) { return false; } } Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCache.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCache.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCache.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCache.java Wed Jul 18 14:37:06 2018 @@ -17,13 +17,12 @@ package org.apache.jackrabbit.oak.security.authorization.permission; import java.util.Collection; -import javax.annotation.Nonnull; - import org.apache.jackrabbit.oak.api.Tree; +import org.jetbrains.annotations.NotNull; interface PermissionCache { - Collection<PermissionEntry> getEntries(@Nonnull String path); + Collection<PermissionEntry> getEntries(@NotNull String path); - Collection<PermissionEntry> getEntries(@Nonnull Tree accessControlledTree); -} \ No newline at end of file + Collection<PermissionEntry> getEntries(@NotNull Tree accessControlledTree); +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCacheBuilder.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCacheBuilder.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCacheBuilder.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionCacheBuilder.java Wed Jul 18 14:37:06 2018 @@ -24,11 +24,10 @@ import java.util.Map; import java.util.Set; import java.util.TreeSet; -import javax.annotation.Nonnull; - import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.commons.LongUtils; import org.apache.jackrabbit.oak.spi.security.authorization.accesscontrol.AccessControlConstants; +import org.jetbrains.annotations.NotNull; import static com.google.common.base.Preconditions.checkState; @@ -44,12 +43,12 @@ final class PermissionCacheBuilder { private boolean initialized = false; - PermissionCacheBuilder(@Nonnull PermissionStore store) { + PermissionCacheBuilder(@NotNull PermissionStore store) { this.store = store; this.peCache = new PermissionEntryCache(); } - boolean init(@Nonnull Set<String> principalNames, long maxSize) { + boolean init(@NotNull Set<String> principalNames, long maxSize) { existingNames = new HashSet<>(); long cnt = 0; for (String name : principalNames) { @@ -135,14 +134,14 @@ final class PermissionCacheBuilder { private final PermissionEntryCache cache; private final Set<String> existingNames; - DefaultPermissionCache(@Nonnull PermissionStore store, @Nonnull PermissionEntryCache cache, Set<String> existingNames) { + DefaultPermissionCache(@NotNull PermissionStore store, @NotNull PermissionEntryCache cache, Set<String> existingNames) { this.store = store; this.cache = cache; this.existingNames = existingNames; } @Override - public Collection<PermissionEntry> getEntries(@Nonnull String path) { + public Collection<PermissionEntry> getEntries(@NotNull String path) { Collection<PermissionEntry> ret = new TreeSet(); for (String name : existingNames) { cache.load(store, ret, name, path); @@ -151,7 +150,7 @@ final class PermissionCacheBuilder { } @Override - public Collection<PermissionEntry> getEntries(@Nonnull Tree accessControlledTree) { + public Collection<PermissionEntry> getEntries(@NotNull Tree accessControlledTree) { return (accessControlledTree.hasChild(AccessControlConstants.REP_POLICY)) ? getEntries(accessControlledTree.getPath()) : Collections.<PermissionEntry>emptyList(); @@ -172,13 +171,13 @@ final class PermissionCacheBuilder { } @Override - public Collection<PermissionEntry> getEntries(@Nonnull String path) { + public Collection<PermissionEntry> getEntries(@NotNull String path) { Collection<PermissionEntry> entries = pathEntryMap.get(path); return (entries != null) ? entries : Collections.<PermissionEntry>emptyList(); } @Override - public Collection<PermissionEntry> getEntries(@Nonnull Tree accessControlledTree) { + public Collection<PermissionEntry> getEntries(@NotNull Tree accessControlledTree) { Collection<PermissionEntry> entries = pathEntryMap.get(accessControlledTree.getPath()); return (entries != null) ? entries : Collections.<PermissionEntry>emptyList(); } @@ -194,14 +193,14 @@ final class PermissionCacheBuilder { private static final PermissionCache INSTANCE = new EmptyCache(); @Override - public Collection<PermissionEntry> getEntries(@Nonnull String path) { + public Collection<PermissionEntry> getEntries(@NotNull String path) { return Collections.<PermissionEntry>emptyList(); } @Override - public Collection<PermissionEntry> getEntries(@Nonnull Tree accessControlledTree) { + public Collection<PermissionEntry> getEntries(@NotNull Tree accessControlledTree) { return Collections.<PermissionEntry>emptyList(); } } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntry.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntry.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntry.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntry.java Wed Jul 18 14:37:06 2018 @@ -16,9 +16,6 @@ */ package org.apache.jackrabbit.oak.security.authorization.permission; -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - import com.google.common.base.Objects; import org.apache.jackrabbit.oak.api.PropertyState; import org.apache.jackrabbit.oak.api.Tree; @@ -27,6 +24,8 @@ import org.apache.jackrabbit.oak.spi.sec import org.apache.jackrabbit.oak.spi.security.authorization.restriction.RestrictionPattern; import org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeBits; import org.apache.jackrabbit.util.Text; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; final class PermissionEntry implements Comparable<PermissionEntry>, PermissionConstants { @@ -55,9 +54,9 @@ final class PermissionEntry implements C */ final RestrictionPattern restriction; - PermissionEntry(@Nonnull String path, boolean isAllow, int index, - @Nonnull PrivilegeBits privilegeBits, - @Nonnull RestrictionPattern restriction) { + PermissionEntry(@NotNull String path, boolean isAllow, int index, + @NotNull PrivilegeBits privilegeBits, + @NotNull RestrictionPattern restriction) { this.path = path; this.isAllow = isAllow; this.index = index; @@ -65,11 +64,11 @@ final class PermissionEntry implements C this.restriction = restriction; } - boolean matches(@Nonnull Tree tree, @Nullable PropertyState property) { + boolean matches(@NotNull Tree tree, @Nullable PropertyState property) { return restriction == RestrictionPattern.EMPTY || restriction.matches(tree, property); } - boolean matches(@Nonnull String treePath) { + boolean matches(@NotNull String treePath) { return restriction == RestrictionPattern.EMPTY || restriction.matches(treePath); } @@ -77,12 +76,12 @@ final class PermissionEntry implements C return restriction == RestrictionPattern.EMPTY || restriction.matches(); } - boolean matchesParent(@Nonnull String parentPath) { + boolean matchesParent(@NotNull String parentPath) { return Text.isDescendantOrEqual(path, parentPath) && (restriction == RestrictionPattern.EMPTY || restriction.matches(parentPath)); } @Override - public int compareTo(@Nonnull PermissionEntry pe) { + public int compareTo(@NotNull PermissionEntry pe) { if (Objects.equal(path, pe.path)) { // reverse order if (index == pe.index) { @@ -122,4 +121,4 @@ final class PermissionEntry implements C public int hashCode() { return Objects.hashCode(privilegeBits, index, path, isAllow, restriction); } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryCache.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryCache.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryCache.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryCache.java Wed Jul 18 14:37:06 2018 @@ -20,8 +20,7 @@ import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; -import javax.annotation.Nonnull; - +import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,9 +35,9 @@ class PermissionEntryCache { private final Map<String, PrincipalPermissionEntries> entries = new HashMap<>(); - @Nonnull - PrincipalPermissionEntries getFullyLoadedEntries(@Nonnull PermissionStore store, - @Nonnull String principalName) { + @NotNull + PrincipalPermissionEntries getFullyLoadedEntries(@NotNull PermissionStore store, + @NotNull String principalName) { PrincipalPermissionEntries ppe = entries.get(principalName); if (ppe == null || !ppe.isFullyLoaded()) { ppe = store.load(principalName); @@ -47,16 +46,16 @@ class PermissionEntryCache { return ppe; } - void init(@Nonnull String principalName, long expectedSize) { + void init(@NotNull String principalName, long expectedSize) { if (!entries.containsKey(principalName)) { entries.put(principalName, new PrincipalPermissionEntries(expectedSize)); } } - void load(@Nonnull PermissionStore store, - @Nonnull Collection<PermissionEntry> ret, - @Nonnull String principalName, - @Nonnull String path) { + void load(@NotNull PermissionStore store, + @NotNull Collection<PermissionEntry> ret, + @NotNull String principalName, + @NotNull String path) { if (entries.containsKey(principalName)) { PrincipalPermissionEntries ppe = entries.get(principalName); Collection<PermissionEntry> pes = ppe.getEntriesByPath(path); @@ -82,4 +81,4 @@ class PermissionEntryCache { log.error("Failed to load entries for principal '%s' at path %s", principalName, path); } } -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProvider.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProvider.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProvider.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProvider.java Wed Jul 18 14:37:06 2018 @@ -19,9 +19,8 @@ package org.apache.jackrabbit.oak.securi import java.util.Collection; import java.util.Iterator; -import javax.annotation.Nonnull; - import org.apache.jackrabbit.oak.api.Tree; +import org.jetbrains.annotations.NotNull; /** * {@code PermissionEntryProvider} provides permission entries for a given set of principals. @@ -29,11 +28,11 @@ import org.apache.jackrabbit.oak.api.Tre */ interface PermissionEntryProvider { - @Nonnull - Iterator<PermissionEntry> getEntryIterator(@Nonnull EntryPredicate predicate); + @NotNull + Iterator<PermissionEntry> getEntryIterator(@NotNull EntryPredicate predicate); - @Nonnull - Collection<PermissionEntry> getEntries(@Nonnull Tree accessControlledTree); + @NotNull + Collection<PermissionEntry> getEntries(@NotNull Tree accessControlledTree); void flush(); -} \ No newline at end of file +} Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProviderImpl.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProviderImpl.java?rev=1836177&r1=1836176&r2=1836177&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProviderImpl.java (original) +++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/authorization/permission/PermissionEntryProviderImpl.java Wed Jul 18 14:37:06 2018 @@ -20,12 +20,11 @@ import java.util.Collection; import java.util.Collections; import java.util.Iterator; import java.util.Set; -import javax.annotation.Nonnull; - import com.google.common.base.Strings; import org.apache.jackrabbit.commons.iterator.AbstractLazyIterator; import org.apache.jackrabbit.oak.api.Tree; import org.apache.jackrabbit.oak.spi.security.ConfigurationParameters; +import org.jetbrains.annotations.NotNull; class PermissionEntryProviderImpl implements PermissionEntryProvider { @@ -51,7 +50,7 @@ class PermissionEntryProviderImpl implem private PermissionCache permissionCache; - PermissionEntryProviderImpl(@Nonnull PermissionStore store, @Nonnull Set<String> principalNames, @Nonnull ConfigurationParameters options) { + PermissionEntryProviderImpl(@NotNull PermissionStore store, @NotNull Set<String> principalNames, @NotNull ConfigurationParameters options) { this.store = store; this.principalNames = Collections.unmodifiableSet(principalNames); this.maxSize = options.getConfigValue(EAGER_CACHE_SIZE_PARAM, DEFAULT_SIZE); @@ -71,8 +70,8 @@ class PermissionEntryProviderImpl implem } @Override - @Nonnull - public Iterator<PermissionEntry> getEntryIterator(@Nonnull EntryPredicate predicate) { + @NotNull + public Iterator<PermissionEntry> getEntryIterator(@NotNull EntryPredicate predicate) { if (noExistingNames) { return Collections.emptyIterator(); } else { @@ -81,14 +80,14 @@ class PermissionEntryProviderImpl implem } @Override - @Nonnull - public Collection<PermissionEntry> getEntries(@Nonnull Tree accessControlledTree) { + @NotNull + public Collection<PermissionEntry> getEntries(@NotNull Tree accessControlledTree) { return permissionCache.getEntries(accessControlledTree); } //------------------------------------------------------------< private >--- - @Nonnull - private Collection<PermissionEntry> getEntries(@Nonnull String path) { + @NotNull + private Collection<PermissionEntry> getEntries(@NotNull String path) { return permissionCache.getEntries(path); } @@ -102,7 +101,7 @@ class PermissionEntryProviderImpl implem // the next oak path for which to retrieve permission entries private String path; - private EntryIterator(@Nonnull EntryPredicate predicate) { + private EntryIterator(@NotNull EntryPredicate predicate) { this.predicate = predicate; this.path = Strings.nullToEmpty(predicate.getPath()); } @@ -127,4 +126,4 @@ class PermissionEntryProviderImpl implem return next; } } -} \ No newline at end of file +}
