aboutsummaryrefslogtreecommitdiffstats
path: root/common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java')
-rw-r--r--common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java167
1 files changed, 83 insertions, 84 deletions
diff --git a/common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java b/common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java
index 71a3227c56..72c5a7dd5b 100644
--- a/common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java
+++ b/common/src/main/java/org/onap/so/client/policy/PolicyClientImpl.java
@@ -22,7 +22,6 @@ package org.onap.so.client.policy;
import java.io.IOException;
import java.util.List;
-
import org.onap.so.client.RestClient;
import org.onap.so.client.RestPropertiesLoader;
import org.onap.so.client.defaultproperties.PolicyRestPropertiesImpl;
@@ -41,7 +40,6 @@ import org.onap.so.client.policy.entities.PolicyServiceType;
import org.onap.so.client.policy.entities.Workstep;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.JsonMappingException;
@@ -51,88 +49,89 @@ import com.fasterxml.jackson.databind.SerializationFeature;
public class PolicyClientImpl implements PolicyClient {
- private static Logger logger = LoggerFactory.getLogger(PolicyClientImpl.class);
- private PolicyRestProperties props;
- private ObjectMapper mapper = new ObjectMapper();
-
- public PolicyClientImpl() {
- props = RestPropertiesLoader.getInstance().getNewImpl(PolicyRestProperties.class);
- if (props == null) {
- logger.error("No RestProperty.PolicyRestProperties implementation found on classpath");
- props = new PolicyRestPropertiesImpl();
- }
- }
- public PolicyDecision getDecision(String serviceType, String vnfType, String bbID, String workStep,
- String errorCode) {
- DecisionAttributes decisionAttributes = new DecisionAttributes();
- decisionAttributes.setServiceType(serviceType);
- decisionAttributes.setvNFType(vnfType);
- decisionAttributes.setBbID(bbID);
- decisionAttributes.setWorkStep(workStep);
- decisionAttributes.setErrorCode(errorCode);
+ private static Logger logger = LoggerFactory.getLogger(PolicyClientImpl.class);
+ private PolicyRestProperties props;
+ private ObjectMapper mapper = new ObjectMapper();
+
+ public PolicyClientImpl() {
+ props = RestPropertiesLoader.getInstance().getNewImpl(PolicyRestProperties.class);
+ if (props == null) {
+ logger.error("No RestProperty.PolicyRestProperties implementation found on classpath");
+ props = new PolicyRestPropertiesImpl();
+ }
+ }
+
+ public PolicyDecision getDecision(String serviceType, String vnfType, String bbID, String workStep,
+ String errorCode) {
+ DecisionAttributes decisionAttributes = new DecisionAttributes();
+ decisionAttributes.setServiceType(serviceType);
+ decisionAttributes.setvNFType(vnfType);
+ decisionAttributes.setBbID(bbID);
+ decisionAttributes.setWorkStep(workStep);
+ decisionAttributes.setErrorCode(errorCode);
+
+ return this.getDecision(decisionAttributes);
+ }
+
+ protected PolicyDecision getDecision(DecisionAttributes decisionAttributes) {
+ PolicyRestClient client = this.getPolicyRestClient(PolicyServiceType.GET_DECISION);
+ PolicyDecisionRequest decisionRequest = new PolicyDecisionRequest();
+ decisionRequest.setDecisionAttributes(decisionAttributes);
+ decisionRequest.setEcompcomponentName(RestClient.ECOMP_COMPONENT_NAME);
+
+ return client.post(decisionRequest, PolicyDecision.class);
+ }
+
+ public DictionaryData getAllowedTreatments(String bbID, String workStep) {
+ PolicyRestClient client = this.getPolicyRestClient(PolicyServiceType.GET_DICTIONARY_ITEMS);
+ DictionaryItemsRequest dictionaryItemsRequest = new DictionaryItemsRequest();
+ dictionaryItemsRequest.setDictionaryType("Decision");
+ dictionaryItemsRequest.setDictionary("RainyDayTreatments");
+ final AllowedTreatments response = client.post(dictionaryItemsRequest, AllowedTreatments.class);
+ final DictionaryJson dictionaryJson = response.getDictionaryJson();
+ final List<DictionaryData> dictionaryDataList = dictionaryJson.getDictionaryDatas();
+ for (DictionaryData dictData : dictionaryDataList) {
+ Bbid bBid = dictData.getBbid();
+ Workstep workstep = dictData.getWorkstep();
+ String bBidString = bBid.getString();
+ String workstepString = workstep.getString();
+ if (bbID.equals(bBidString) && workStep.equals(workstepString)) {
+ return dictData;
+ }
+ }
+ logger.error("There is no AllowedTreatments with that specified parameter set");
+ return null;
+ }
+
+ @Override
+ public Config getConfigWithPolicyName(String policyName) {
+ PolicyRestClient client = this.getPolicyRestClient(PolicyServiceType.GET_CONFIG);
+ ConfigRequestParameters configReqParameters = new ConfigRequestParameters();
+ configReqParameters.setPolicyName(policyName);
+ PolicyConfig[] policyConfigList = client.post(configReqParameters, PolicyConfig[].class);
+ PolicyConfig policyConfig = null;
+ if (policyConfigList.length > 1) {
+ logger.debug("Too many configs for policyName: " + policyName);
+ return null;
+ }
+ try {
+ policyConfig = policyConfigList[0];
+ return this.getConfigFromStringJson(policyConfig.getConfig());
+ } catch (IOException e) {
+ logger.error(e.getMessage());
+ return null;
+ }
+ }
- return this.getDecision(decisionAttributes);
- }
+ protected Config getConfigFromStringJson(String configJson)
+ throws JsonParseException, JsonMappingException, IOException {
+ String unescapedJson = configJson.replaceAll("\\\\", "");
+ mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false);
+ mapper.configure(DeserializationFeature.UNWRAP_ROOT_VALUE, false);
+ return mapper.readValue(unescapedJson, Config.class);
+ }
- protected PolicyDecision getDecision(DecisionAttributes decisionAttributes) {
- PolicyRestClient client = this.getPolicyRestClient(PolicyServiceType.GET_DECISION);
- PolicyDecisionRequest decisionRequest = new PolicyDecisionRequest();
- decisionRequest.setDecisionAttributes(decisionAttributes);
- decisionRequest.setEcompcomponentName(RestClient.ECOMP_COMPONENT_NAME);
-
- return client.post(decisionRequest, PolicyDecision.class);
- }
-
- public DictionaryData getAllowedTreatments(String bbID, String workStep)
- {
- PolicyRestClient client = this.getPolicyRestClient(PolicyServiceType.GET_DICTIONARY_ITEMS);
- DictionaryItemsRequest dictionaryItemsRequest = new DictionaryItemsRequest();
- dictionaryItemsRequest.setDictionaryType("Decision");
- dictionaryItemsRequest.setDictionary("RainyDayTreatments");
- final AllowedTreatments response = client.post(dictionaryItemsRequest, AllowedTreatments.class);
- final DictionaryJson dictionaryJson = response.getDictionaryJson();
- final List<DictionaryData> dictionaryDataList = dictionaryJson.getDictionaryDatas();
- for(DictionaryData dictData : dictionaryDataList){
- Bbid bBid = dictData.getBbid();
- Workstep workstep = dictData.getWorkstep();
- String bBidString = bBid.getString();
- String workstepString = workstep.getString();
- if(bbID.equals(bBidString) && workStep.equals(workstepString)){
- return dictData;
- }
- }
- logger.error("There is no AllowedTreatments with that specified parameter set");
- return null;
- }
-
- @Override
- public Config getConfigWithPolicyName(String policyName) {
- PolicyRestClient client = this.getPolicyRestClient(PolicyServiceType.GET_CONFIG);
- ConfigRequestParameters configReqParameters = new ConfigRequestParameters();
- configReqParameters.setPolicyName(policyName);
- PolicyConfig[] policyConfigList = client.post(configReqParameters, PolicyConfig[].class);
- PolicyConfig policyConfig = null;
- if(policyConfigList.length > 1) {
- logger.debug("Too many configs for policyName: " + policyName);
- return null;
- }
- try {
- policyConfig = policyConfigList[0];
- return this.getConfigFromStringJson(policyConfig.getConfig());
- } catch (IOException e) {
- logger.error(e.getMessage());
- return null;
- }
- }
-
- protected Config getConfigFromStringJson(String configJson) throws JsonParseException, JsonMappingException, IOException {
- String unescapedJson = configJson.replaceAll("\\\\", "");
- mapper.configure(SerializationFeature.WRAP_ROOT_VALUE, false);
- mapper.configure(DeserializationFeature.UNWRAP_ROOT_VALUE, false);
- return mapper.readValue(unescapedJson, Config.class);
- }
-
- protected PolicyRestClient getPolicyRestClient(PolicyServiceType policyServiceType) {
- return new PolicyRestClient(this.props, policyServiceType);
- }
+ protected PolicyRestClient getPolicyRestClient(PolicyServiceType policyServiceType) {
+ return new PolicyRestClient(this.props, policyServiceType);
+ }
}