Add comments and removed redundant code in Filters
Change-Id: I57db9a90550e89ccf23f23de608eedb5d0b7f4ff
Signed-off-by: Jorge Hernandez <jh1730@att.com>
Issue-ID: POLICY-1043
Signed-off-by: Jorge Hernandez <jh1730@att.com>
diff --git a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafAuthFilter.java b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafAuthFilter.java
index 0526738..5f6bb54 100644
--- a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafAuthFilter.java
+++ b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafAuthFilter.java
@@ -23,8 +23,15 @@
import javax.servlet.http.HttpServletRequest;
import org.onap.policy.common.endpoints.http.server.AuthorizationFilter;
+/**
+ * Generic Authorization AAF Filter Skeleton. This class will return
+ * a permission in AAF format. Subclasses are responsible to provide
+ * the AAF permission type and instance.
+ */
public abstract class AafAuthFilter extends AuthorizationFilter {
+ public static final String DEFAULT_NAMESPACE = "org.onap.policy";
+
@Override
protected String getRole(HttpServletRequest request) {
return
diff --git a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafGranularAuthFilter.java b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafGranularAuthFilter.java
index 86e3532..42df248 100644
--- a/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafGranularAuthFilter.java
+++ b/policy-endpoints/src/main/java/org/onap/policy/common/endpoints/http/server/aaf/AafGranularAuthFilter.java
@@ -24,19 +24,17 @@
import org.onap.policy.common.utils.network.NetworkUtil;
/**
- * Allows per server direct permissions from all rest apis to aaf permission types
- * for evaluation, hence the granularity.
+ * This generic class allows the mapping of REST APIs to AAF permissions
+ * to be evaluated in an AAF context. This class can be used for
+ * highly granular permissions where each REST resource can be directly
+ * mapped transparently to an AAF permission type, the instance being the host
+ * server, and the HTTP method corresponding to the action.
+ * Subclasses are responsible to provide the root permission prefix, typically
+ * the namespace.
*/
public abstract class AafGranularAuthFilter extends AafAuthFilter {
@Override
- protected String getRole(HttpServletRequest request) {
- return
- String.format("%s|%s|%s", getPermissionType(request), getPermissionInstance(request),
- request.getMethod().toLowerCase());
- }
-
- @Override
protected String getPermissionType(HttpServletRequest request) {
return getPermissionTypeRoot() + "." +
request.getRequestURI().replace('/', '.');