You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by sn...@apache.org on 2015/04/08 08:29:04 UTC
incubator-ranger git commit: RANGER-380: Fixed Case sensitive
comparision
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 <rm...@apache.org>
Authored: Wed Apr 8 02:28:40 2015 -0400
Committer: sneethiraj <sn...@apache.org>
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" })