Repository: incubator-ranger
Updated Branches:
  refs/heads/master cb2dc3146 -> 63c7893ae


RANGER-380: Fixed Case sensitive comparision


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

Branch: refs/heads/master
Commit: 63c7893aeb7edadd24b8076e7c2ed18e4cf1065f
Parents: cb2dc31
Author: Ramesh Mani <[email protected]>
Authored: Wed Apr 8 02:28:40 2015 -0400
Committer: sneethiraj <[email protected]>
Committed: Wed Apr 8 02:28:40 2015 -0400

----------------------------------------------------------------------
 .../apache/ranger/common/RangerSearchUtil.java  | 23 +++++++++-
 .../java/org/apache/ranger/rest/PublicAPIs.java | 45 +++++++-------------
 .../org/apache/ranger/rest/ServiceREST.java     | 23 ++++++++++
 3 files changed, 61 insertions(+), 30 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/63c7893a/security-admin/src/main/java/org/apache/ranger/common/RangerSearchUtil.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/common/RangerSearchUtil.java 
b/security-admin/src/main/java/org/apache/ranger/common/RangerSearchUtil.java
index 1a45d43..8b98ac9 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/common/RangerSearchUtil.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/common/RangerSearchUtil.java
@@ -79,6 +79,27 @@ public class RangerSearchUtil extends SearchUtil {
                return ret;
        }
 
