X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=ONAP-PDP-REST%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fpdp%2Frest%2Fapi%2Fservices%2FGetConfigService.java;h=1744aa8ae68ed7976cb4d830dfbf5dc38a74b924;hb=b6d9063e06ab8cdf2d97fc75810792659344e4a8;hp=1817d8861b4dcba0c277a69d7a249a6a89400e03;hpb=073cc188efe9abb4c010cf674e34e2cf46ef1c52;p=policy%2Fengine.git diff --git a/ONAP-PDP-REST/src/main/java/org/onap/policy/pdp/rest/api/services/GetConfigService.java b/ONAP-PDP-REST/src/main/java/org/onap/policy/pdp/rest/api/services/GetConfigService.java index 1817d8861..1744aa8ae 100644 --- a/ONAP-PDP-REST/src/main/java/org/onap/policy/pdp/rest/api/services/GetConfigService.java +++ b/ONAP-PDP-REST/src/main/java/org/onap/policy/pdp/rest/api/services/GetConfigService.java @@ -36,6 +36,7 @@ import javax.json.JsonObjectBuilder; import org.onap.policy.api.ConfigRequestParameters; import org.onap.policy.api.PolicyConfigException; import org.onap.policy.api.PolicyConfigStatus; +import org.onap.policy.api.PolicyConfigType; import org.onap.policy.common.logging.flexlogger.FlexLogger; import org.onap.policy.common.logging.flexlogger.Logger; import org.onap.policy.pdp.rest.api.models.PDPResponse; @@ -143,11 +144,48 @@ public class GetConfigService { policyConfig.setProperty(stdStatus.getProperty()); policyConfig.setResponseAttributes(stdStatus.getResponseAttributes()); policyConfig.setType(stdStatus.getType()); + policyConfig.setPolicyType(getPolicyType(stdStatus.getPolicyName())); result.add(policyConfig); } } return result; } + + // Returns PolicyConfigType based on policyName. + private PolicyConfigType getPolicyType(String policyName) { + if(policyName != null) { + String name = policyName; + if(name.endsWith(".xml")){ + name = name.substring(0, name.substring(0, name.lastIndexOf('.')).lastIndexOf('.')); + } + name = name.substring(name.lastIndexOf('.')+1); + PolicyConfigType extType = extendedServices(name); + if(extType != null) return extType; + if (name.startsWith("Config_BRMS_Param_")) { + return PolicyConfigType.BRMS_PARAM; + } else if(name.startsWith("Config_BRMS_Raw_")) { + return PolicyConfigType.BRMS_RAW; + } else if(name.startsWith("Config_Fault_")) { + return PolicyConfigType.ClosedLoop_Fault; + } else if(name.startsWith("Config_FW_")) { + return PolicyConfigType.Firewall; + } else if(name.startsWith("Config_PM_")) { + return PolicyConfigType.ClosedLoop_PM; + } else if(name.startsWith("Config_MS_")) { + return PolicyConfigType.MicroService; + } else if(name.startsWith("Config_OOF_")) { + return PolicyConfigType.Optimization; + } else if(name.startsWith("Config_")) { + return PolicyConfigType.Base; + } + } + return null; + } + + public PolicyConfigType extendedServices(String policyName) { + // For extended services policyName will be required. + return null; + } // Filter logic required for results comparing with requests. private Collection filterResults( @@ -302,7 +340,7 @@ public class GetConfigService { return false; } if(configRequestParameters.getOnapName()==null && configRequestParameters.getPolicyName()==null){ - message = XACMLErrorConstants.ERROR_DATA_ISSUE + "Cannot proceed without onapComponentName or PolicyName"; + message = XACMLErrorConstants.ERROR_DATA_ISSUE + "Cannot proceed without onapName or PolicyName"; return false; } return true;