Format ONAP-XACML and add JUnit
[policy/engine.git] / ONAP-XACML / src / main / java / org / onap / policy / xacml / std / pap / StdPAPPolicy.java
index 74ded6d..41b0c05 100644 (file)
@@ -2,8 +2,8 @@
  * ============LICENSE_START=======================================================
  * ONAP-XACML
  * ================================================================================
- * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Modified Copyright (C) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved.
+ * Modifications Copyright (C) 2018 Samsung Electronics Co., Ltd.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,6 +18,7 @@
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
+
 package org.onap.policy.xacml.std.pap;
 
 import java.io.Serializable;
@@ -81,7 +82,7 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
     private String guard = null;
     private String riskLevel;
     private String ttlDate = null;
-
+    private String rawXacmlPolicy = null;
 
     public StdPAPPolicy() {
         //
@@ -89,12 +90,19 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
         //
     }
 
-    //Constructor for sending location when pushing policies
+    // Constructor for sending location when pushing policies
     public StdPAPPolicy(URI location) {
         this.location = location;
     }
 
-    //Constructor for Validating Config Policies
+    /**
+     * Constructor for Validating Config Policies.
+     *
+     * @param policyName String
+     * @param body String
+     * @param configType String
+     * @param configPolicyType String
+     */
     public StdPAPPolicy(String policyName, String body, String configType, String configPolicyType) {
         this.policyName = policyName;
         this.configBodyData = body;
@@ -103,15 +111,16 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
     }
 
     /**
-     * Constructor for
-     *  Create Config Policies from API and Admin Console
-     *  Updating Config Policies from the API
-     *  Create/Update Action Policies from API
-     *  Create/Update Decision Policies
+     * Constructor.
+     * Create Config Policies from API and Admin Console
+     * Updating Config Policies from the API
+     * Create/Update Action Policies from API
+     * Create/Update Decision Policies
+     *
      * @param stdPAPPolicyParams Input params object
      */
     public StdPAPPolicy(StdPAPPolicyParams stdPAPPolicyParams) {
-        this.configPolicyType=stdPAPPolicyParams.getConfigPolicyType();
+        this.configPolicyType = stdPAPPolicyParams.getConfigPolicyType();
         this.policyName = stdPAPPolicyParams.getPolicyName();
         this.policyDescription = stdPAPPolicyParams.getDescription();
         this.onapName = stdPAPPolicyParams.getOnapName();
@@ -145,97 +154,17 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
         this.brmsController = stdPAPPolicyParams.getBrmsController();
         this.brmsDependency = stdPAPPolicyParams.getBrmsDependency();
         this.drlRuleAndUIParams = stdPAPPolicyParams.getDrlRuleAndUIParams();
-    }
-
-    //Constructor for Creating BRMS Param Policies from the Admin Console
-    public StdPAPPolicy(String configPolicyType, String policyName, String description,
-                        String configName, Boolean editPolicy, String domain,
-                        Map<String, String> dynamicFieldConfigAttributes, Integer highestVersion, String eCompName,
-                        String configBodyData, Map<String, String> drlRuleAndUIParams, String riskLevel,
-                        String riskType, String guard, String ttlDate, String brmsController,
-                        List<String> brmsDependency) {
-
-        this.configPolicyType = configPolicyType;
-        this.policyName = policyName;
-        this.policyDescription = description;
-        this.configName = configName;
-        this.editPolicy = editPolicy;
-        this.domain = domain;
-        this.dynamicFieldConfigAttributes = dynamicFieldConfigAttributes;
-        this.highestVersion = highestVersion;
-        this.onapName = eCompName;
-        this.configBodyData = configBodyData;
-        this.drlRuleAndUIParams = drlRuleAndUIParams;
-        this.riskLevel = riskLevel;
-        this.riskType = riskType;
-        this.guard = guard;
-        this.ttlDate = ttlDate;
-        this.brmsController = brmsController;
-        this.brmsDependency = brmsDependency;
-    }
-
-    //Constructor for Creating CloseLoop_Fault and Performance Metric Policies
-    public StdPAPPolicy(String configPolicyType, String policyName, String description, String onapName,
-                        String jsonBody, Boolean draft, String oldPolicyFileName, String serviceType,
-                        Boolean editPolicy,
-                        String domain, Integer highestVersion, String riskLevel, String riskType, String guard,
-                        String ttlDate) {
-
-        this.configPolicyType = configPolicyType;
-        this.policyName = policyName;
-        this.policyDescription = description;
-        this.onapName = onapName;
-        this.jsonBody = jsonBody;
-        this.draft = draft;
-        this.oldPolicyFileName = oldPolicyFileName;
-        this.serviceType = serviceType;
-        this.editPolicy = editPolicy;
-        this.domain = domain;
-        this.highestVersion = highestVersion;
-        this.riskLevel = riskLevel;
-        this.riskType = riskType;
-        this.guard = guard;
-        this.ttlDate = ttlDate;
-    }
-
-    //Constructor for Micro Service Creating/Updating Policies from the Admin Console
-    public StdPAPPolicy(String configPolicyType, String policyName, String description, String onapName,
-                        String configName, String serviceType, String uuid,
-                        String msLocation, String jsonBody, String priority, String version, Boolean editPolicy,
-                        String domain, int highestVersion, String riskLevel,
-                        String riskType, String guard, String ttlDate) {
-
-        this.configPolicyType = configPolicyType;
-        this.policyName = policyName;
-        this.policyDescription = description;
-        this.onapName = onapName;
-        this.configName = configName;
-        this.serviceType = serviceType;
-        this.uuid = uuid;
-        this.msLocation = msLocation;
-        this.priority = priority;
-        this.version = version;
-        this.jsonBody = jsonBody;
-        this.editPolicy = editPolicy;
-        this.domain = domain;
-        this.highestVersion = highestVersion;
-        this.riskLevel = riskLevel;
-        this.riskType = riskType;
-        this.guard = guard;
-        this.ttlDate = ttlDate;
-    }
-
-    // Constructor for deleting policies from the API
-    public StdPAPPolicy(String policyName, String deleteCondition) {
-        this.policyName = policyName;
-        this.deleteCondition = deleteCondition;
-    }
-
-    // Constructor for creating dictionary items from the API>
-    public StdPAPPolicy(String dictionaryType, String dictionary, String dictionaryFields) {
-        this.dictionaryType = dictionaryType;
-        this.dictionary = dictionary;
-        this.dictionaryFields = dictionaryFields;
+        this.serviceType = stdPAPPolicyParams.getServiceType();
+        this.oldPolicyFileName = stdPAPPolicyParams.getOldPolicyFileName();
+        this.draft = stdPAPPolicyParams.isDraft();
+        this.uuid = stdPAPPolicyParams.getUuid();
+        this.msLocation = stdPAPPolicyParams.getMsLocation();
+        this.priority = stdPAPPolicyParams.getPriority();
+        this.deleteCondition = stdPAPPolicyParams.getDeleteCondition();
+        this.dictionaryType = stdPAPPolicyParams.getDictionaryType();
+        this.dictionary = stdPAPPolicyParams.getDictionary();
+        this.dictionaryFields = stdPAPPolicyParams.getDictionaryFields();
+        this.rawXacmlPolicy = stdPAPPolicyParams.getRawXacmlPolicy();
     }
 
     @Override
