Author: angela
Date: Mon Dec 17 11:13:46 2018
New Revision: 1849079

URL: http://svn.apache.org/viewvc?rev=1849079&view=rev
Log:
OAK-7944 : Minor improvements to oak security code base
- missing nullabiliy annotations in PrivilegeDdefinitionWriter
- more Map.forEach in PrivilegeDefinitionWriter
- unused securityProvider param in private method (UserImporter)
- redundant test for null in ImpersonationImpl

Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriter.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/ImpersonationImpl.java
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserImporter.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriter.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriter.java?rev=1849079&r1=1849078&r2=1849079&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriter.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/privilege/PrivilegeDefinitionWriter.java
 Mon Dec 17 11:13:46 2018
@@ -48,7 +48,7 @@ class PrivilegeDefinitionWriter implemen
 
     private PrivilegeBits next;
 
-    PrivilegeDefinitionWriter(Root root) {
+    PrivilegeDefinitionWriter(@NotNull Root root) {
         this.root = root;
         this.bitsMgr = new PrivilegeBitsProvider(root);
         Tree privilegesTree = bitsMgr.getPrivilegesTree();
@@ -65,7 +65,7 @@ class PrivilegeDefinitionWriter implemen
      * @param definition The new privilege definition.
      * @throws RepositoryException If the definition can't be written.
      */
-    void writeDefinition(PrivilegeDefinition definition) throws 
RepositoryException {
+    void writeDefinition(@NotNull PrivilegeDefinition definition) throws 
RepositoryException {
         writeDefinitions(Collections.singleton(definition));
     }
 
@@ -92,10 +92,10 @@ class PrivilegeDefinitionWriter implemen
     }
 
     /**
-     * @param definitions
-     * @throws RepositoryException
+     * @param definitions The privilege definitions to write to the repository.
+     * @throws RepositoryException If the privilege store is missing or if 
there is a privilege registered with the same name.
      */
-    private void writeDefinitions(Iterable<PrivilegeDefinition> definitions) 
throws RepositoryException {
+    private void writeDefinitions(@NotNull Iterable<PrivilegeDefinition> 
definitions) throws RepositoryException {
         try {
             // make sure the privileges path is defined
             Tree privilegesTree = root.getTree(PRIVILEGES_PATH);
@@ -123,14 +123,14 @@ class PrivilegeDefinitionWriter implemen
         }
     }
 
-    private void writePrivilegeNode(Tree privilegesTree, PrivilegeDefinition 
definition) throws RepositoryException {
+    private void writePrivilegeNode(@NotNull Tree privilegesTree, @NotNull 
PrivilegeDefinition definition) throws RepositoryException {
         String name = definition.getName();
         Tree privNode = TreeUtil.addChild(privilegesTree, name, 
NT_REP_PRIVILEGE);
         if (definition.isAbstract()) {
             privNode.setProperty(REP_IS_ABSTRACT, true);
         }
         Set<String> declAggrNames = definition.getDeclaredAggregateNames();
-        boolean isAggregate = declAggrNames.size() > 0;
+        boolean isAggregate = !declAggrNames.isEmpty();
         if (isAggregate) {
             privNode.setProperty(REP_AGGREGATES, declAggrNames, Type.NAMES);
         }
@@ -149,16 +149,17 @@ class PrivilegeDefinitionWriter implemen
         bits.writeTo(privNode);
     }
 
+    @NotNull
     private static Collection<PrivilegeDefinition> getBuiltInDefinitions() {
         Map<String, PrivilegeDefinition> definitions = new LinkedHashMap<>();
-        for (String privilegeName : NON_AGGREGATE_PRIVILEGES) {
+        NON_AGGREGATE_PRIVILEGES.forEach((privilegeName) -> {
             PrivilegeDefinition def = new 
ImmutablePrivilegeDefinition(privilegeName, false, null);
             definitions.put(privilegeName, def);
-        }
-        for (String privilegeName : AGGREGATE_PRIVILEGES.keySet()) {
-            PrivilegeDefinition def = new 
ImmutablePrivilegeDefinition(privilegeName, false, 
asList(AGGREGATE_PRIVILEGES.get(privilegeName)));
+        });
+        AGGREGATE_PRIVILEGES.forEach((privilegeName, aggregatedNames) -> {
+            PrivilegeDefinition def = new 
ImmutablePrivilegeDefinition(privilegeName, false, asList(aggregatedNames));
             definitions.put(privilegeName, def);
-        }
+        });
         PrivilegeDefinition all = new ImmutablePrivilegeDefinition(JCR_ALL, 
false, definitions.keySet());
         definitions.put(JCR_ALL, all);
         return definitions.values();

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/ImpersonationImpl.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/ImpersonationImpl.java?rev=1849079&r1=1849078&r2=1849079&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/ImpersonationImpl.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/ImpersonationImpl.java
 Mon Dec 17 11:13:46 2018
@@ -165,7 +165,7 @@ class ImpersonationImpl implements Imper
     }
 
     private void updateImpersonatorNames(@NotNull Tree userTree, @NotNull 
Set<String> principalNames) {
-        if (principalNames == null || principalNames.isEmpty()) {
+        if (principalNames.isEmpty()) {
             userTree.removeProperty(REP_IMPERSONATORS);
         } else {
             userTree.setProperty(REP_IMPERSONATORS, principalNames, 
Type.STRINGS);

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserImporter.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserImporter.java?rev=1849079&r1=1849078&r2=1849079&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserImporter.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/UserImporter.java
 Mon Dec 17 11:13:46 2018
@@ -190,7 +190,7 @@ class UserImporter implements ProtectedP
             return false;
         }
 
-        if (!canInitUserManager((JackrabbitSession) session, 
isWorkspaceImport, securityProvider)) {
+        if (!canInitUserManager((JackrabbitSession) session, 
isWorkspaceImport)) {
             return false;
         }
 
@@ -200,7 +200,7 @@ class UserImporter implements ProtectedP
         return initialized;
     }
 
-    private static boolean canInitUserManager(@NotNull JackrabbitSession 
session, boolean isWorkspaceImport, @NotNull SecurityProvider securityProvider) 
{
+    private static boolean canInitUserManager(@NotNull JackrabbitSession 
session, boolean isWorkspaceImport) {
         try {
             if (!isWorkspaceImport && session.getUserManager().isAutoSave()) {
                 log.warn("Session import cannot handle user content: 
UserManager is in autosave mode.");


Reply via email to