Repository: incubator-ranger
Updated Branches:
  refs/heads/master ae5395855 -> 1aad34987


RangerSolrAuthorizer creating unnecessary lists


Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/1aad3498
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/1aad3498
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/1aad3498

Branch: refs/heads/master
Commit: 1aad349874b3afffb1432736420dd41eddde0c6a
Parents: ae53958
Author: Colm O hEigeartaigh <[email protected]>
Authored: Thu Jul 21 11:19:33 2016 +0100
Committer: Colm O hEigeartaigh <[email protected]>
Committed: Thu Jul 21 11:19:33 2016 +0100

----------------------------------------------------------------------
 .../solr/authorizer/RangerSolrAuthorizer.java   | 21 ++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/1aad3498/plugin-solr/src/main/java/org/apache/ranger/authorization/solr/authorizer/RangerSolrAuthorizer.java
----------------------------------------------------------------------
diff --git 
a/plugin-solr/src/main/java/org/apache/ranger/authorization/solr/authorizer/RangerSolrAuthorizer.java
 
b/plugin-solr/src/main/java/org/apache/ranger/authorization/solr/authorizer/RangerSolrAuthorizer.java
index d8e24ba..9371eaa 100644
--- 
a/plugin-solr/src/main/java/org/apache/ranger/authorization/solr/authorizer/RangerSolrAuthorizer.java
+++ 
b/plugin-solr/src/main/java/org/apache/ranger/authorization/solr/authorizer/RangerSolrAuthorizer.java
@@ -181,10 +181,12 @@ public class RangerSolrAuthorizer implements 
AuthorizationPlugin {
                        for (CollectionRequest collectionRequest : context
                                        .getCollectionRequests()) {
 
-                               List<RangerAccessRequestImpl> 
requestsForCollection = createRequests(
+                               RangerAccessRequestImpl requestForCollection = 
createRequest(
                                                userName, userGroups, ip, 
eventTime, context,
                                                collectionRequest);
-                               rangerRequests.addAll(requestsForCollection);
+                               if (requestForCollection != null) {
+                                       
rangerRequests.add(requestForCollection);
+                               }
                        }
                        if (logger.isDebugEnabled()) {
                                logger.debug("rangerRequests.size()=" + 
rangerRequests.size());
@@ -291,11 +293,10 @@ public class RangerSolrAuthorizer implements 
AuthorizationPlugin {
         * @param collectionRequest
         * @return
         */
-       private List<RangerAccessRequestImpl> createRequests(String userName,
+       private RangerAccessRequestImpl createRequest(String userName,
                        Set<String> userGroups, String ip, Date eventTime,
                        AuthorizationContext context, CollectionRequest 
collectionRequest) {
 
-               List<RangerAccessRequestImpl> requests = new 
ArrayList<RangerAccessRequestImpl>();
                String accessType = mapToRangerAccessType(context);
                String action = accessType;
 
@@ -309,14 +310,14 @@ public class RangerSolrAuthorizer implements 
AuthorizationPlugin {
                        rangerRequest.setAccessType(accessType);
                        rangerRequest.setAction(action);
 
-                       requests.add(rangerRequest);
-               } else {
-                       logger.fatal("Can't create RangerRequest oject. 
userName="
-                                       + userName + ", accessType=" + 
accessType + ", ip=" + ip
-                                       + ", collectionRequest=" + 
collectionRequest);
+                       return rangerRequest;
                }
+               
+               logger.fatal("Can't create RangerRequest oject. userName="
+                               + userName + ", accessType=" + accessType + ", 
ip=" + ip
+                               + ", collectionRequest=" + collectionRequest);
 
-               return requests;
+               return null;
        }
 
        private RangerAccessRequestImpl createBaseRequest(String userName,

Reply via email to