- public String getResult(boolean updateFlag) throws PolicyException {
- String response = null;
- String operation = null;
- if (updateFlag){
- operation = "update";
- } else {
- operation = "create";
- }
- RuleProvider ruleProvider = policyParameters.getRuleProvider();
- if (ruleProvider==null) {
- ruleProvider = RuleProvider.CUSTOM ;
- }
- Map<String,String> matchingAttributes = null;
- Map<String,String> settingsAttributes = null;
-
- //Get the MATCHING and/or SETTINGS attributes
- if (policyParameters.getAttributes()!=null && policyParameters.getAttributes().containsKey(AttributeType.MATCHING) && policyParameters.getAttributes().containsKey(AttributeType.SETTINGS)) {
- matchingAttributes = policyParameters.getAttributes().get(AttributeType.MATCHING);
- settingsAttributes = policyParameters.getAttributes().get(AttributeType.SETTINGS);
- }else if(policyParameters.getAttributes()!=null && !policyParameters.getAttributes().containsKey(AttributeType.MATCHING) && policyParameters.getAttributes().containsKey(AttributeType.SETTINGS)){
- settingsAttributes = policyParameters.getAttributes().get(AttributeType.SETTINGS);
- }else if(policyParameters.getAttributes()!=null && policyParameters.getAttributes().containsKey(AttributeType.MATCHING) && !policyParameters.getAttributes().containsKey(AttributeType.SETTINGS)){
- matchingAttributes = policyParameters.getAttributes().get(AttributeType.MATCHING);
- }
- // Create StdPAPPolicy object used to send policy data to PAP-REST.
- StdPAPPolicy newPAPPolicy = new StdPAPPolicy(policyName, policyParameters.getPolicyDescription(), onapName, ruleProvider.toString(), matchingAttributes, settingsAttributes,
- policyParameters.getTreatments(), policyParameters.getDynamicRuleAlgorithmLabels(), policyParameters.getDynamicRuleAlgorithmFunctions(),
- policyParameters.getDynamicRuleAlgorithmField1(), policyParameters.getDynamicRuleAlgorithmField2(), null, null, null, updateFlag, policyScope, 0);
- // Send JSON to PAP.
- response = (String) papServices.callPAP(newPAPPolicy, new String[] {"operation="+operation, "apiflag=api", "policyType=Decision"}, policyParameters.getRequestID(), "Decision");
- LOGGER.info(message);
- return response;
- }
+ public Boolean getValidation() {
+ onapName = policyParameters.getOnapName();
+ if (onapName == null || onapName.trim().isEmpty()) {
+ message = XACMLErrorConstants.ERROR_DATA_ISSUE + "No ONAP Name given.";
+ return false;
+ }
+ return true;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public String getResult(boolean updateFlag) throws PolicyException {
+ String response = null;
+ String operation = null;
+ if (updateFlag) {
+ operation = "update";
+ } else {
+ operation = "create";
+ }
+ RuleProvider ruleProvider = policyParameters.getRuleProvider();
+ if (ruleProvider == null) {
+ ruleProvider = RuleProvider.CUSTOM;
+ }
+ Map<String, String> matchingAttributes = null;
+ Map<String, String> settingsAttributes = null;
+
+ //Get the MATCHING and/or SETTINGS attributes
+ if (policyParameters.getAttributes() != null &&
+ policyParameters.getAttributes().containsKey(AttributeType.MATCHING) &&
+ policyParameters.getAttributes().containsKey(AttributeType.SETTINGS)) {
+ matchingAttributes = policyParameters.getAttributes().get(AttributeType.MATCHING);
+ settingsAttributes = policyParameters.getAttributes().get(AttributeType.SETTINGS);
+ } else if (policyParameters.getAttributes() != null &&
+ !policyParameters.getAttributes().containsKey(AttributeType.MATCHING) &&
+ policyParameters.getAttributes().containsKey(AttributeType.SETTINGS)) {
+ settingsAttributes = policyParameters.getAttributes().get(AttributeType.SETTINGS);
+ } else if (policyParameters.getAttributes() != null &&
+ policyParameters.getAttributes().containsKey(AttributeType.MATCHING) &&
+ !policyParameters.getAttributes().containsKey(AttributeType.SETTINGS)) {
+ matchingAttributes = policyParameters.getAttributes().get(AttributeType.MATCHING);
+ }
+ // Create StdPAPPolicy object used to send policy data to PAP-REST.
+ StdPAPPolicy newPAPPolicy = new StdPAPPolicy(StdPAPPolicyParams.builder()
+ .policyName(policyName)
+ .description(policyParameters.getPolicyDescription())
+ .onapName(onapName)
+ .providerComboBox(ruleProvider.toString())
+ .dynamicFieldConfigAttributes(matchingAttributes)
+ .dynamicSettingsMap(settingsAttributes)
+ .treatments(policyParameters.getTreatments())
+ .dynamicRuleAlgorithmLabels(policyParameters.getDynamicRuleAlgorithmLabels())
+ .dynamicRuleAlgorithmCombo(policyParameters.getDynamicRuleAlgorithmFunctions())
+ .dynamicRuleAlgorithmField1(policyParameters.getDynamicRuleAlgorithmField1())
+ .dynamicRuleAlgorithmField2(policyParameters.getDynamicRuleAlgorithmField2())
+ .editPolicy(updateFlag)
+ .domain(policyScope)
+ .highestVersion(0)
+ .rawXacmlPolicy(policyParameters.getRawXacmlPolicy())
+ .build());
+ // Send JSON to PAP.
+ response = (String) papServices.callPAP(newPAPPolicy, new String[]{"operation=" + operation, "apiflag=api",
+ "policyType=Decision"}, policyParameters.getRequestID(), "Decision");
+ LOGGER.info(message);
+ return response;
+ }