@@ -471,31 +400,25 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
     @Override
     public String toString() {
         return "StdPAPPolicy [policyName=" + policyName + ", policyDescription=" + policyDescription + ", onapName="
-                + onapName + ", configName=" + configName + ", dynamicFieldConfigAttributes=" +
-                dynamicFieldConfigAttributes + ", configBodyData=" + configBodyData
-                + ", policyID=" + policyID + ", ruleID=" + ruleID + ", configType=" + configType + ", editPolicy=" +
-                ", version=" + ", domain=" + domain
-                + ", configPolicyType=" + configPolicyType + ", jsonBody=" + jsonBody + ", highestVersion=" +
-                highestVersion + ", location=" + location
-                + ",dynamicRuleAlgorithmLabels=" + dynamicRuleAlgorithmLabels + ",dynamicRuleAlgorithmCombo=" +
-                dynamicRuleAlgorithmCombo
-                + ",dynamicRuleAlgorithmField1=" + dynamicRuleAlgorithmField1 + ",dynamicRuleAlgorithmField2=" +
-                dynamicRuleAlgorithmField2
-                + ",actionPerformer=" + actionPerformer + ",actionAttribute=" + actionAttribute + ",actionBody=" +
-                actionBody + ",dropDownMap=" + dropDownMap
-                + ",actionDictHeader=" + actionDictHeader + ",actionDictType=" + actionDictType + ",actionDictUrl=" +
-                actionDictUrl
-                + ",actionDictMethod=" + actionDictMethod + ",dynamicSettingsMap=" + dynamicSettingsMap + "," +
-                "dynamicVariableList=" + dynamicVariableList + ",providerComboBox=" + providerComboBox
-                + ",dataTypeList=" + dataTypeList + ",draft=" + ",oldPolicyFileName=" + oldPolicyFileName + "," +
-                "serviceType=" + serviceType
-                + ",uuid=" + uuid + ",msLocation=" + msLocation + ",priority=" + priority + ",deleteCondition=" +
-                deleteCondition + ",dictionaryType=" + dictionaryType
-                + ",dictionary=" + dictionary + ",dictionaryFields=" + dictionaryFields + ",uuid=" + uuid + "," +
-                "msLocation=" + msLocation + ",priority="
-                + priority + ",deleteCondition=" + deleteCondition + ",riskType=" + riskType + ",riskLevel=" +
-                riskLevel + ",guard=" + guard + ",ttlDate=" + ttlDate
-                + ",treatments=" + treatments + "]";
+                + onapName + ", configName=" + configName + ", dynamicFieldConfigAttributes="
+                + dynamicFieldConfigAttributes + ", configBodyData=" + configBodyData + ", policyID=" + policyID
+                + ", ruleID=" + ruleID + ", configType=" + configType + ", editPolicy=" + ", version=" + ", domain="
+                + domain + ", configPolicyType=" + configPolicyType + ", jsonBody=" + jsonBody + ", highestVersion="
+                + highestVersion + ", location=" + location + ",dynamicRuleAlgorithmLabels="
+                + dynamicRuleAlgorithmLabels + ",dynamicRuleAlgorithmCombo=" + dynamicRuleAlgorithmCombo
+                + ",dynamicRuleAlgorithmField1=" + dynamicRuleAlgorithmField1 + ",dynamicRuleAlgorithmField2="
+                + dynamicRuleAlgorithmField2 + ",actionPerformer=" + actionPerformer + ",actionAttribute="
+                + actionAttribute + ",actionBody=" + actionBody + ",dropDownMap=" + dropDownMap + ",actionDictHeader="
+                + actionDictHeader + ",actionDictType=" + actionDictType + ",actionDictUrl=" + actionDictUrl
+                + ",actionDictMethod=" + actionDictMethod + ",dynamicSettingsMap=" + dynamicSettingsMap + ","
+                + "dynamicVariableList=" + dynamicVariableList + ",providerComboBox=" + providerComboBox
+                + ",dataTypeList=" + dataTypeList + ",draft=" + ",oldPolicyFileName=" + oldPolicyFileName + ","
+                + "serviceType=" + serviceType + ",uuid=" + uuid + ",msLocation=" + msLocation + ",priority=" + priority
+                + ",deleteCondition=" + deleteCondition + ",dictionaryType=" + dictionaryType + ",dictionary="
+                + dictionary + ",dictionaryFields=" + dictionaryFields + ",uuid=" + uuid + "," + "msLocation="
+                + msLocation + ",priority=" + priority + ",deleteCondition=" + deleteCondition + ",riskType=" + riskType
+                + ",riskLevel=" + riskLevel + ",guard=" + guard + ",ttlDate=" + ttlDate + ",treatments=" + treatments
+                + "]";
     }
 
     // Methods needed for JSON Deserialization
