X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=POLICY-SDK-APP%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fadmin%2FPolicyAdapter.java;h=f29c8f8a1b280b73a347168e1c1e322ce2aa246d;hb=eff265962c081edb751d5d2ed99dc443cb97f3fb;hp=42010f14763c854021f9bfd282102ab964538154;hpb=3ee17bad27b036a9e4ca6e50a7fbdfe2ed0a8e7f;p=policy%2Fengine.git diff --git a/POLICY-SDK-APP/src/main/java/org/onap/policy/admin/PolicyAdapter.java b/POLICY-SDK-APP/src/main/java/org/onap/policy/admin/PolicyAdapter.java index 42010f147..f29c8f8a1 100644 --- a/POLICY-SDK-APP/src/main/java/org/onap/policy/admin/PolicyAdapter.java +++ b/POLICY-SDK-APP/src/main/java/org/onap/policy/admin/PolicyAdapter.java @@ -7,9 +7,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -29,6 +29,7 @@ import org.onap.policy.controller.CreateClosedLoopFaultController; import org.onap.policy.controller.CreateClosedLoopPMController; import org.onap.policy.controller.CreateDcaeMicroServiceController; import org.onap.policy.controller.CreateFirewallController; +import org.onap.policy.controller.CreateOptimizationController; import org.onap.policy.controller.CreatePolicyController; import org.onap.policy.controller.DecisionPolicyController; import org.onap.policy.rest.adapter.PolicyRestAdapter; @@ -39,12 +40,31 @@ import com.att.research.xacml.util.XACMLProperties; public class PolicyAdapter { private static final Logger LOGGER = FlexLogger.getLogger(PolicyAdapter.class); - + public void configure(PolicyRestAdapter policyAdapter, PolicyEntity entity) { if(extendedOptions(policyAdapter, entity)){ return; } String policyNameValue = policyAdapter.getPolicyName().substring(0, policyAdapter.getPolicyName().indexOf('_')); + String configPolicyName = getConfigPolicyName(policyAdapter); + policyAdapter.setPolicyType(policyNameValue); + + if (configPolicyName != null) { + policyAdapter.setConfigPolicyType(configPolicyName); + } + + if("Action".equalsIgnoreCase(policyAdapter.getPolicyType())){ + new ActionPolicyController().prePopulateActionPolicyData(policyAdapter, entity); + } + if("Decision".equalsIgnoreCase(policyAdapter.getPolicyType())){ + new DecisionPolicyController().prePopulateDecisionPolicyData(policyAdapter, entity); + } + if("Config".equalsIgnoreCase(policyAdapter.getPolicyType())){ + prePopulatePolicyData(policyAdapter, entity); + } + } + + private String getConfigPolicyName(PolicyRestAdapter policyAdapter) { String configPolicyName = null ; if(policyAdapter.getPolicyName().startsWith("Config_PM")){ configPolicyName = "ClosedLoop_PM"; @@ -58,50 +78,44 @@ public class PolicyAdapter { configPolicyName = "BRMS_Param"; }else if(policyAdapter.getPolicyName().startsWith("Config_MS")){ configPolicyName = "Micro Service"; + }else if(policyAdapter.getPolicyName().startsWith("Config_OOF")){ + configPolicyName = "Optimization"; }else if(policyAdapter.getPolicyName().startsWith("Action") || policyAdapter.getPolicyName().startsWith("Decision") ){ // No configPolicyName is applicable }else{ configPolicyName = "Base"; } - if (policyNameValue != null) { - policyAdapter.setPolicyType(policyNameValue); + return configPolicyName; + } + + private void prePopulatePolicyData(PolicyRestAdapter policyAdapter, PolicyEntity entity) { + if("Base".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreatePolicyController().prePopulateBaseConfigPolicyData(policyAdapter, entity); } - if (configPolicyName != null) { - policyAdapter.setConfigPolicyType(configPolicyName); + else if("BRMS_Raw".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateBRMSRawController().prePopulateBRMSRawPolicyData(policyAdapter, entity); } - - if("Action".equalsIgnoreCase(policyAdapter.getPolicyType())){ - new ActionPolicyController().prePopulateActionPolicyData(policyAdapter, entity); + else if("BRMS_Param".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateBRMSParamController().prePopulateBRMSParamPolicyData(policyAdapter, entity); } - if("Decision".equalsIgnoreCase(policyAdapter.getPolicyType())){ - new DecisionPolicyController().prePopulateDecisionPolicyData(policyAdapter, entity); + else if("ClosedLoop_Fault".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateClosedLoopFaultController().prePopulateClosedLoopFaultPolicyData(policyAdapter, entity); } - if("Config".equalsIgnoreCase(policyAdapter.getPolicyType())){ - if("Base".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreatePolicyController().prePopulateBaseConfigPolicyData(policyAdapter, entity); - } - else if("BRMS_Raw".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreateBRMSRawController().prePopulateBRMSRawPolicyData(policyAdapter, entity); - } - else if("BRMS_Param".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreateBRMSParamController().prePopulateBRMSParamPolicyData(policyAdapter, entity); - } - else if("ClosedLoop_Fault".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreateClosedLoopFaultController().prePopulateClosedLoopFaultPolicyData(policyAdapter, entity); - } - else if("ClosedLoop_PM".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreateClosedLoopPMController().prePopulateClosedLoopPMPolicyData(policyAdapter, entity); - } - else if("Micro Service".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreateDcaeMicroServiceController().prePopulateDCAEMSPolicyData(policyAdapter, entity); - } - else if("Firewall Config".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ - new CreateFirewallController().prePopulateFWPolicyData(policyAdapter, entity); - } + else if("ClosedLoop_PM".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateClosedLoopPMController().prePopulateClosedLoopPMPolicyData(policyAdapter, entity); + } + else if("Micro Service".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateDcaeMicroServiceController().prePopulateDCAEMSPolicyData(policyAdapter, entity); + } + else if("Optimization".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateOptimizationController().prePopulatePolicyData(policyAdapter, entity); + } + else if("Firewall Config".equalsIgnoreCase(policyAdapter.getConfigPolicyType())){ + new CreateFirewallController().prePopulateFWPolicyData(policyAdapter, entity); } } - - public boolean extendedOptions(PolicyRestAdapter policyAdapter, PolicyEntity entity) { + + private boolean extendedOptions(PolicyRestAdapter policyAdapter, PolicyEntity entity) { return false; } @@ -115,4 +129,4 @@ public class PolicyAdapter { return null; } -} +} \ No newline at end of file