Author: angela
Date: Wed May 29 14:07:35 2019
New Revision: 1860349

URL: http://svn.apache.org/viewvc?rev=1860349&view=rev
Log:
OAK-8372 : DeclaredMembershipPredicate contains redundant lookup of groupTree

Modified:
    
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/DeclaredMembershipPredicate.java

Modified: 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/DeclaredMembershipPredicate.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/DeclaredMembershipPredicate.java?rev=1860349&r1=1860348&r2=1860349&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/DeclaredMembershipPredicate.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/DeclaredMembershipPredicate.java
 Wed May 29 14:07:35 2019
@@ -23,6 +23,8 @@ import java.util.Set;
 import javax.jcr.RepositoryException;
 
 import com.google.common.base.Predicate;
+import com.google.common.base.Predicates;
+import com.google.common.collect.Iterators;
 import org.apache.jackrabbit.api.security.user.Authorizable;
 import org.apache.jackrabbit.oak.api.Tree;
 import org.apache.jackrabbit.oak.spi.security.user.AuthorizableType;
@@ -47,7 +49,7 @@ public class DeclaredMembershipPredicate
         if (groupTree == null) {
             contentIdIterator = Collections.emptyIterator();
         } else {
-            contentIdIterator = 
membershipProvider.getDeclaredMemberContentIDs(membershipProvider.getByID(groupId,
 AuthorizableType.GROUP));
+            contentIdIterator = 
Iterators.filter(membershipProvider.getDeclaredMemberContentIDs(groupTree), 
Predicates.notNull());
         }
     }
 
@@ -62,11 +64,9 @@ public class DeclaredMembershipPredicate
                 // for occurrence in the remaining iterator entries.
                 while (contentIdIterator.hasNext()) {
                     String memberContentId = contentIdIterator.next();
-                    if (memberContentId != null) {
-                        declaredMemberContentIds.add(memberContentId);
-                        if (memberContentId.equals(id)) {
-                            return true;
-                        }
+                    declaredMemberContentIds.add(memberContentId);
+                    if (memberContentId.equals(id)) {
+                        return true;
                     }
                 }
             }


Reply via email to