@@ -515,8 +438,7 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
         this.configName = configName;
     }
 
-    public void setDynamicFieldConfigAttributes(
-            Map<String, String> dynamicFieldConfigAttributes) {
+    public void setDynamicFieldConfigAttributes(Map<String, String> dynamicFieldConfigAttributes) {
         this.dynamicFieldConfigAttributes = dynamicFieldConfigAttributes;
     }
 
@@ -564,8 +486,7 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
         this.location = location;
     }
 
-    public void setDynamicRuleAlgorithmLabels(
-            List<String> dynamicRuleAlgorithmLabels) {
+    public void setDynamicRuleAlgorithmLabels(List<String> dynamicRuleAlgorithmLabels) {
         this.dynamicRuleAlgorithmLabels = dynamicRuleAlgorithmLabels;
     }
 
@@ -573,13 +494,11 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
         this.dynamicRuleAlgorithmCombo = dynamicRuleAlgorithmCombo;
     }
 
-    public void setDynamicRuleAlgorithmField1(
-            List<String> dynamicRuleAlgorithmField1) {
+    public void setDynamicRuleAlgorithmField1(List<String> dynamicRuleAlgorithmField1) {
         this.dynamicRuleAlgorithmField1 = dynamicRuleAlgorithmField1;
     }
 
-    public void setDynamicRuleAlgorithmField2(
-            List<String> dynamicRuleAlgorithmField2) {
+    public void setDynamicRuleAlgorithmField2(List<String> dynamicRuleAlgorithmField2) {
         this.dynamicRuleAlgorithmField2 = dynamicRuleAlgorithmField2;
     }
 
@@ -718,4 +637,12 @@ public class StdPAPPolicy implements OnapPAPPolicy, Serializable {
     public void setTreatments(Map<String, String> treatments) {
         this.treatments = treatments;
     }
+
+    public String getRawXacmlPolicy() {
+        return rawXacmlPolicy;
+    }
+
+    public void setRawXacmlPolicy(String rawXacmlPolicy) {
+        this.rawXacmlPolicy = rawXacmlPolicy;
+    }
 }