ATLAS-2771: Add option to exclude internal types when retrieving typedefs via REST
Signed-off-by: Madhan Neethiraj <madhan@apache.org>
diff --git a/webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java b/webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java
index 345250a..13e6512 100644
--- a/webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java
+++ b/webapp/src/main/java/org/apache/atlas/web/rest/TypesREST.java
@@ -414,13 +414,20 @@
* @return
*/
private SearchFilter getSearchFilter(HttpServletRequest httpServletRequest) {
- SearchFilter ret = new SearchFilter();
- Set<String> keySet = httpServletRequest.getParameterMap().keySet();
- for (String key : keySet) {
- ret.setParam(String.valueOf(key), String.valueOf(httpServletRequest.getParameter(key)));
+ SearchFilter ret = new SearchFilter();
+ Set<String> keySet = httpServletRequest.getParameterMap().keySet();
+
+ for (String k : keySet) {
+ String key = String.valueOf(k);
+ String value = String.valueOf(httpServletRequest.getParameter(k));
+
+ if (key.equalsIgnoreCase("excludeInternalTypesAndReferences") && value.equalsIgnoreCase("true")) {
+ FilterUtil.addParamsToHideInternalType(ret);
+ } else {
+ ret.setParam(key, value);
+ }
}
- FilterUtil.addParamsToHideInternalType(ret);
return ret;
}
}