+       public SearchFilter 
getSearchFilterFromLegacyRequestForRepositorySearch(HttpServletRequest request, 
List<SortField> sortFields) {
+               if (request == null) {
+                       return null;
+               }
+
+               SearchFilter ret = new SearchFilter();
+
+               if (MapUtils.isEmpty(request.getParameterMap())) {
+                       ret.setParams(new HashMap<String, String>());
+               }
+
+               ret.setParam(SearchFilter.SERVICE_NAME, 
request.getParameter("name"));
+               ret.setParam(SearchFilter.IS_ENABLED, 
request.getParameter("status"));
+               ret.setParam(SearchFilter.SERVICE_TYPE, 
request.getParameter("type").toLowerCase());
+
+               extractCommonCriteriasForFilter(request, ret, sortFields);
+
+               return ret;
+       }
+
+
        public SearchFilter getSearchFilterFromLegacyRequest(HttpServletRequest 
request, List<SortField> sortFields) {
                if (request == null) {
                        return null;
@@ -90,7 +111,7 @@ public class RangerSearchUtil extends SearchUtil {
                        ret.setParams(new HashMap<String, String>());
                }
 
-               ret.setParam(SearchFilter.SERVICE_TYPE, 
request.getParameter("repositoryType"));
+               ret.setParam(SearchFilter.SERVICE_TYPE, 
request.getParameter("repositoryType").toLowerCase());
                ret.setParam(SearchFilter.SERVICE_NAME, 
request.getParameter("repositoryName"));
                ret.setParam(SearchFilter.SERVICE_ID, 
request.getParameter("repositoryId"));
                ret.setParam(SearchFilter.POLICY_NAME, 
request.getParameter("policyName"));

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/63c7893a/security-admin/src/main/java/org/apache/ranger/rest/PublicAPIs.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/rest/PublicAPIs.java 
b/security-admin/src/main/java/org/apache/ranger/rest/PublicAPIs.java
index cd31f69..736e56f 100644
--- a/security-admin/src/main/java/org/apache/ranger/rest/PublicAPIs.java
+++ b/security-admin/src/main/java/org/apache/ranger/rest/PublicAPIs.java
@@ -19,6 +19,7 @@
 
 package org.apache.ranger.rest;
 
+import org.apache.commons.collections.MapUtils;
 import org.apache.log4j.Logger;
 import org.apache.ranger.common.*;
 import org.apache.ranger.common.annotation.RangerAnnotationClassName;
@@ -39,7 +40,8 @@ import 
org.springframework.transaction.annotation.Transactional;
 import javax.servlet.http.HttpServletRequest;
 import javax.ws.rs.*;
 import javax.ws.rs.core.Context;
-import java.util.ArrayList;
+
+import java.util.HashMap;
 import java.util.List;
 
 @Path("public")
@@ -177,57 +179,42 @@ public class PublicAPIs {
                if(logger.isDebugEnabled()) {
                        logger.debug("==> PublicAPIs.searchRepositories()");
                }
-               
-               SearchCriteria searchCriteria = 
searchUtil.extractCommonCriterias(
-                               request, xAssetService.sortFields);
-               searchUtil.extractString(request, searchCriteria, "name",
-                               "Repository Name", null);
-               searchUtil.extractBoolean(request, searchCriteria, "status",
-                               "Activation Status");
-               searchUtil.extractString(request, searchCriteria, "type",
-                               "Repository Type", null);
 
-               searchCriteria = serviceUtil.getMappedSearchParams(request,
-                               searchCriteria);
-               List<RangerService> serviceList = 
serviceREST.getServices(request);
+               SearchFilter filter = 
searchUtil.getSearchFilterFromLegacyRequestForRepositorySearch(request, 
policyService.sortFields);
+
+               List<RangerService> serviceList = 
serviceREST.getServices(filter);
 
                VXRepositoryList ret = null;
 
                if (serviceList != null) {
                        ret = 
serviceUtil.rangerServiceListToPublicObjectList(serviceList);
                }
+
                if(logger.isDebugEnabled()) {
                        logger.debug("<== PublicAPIs.searchRepositories(): 
count=" + (ret == null ? 0 : ret.getListSize()));
                }
-                       
+
                return ret;
        }
 
-       
+
        @GET
        @Path("/api/repository/count")
        @Produces({ "application/json", "application/xml" })
        public VXLong countRepositories(@Context HttpServletRequest request) {
-               SearchCriteria searchCriteria = 
searchUtil.extractCommonCriterias(
-                               request, xAssetService.sortFields);
-       
+
                if(logger.isDebugEnabled()) {
                        logger.debug("==> PublicAPIs.countRepositories()");
                }
-               
-        ArrayList<Integer> valueList = new ArrayList<Integer>();
-        valueList.add(RangerConstants.STATUS_DISABLED);
-        valueList.add(RangerConstants.STATUS_ENABLED);
-        searchCriteria.addParam("status", valueList);
-        
+
         VXLong ret = new VXLong();
         
         ret.setValue(serviceREST.countServices(request));
-               
+
         if(logger.isDebugEnabled()) {
                        logger.debug("<== PublicAPIs.countRepositories(): 
count=" + ret);
                }
-        
+
         return ret;
        }       
        
@@ -367,16 +354,16 @@ public class PublicAPIs {
                if(logger.isDebugEnabled()) {
                        logger.debug("==> PublicAPIs.countPolicies(): ");
                }
-               
+
                Long policyCount = serviceREST.countPolicies(request);
                
                VXLong vXlong = new VXLong();
                vXlong.setValue(policyCount);
-               
+
                if(logger.isDebugEnabled()) {
                        logger.debug("<== PublicAPIs.countPolicies(): "  + 
request );
                }
-               
+
                return vXlong;
        }
 

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/63c7893a/security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java
----------------------------------------------------------------------
diff --git 
a/security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java 
b/security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java
index c85422c..c2b0a3f 100644
--- a/security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java
+++ b/security-admin/src/main/java/org/apache/ranger/rest/ServiceREST.java
@@ -474,6 +474,29 @@ public class ServiceREST {
                return ret;
        }
 
+       public List<RangerService> getServices(SearchFilter filter) {
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("==> ServiceREST.getServices():");
+               }
+
+               List<RangerService> ret = null;
+
+               try {
+                       ret = svcStore.getServices(filter);
+               } catch(Exception excp) {
+                       LOG.error("getServices() failed", excp);
+
+                       throw 
restErrorUtil.createRESTException(HttpServletResponse.SC_BAD_REQUEST, 
excp.getMessage(), true);
+               }
+
+               if(LOG.isDebugEnabled()) {
+                       LOG.debug("<== ServiceREST.getServices(): count=" + 
(ret == null ? 0 : ret.size()));
+               }
+
+               return ret;
+       }
+
+
        @GET
        @Path("/services/count")
        @Produces({ "application/json", "application/xml" })

Reply via email to