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 2019/05/29 14:07:35 UTC

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

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;
                     }
                 }
             }