Use builder for std pap policy
[policy/engine.git] / ONAP-PAP-REST / src / test / java / org / onap / policy / pap / test / XACMLPAPTest.java
index 5208ad7..4ba72af 100644 (file)
@@ -3,13 +3,14 @@
  * ONAP-PAP-REST
  * ================================================================================
  * Copyright (C) 2017-2018 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.
  * 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.
@@ -74,6 +75,7 @@ import org.onap.policy.rest.jpa.PolicyEditorScopes;
 import org.onap.policy.rest.jpa.UserInfo;
 import org.onap.policy.utils.PolicyUtils;
 import org.onap.policy.xacml.std.pap.StdPAPPolicy;
+import org.onap.policy.xacml.std.pap.StdPAPPolicyParams;
 import org.springframework.mock.web.MockHttpServletResponse;
 import org.springframework.mock.web.MockServletConfig;
 import org.springframework.orm.hibernate4.LocalSessionFactoryBuilder;
@@ -81,7 +83,7 @@ import org.springframework.orm.hibernate4.LocalSessionFactoryBuilder;
 import com.mockrunner.mock.web.MockServletInputStream;
 
 public class XACMLPAPTest {
-       private static final Log logger = LogFactory.getLog(XACMLPAPTest.class);
+    private static final Log logger = LogFactory.getLog(XACMLPAPTest.class);
 
     private static final String ENVIRONMENT_HEADER = "Environment";
     private List<String> headers = new ArrayList<>();
@@ -93,47 +95,47 @@ public class XACMLPAPTest {
     private SessionFactory sessionFactory;
     private CommonClassDao commonClassDao;
 
-       private static final String DEFAULT_DB_DRIVER = "org.h2.Driver";
-       private static final String DEFAULT_DB_USER = "sa";
-       private static final String DEFAULT_DB_PWD = "";
+    private static final String DEFAULT_DB_DRIVER = "org.h2.Driver";
+    private static final String DEFAULT_DB_USER = "sa";
+    private static final String DEFAULT_DB_PWD = "";
 
-       @Before
-       public void setUpDB() throws Exception {
-               logger.info("setUpDB: Entering");
+    @Before
+    public void setUpDB() throws Exception {
+        logger.info("setUpDB: Entering");
 
-               Properties properties = new Properties();
-               properties.put(IntegrityAuditProperties.DB_DRIVER, XACMLPAPTest.DEFAULT_DB_DRIVER);
-               properties.put(IntegrityAuditProperties.DB_URL, "jdbc:h2:file:./sql/xacmlTest");
-               properties.put(IntegrityAuditProperties.DB_USER, XACMLPAPTest.DEFAULT_DB_USER);
-               properties.put(IntegrityAuditProperties.DB_PWD, XACMLPAPTest.DEFAULT_DB_PWD);
-               properties.put(IntegrityAuditProperties.SITE_NAME, "SiteA");
-               properties.put(IntegrityAuditProperties.NODE_TYPE, "pap");
+        Properties properties = new Properties();
+        properties.put(IntegrityAuditProperties.DB_DRIVER, XACMLPAPTest.DEFAULT_DB_DRIVER);
+        properties.put(IntegrityAuditProperties.DB_URL, "jdbc:h2:file:./sql/xacmlTest");
+        properties.put(IntegrityAuditProperties.DB_USER, XACMLPAPTest.DEFAULT_DB_USER);
+        properties.put(IntegrityAuditProperties.DB_PWD, XACMLPAPTest.DEFAULT_DB_PWD);
+        properties.put(IntegrityAuditProperties.SITE_NAME, "SiteA");
+        properties.put(IntegrityAuditProperties.NODE_TYPE, "pap");
 
-               //Clean the iaTest DB table for IntegrityAuditEntity entries
-               cleanDb("testPapPU", properties);
+        //Clean the iaTest DB table for IntegrityAuditEntity entries
+        cleanDb("testPapPU", properties);
 
-               logger.info("setUpDB: Exiting");
-       }
+        logger.info("setUpDB: Exiting");
+    }
 
-       public void cleanDb(String persistenceUnit, Properties properties){
-               logger.debug("cleanDb: enter");
+    public void cleanDb(String persistenceUnit, Properties properties) {
+        logger.debug("cleanDb: enter");
 
-               EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, properties);
+        EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, properties);
 
-               EntityManager em = emf.createEntityManager();
-               // Start a transaction
-               EntityTransaction et = em.getTransaction();
+        EntityManager em = emf.createEntityManager();
+        // Start a transaction
+        EntityTransaction et = em.getTransaction();
 
-               et.begin();
+        et.begin();
 
-               // Clean up the DB
-               em.createQuery("Delete from IntegrityAuditEntity").executeUpdate();
+        // Clean up the DB
+        em.createQuery("Delete from IntegrityAuditEntity").executeUpdate();
 
-               // commit transaction
-               et.commit();
-               em.close();
-               logger.debug("cleanDb: exit");
-       }
+        // commit transaction
+        et.commit();
+        em.close();
+        logger.debug("cleanDb: exit");
+    }
 
     @Before
     public void setUp() throws ServletException {
@@ -152,32 +154,61 @@ public class XACMLPAPTest {
         commonClassDao = Mockito.mock(CommonClassDao.class);
         new DictionaryUtils(commonClassDao);
         DictionaryUtils.setDictionaryUtils(new DictionaryUtils());
-        Mockito.mock(DictionaryUtils.class);  
+        Mockito.mock(DictionaryUtils.class);
     }
-    
+
     @Test
     public void testFirwallCreatePolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
-        String json = "{\"serviceTypeId\":\"/v0/firewall/pan\",\"configName\":\"TestFwPolicyConfig\",\"deploymentOption\":{\"deployNow\":false},\"securityZoneId\":\"cloudsite:dev1a\",\"serviceGroups\":[{\"name\":\"SSH\",\"description\":\"Sshservice entry in servicelist\",\"type\":\"SERVICE\",\"transportProtocol\":\"tcp\",\"appProtocol\":null,\"ports\":\"22\"}],\"addressGroups\":[{\"name\":\"test\",\"description\":\"Destination\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/12\"}]},{\"name\":\"TestServers\",\"description\":\"SourceTestServers for firsttesting\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/23\"}]}],\"firewallRuleList\":[{\"position\":\"1\",\"ruleName\":\"FWRuleTestServerToTest\",\"fromZones\":[\"UntrustedZoneTestName\"],\"toZones\":[\"TrustedZoneTestName\"],\"negateSource\":false,\"negateDestination\":false,\"sourceList\":[{\"type\":\"REFERENCE\",\"name\":\"TestServers\"}],\"destinationList\":[{\"type\":\"REFERENCE\",\"name\":\"Test\"}],\"sourceServices\":[],\"destServices\":[{\"type\":\"REFERENCE\",\"name\":\"SSH\"}],\"action\":\"accept\",\"description\":\"FWrule for Test source to Test destination\",\"enabled\":true,\"log\":true}]}";
+        String json =
+                "{\"serviceTypeId\":\"/v0/firewall/pan\",\"configName\":\"TestFwPolicyConfig\"," +
+                        "\"deploymentOption\":{\"deployNow\":false},\"securityZoneId\":\"cloudsite:dev1a\"," +
+                        "\"serviceGroups\":[{\"name\":\"SSH\",\"description\":\"Sshservice entry in servicelist\"," +
+                        "\"type\":\"SERVICE\",\"transportProtocol\":\"tcp\",\"appProtocol\":null,\"ports\":\"22\"}]," +
+                        "\"addressGroups\":[{\"name\":\"test\",\"description\":\"Destination\"," +
+                        "\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/12\"}]},{\"name\":\"TestServers\"," +
+                        "\"description\":\"SourceTestServers for firsttesting\",\"members\":[{\"type\":\"SUBNET\"," +
+                        "\"value\":\"127.0.0.1/23\"}]}],\"firewallRuleList\":[{\"position\":\"1\"," +
+                        "\"ruleName\":\"FWRuleTestServerToTest\",\"fromZones\":[\"UntrustedZoneTestName\"]," +
+                        "\"toZones\":[\"TrustedZoneTestName\"],\"negateSource\":false,\"negateDestination\":false," +
+                        "\"sourceList\":[{\"type\":\"REFERENCE\",\"name\":\"TestServers\"}]," +
+                        "\"destinationList\":[{\"type\":\"REFERENCE\",\"name\":\"Test\"}],\"sourceServices\":[]," +
+                        "\"destServices\":[{\"type\":\"REFERENCE\",\"name\":\"SSH\"}],\"action\":\"accept\"," +
+                        "\"description\":\"FWrule for Test source to Test destination\",\"enabled\":true," +
+                        "\"log\":true}]}";
         Mockito.when(httpServletRequest.getHeader(ENVIRONMENT_HEADER)).thenReturn("DEVL");
         Mockito.when(httpServletRequest.getMethod()).thenReturn("PUT");
         Mockito.when(httpServletRequest.getParameter("apiflag")).thenReturn("api");
         Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("create");
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Config");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("Firewall Config", "test", "testDescription", "Test", false, "test", json, 0, 
-                "5","default", "false", "");
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        StdPAPPolicy newPAPPolicy =
+                new StdPAPPolicy(StdPAPPolicyParams.builder()
+                        .configPolicyType("Firewall Config")
+                        .policyName("test")
+                        .description("testDescription")
+                        .configName("Test")
+                        .editPolicy(false)
+                        .domain("test")
+                        .jsonBody(json)
+                        .highestVersion(0)
+                        .riskLevel("5")
+                        .riskType("default")
+                        .guard("false")
+                        .ttlDate("")
+                        .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Config_FW_test.1.xml");
     }
-    
+
     @Test
     public void testBRMSCreatePolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -191,24 +222,40 @@ public class XACMLPAPTest {
         ruleAttributes.put("templateName", "testPolicy");
         ruleAttributes.put("samPoll", "5");
         ruleAttributes.put("value", "test");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("BRMS_Param","test", "testing",
-                "BRMS_PARAM_RULE",false,"test", 
-                matchingAttributes, 0, "DROOLS", 
-                null, ruleAttributes, "5",
-                "default", "false", "", null, null);
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        //Creating BRMS Param Policies from the Admin Console
+        StdPAPPolicy newPAPPolicy = new StdPAPPolicy(StdPAPPolicyParams.builder()
+                .configPolicyType("BRMS_Param")
+                .policyName("test")
+                .description("testing")
+                .configName("BRMS_PARAM_RULE")
+                .editPolicy(false)
+                .domain("test")
+                .dynamicFieldConfigAttributes(matchingAttributes)
+                .highestVersion(0)
+                .onapName("DROOLS")
+                .configBodyData(null)
+                .drlRuleAndUIParams(ruleAttributes)
+                .riskLevel("5")
+                .riskType("default")
+                .guard("false")
+                .ttlDate("")
+                .brmsController(null)
+                .brmsDependency(null)
+                .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         setPolicyCreation();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Config_BRMS_Param_test.1.xml");
     }
-    
+
     @Test
     public void testBRMSRawCreatePolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -219,23 +266,35 @@ public class XACMLPAPTest {
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Config");
         Map<String, String> ruleAttributes = new HashMap<>();
         ruleAttributes.put("value", "test");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("BRMS_Raw","test","testig description",
-                "BRMS_RAW_RULE",false,"test", ruleAttributes, 0, "DROOLS", 
-                "test", "4",
-                "default", "false", null,  null, null);
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        StdPAPPolicy newPAPPolicy = new StdPAPPolicy(StdPAPPolicyParams.builder()
+                .configPolicyType("BRMS_Raw")
+                .policyName("test")
+                .description("testig description")
+                .configName("BRMS_RAW_RULE")
+                .editPolicy(false)
+                .domain("test")
+                .dynamicFieldConfigAttributes(ruleAttributes)
+                .highestVersion(0)
+                .onapName("DROOLS")
+                .configBodyData("test")
+                .riskLevel("4")
+                .riskType("default")
+                .guard("false")
+                .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         setPolicyCreation();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Config_BRMS_Raw_test.1.xml");
     }
-    
+
     @Test
     public void testClosedLoopPMCreatePolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -245,22 +304,38 @@ public class XACMLPAPTest {
         Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("create");
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Config");
         String json = "{\"test\":\"java\"}";
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("ClosedLoop_PM", "test", "testing", "onap", 
-                json, false, null, "Registration Failure(Trinity)", false, "test", 0, null,
-                "default", "true", ""); 
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        //Creating CloseLoop_Fault and Performance Metric Policies
+        StdPAPPolicy newPAPPolicy = new StdPAPPolicy(StdPAPPolicyParams.builder()
+                .configPolicyType("ClosedLoop_PM")
+                .policyName("test")
+                .description("testing")
+                .onapName("onap")
+                .jsonBody(json)
+                .draft(false)
+                .oldPolicyFileName(null)
+                .serviceType("Registration Failure(Trinity)")
+                .editPolicy(false)
+                .domain("test")
+                .highestVersion(0)
+                .riskLevel(null)
+                .riskType("default")
+                .guard("true")
+                .ttlDate("")
+                .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         setPolicyCreation();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Config_PM_test.1.xml");
     }
-    
+
     @Test
     public void testDecisonAAFPolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -269,20 +344,28 @@ public class XACMLPAPTest {
         Mockito.when(httpServletRequest.getParameter("apiflag")).thenReturn("api");
         Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("create");
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Decision");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("test", "test rule", "ONAP", "AAF", null, null, null, 
-                null, null, null, null, null, null, null, false, "test", 0);
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        StdPAPPolicy newPAPPolicy = new StdPAPPolicy(StdPAPPolicyParams.builder()
+                .policyName("test")
+                .description("test rule")
+                .onapName("ONAP")
+                .providerComboBox("AAF")
+                .editPolicy(false)
+                .domain("test")
+                .highestVersion(0)
+                .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Decision_test.1.xml");
     }
-    
+
     @Test
     public void testDecisonGuardPolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -292,29 +375,40 @@ public class XACMLPAPTest {
         Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("create");
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Decision");
         Map<String, String> matchingAttributes = new HashMap<>();
-        matchingAttributes.put("actor","test");
-        matchingAttributes.put("recipe","restart");
-        matchingAttributes.put("targets","test,test1");
-        matchingAttributes.put("clname","");
-        matchingAttributes.put("limit","1");
-        matchingAttributes.put("timeWindow","15");
-        matchingAttributes.put("timeUnits","minute");
-        matchingAttributes.put("guardActiveStart","05:00");
-        matchingAttributes.put("guardActiveEnd","10:00");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("testGuard", "test rule", "PDPD", "GUARD_YAML", matchingAttributes , null, null, 
-                null, null, null, null, null, null, null, false, "test", 0);
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        matchingAttributes.put("actor", "test");
+        matchingAttributes.put("recipe", "restart");
+        matchingAttributes.put("targets", "test,test1");
+        matchingAttributes.put("clname", "");
+        matchingAttributes.put("limit", "1");
+        matchingAttributes.put("timeWindow", "15");
+        matchingAttributes.put("timeUnits", "minute");
+        matchingAttributes.put("guardActiveStart", "05:00");
+        matchingAttributes.put("guardActiveEnd", "10:00");
+        StdPAPPolicy newPAPPolicy =
+
+                new StdPAPPolicy(StdPAPPolicyParams.builder()
+                        .policyName("testGuard")
+                        .description("test rule")
+                        .onapName("PDPD")
+                        .providerComboBox("GUARD_YAML")
+                        .dynamicFieldConfigAttributes(matchingAttributes)
+                        .editPolicy(false)
+                        .domain("test")
+                        .highestVersion(0)
+                        .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Decision_testGuard.1.xml");
     }
-    
+
     @Test
     public void testDecisonBLGuardPolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -324,26 +418,36 @@ public class XACMLPAPTest {
         Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("create");
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Decision");
         Map<String, String> matchingAttributes = new HashMap<>();
-        matchingAttributes.put("actor","test");
-        matchingAttributes.put("recipe","restart");
-        matchingAttributes.put("clname","test");
-        matchingAttributes.put("guardActiveStart","05:00");
-        matchingAttributes.put("guardActiveEnd","10:00");
-        matchingAttributes.put("blackList","bl1,bl2");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("testblGuard", "test rule", "PDPD", "GUARD_BL_YAML", matchingAttributes , null, null, 
-                null, null, null, null, null, null, null, false, "test", 0);
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        matchingAttributes.put("actor", "test");
+        matchingAttributes.put("recipe", "restart");
+        matchingAttributes.put("clname", "test");
+        matchingAttributes.put("guardActiveStart", "05:00");
+        matchingAttributes.put("guardActiveEnd", "10:00");
+        matchingAttributes.put("blackList", "bl1,bl2");
+        StdPAPPolicy newPAPPolicy =
+                new StdPAPPolicy(StdPAPPolicyParams.builder()
+                        .policyName("testblGuard")
+                        .description("test rule")
+                        .onapName("PDPD")
+                        .providerComboBox("GUARD_BL_YAML")
+                        .dynamicFieldConfigAttributes(matchingAttributes)
+                        .editPolicy(false)
+                        .domain("test")
+                        .highestVersion(0)
+                        .build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Decision_testblGuard.1.xml");
     }
-    
+
     @Test
     public void testConfigPolicy() throws IOException, ServletException, SQLException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -354,20 +458,35 @@ public class XACMLPAPTest {
         Mockito.when(httpServletRequest.getParameter("policyType")).thenReturn("Config");
         Map<String, String> configAttributes = new HashMap<>();
         configAttributes.put("value", "test");
-        StdPAPPolicy newPAPPolicy = new StdPAPPolicy("Base", "test", "test rule", "TEST", "config", configAttributes, "OTHER", 
-                "test body", false, "test",0, "5","default", "false", null);
-        MockServletInputStream mockInput = new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
+        StdPAPPolicy newPAPPolicy = new StdPAPPolicy(StdPAPPolicyParams.builder()
+                .configPolicyType("Base")
+                .policyName("test")
+                .description("test rule")
+                .onapName("TEST")
+                .configName("config")
+                .dynamicFieldConfigAttributes(configAttributes)
+                .configType("OTHER")
+                .configBodyData("test body")
+                .editPolicy(false)
+                .domain("test")
+                .highestVersion(0)
+                .riskLevel("5")
+                .riskType("default")
+                .guard("false")
+                .ttlDate(null).build());
+        MockServletInputStream mockInput =
+                new MockServletInputStream(PolicyUtils.objectToJsonString(newPAPPolicy).getBytes());
         Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput);
-        
+
         // set DBDao
         setDBDao();
         pap.service(httpServletRequest, httpServletResponse);
-        
+
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
         Mockito.verify(httpServletResponse).addHeader("successMapKey", "success");
         Mockito.verify(httpServletResponse).addHeader("policyName", "test.Config_test.1.xml");
     }
-    
+
     private void setPolicyCreation() {
         CommonClassDao commonClassDao = Mockito.mock(CommonClassDao.class);
         PolicyCreation.setCommonClassDao(commonClassDao);
@@ -378,7 +497,8 @@ public class XACMLPAPTest {
         editorScope.setScopeName("test");
         editorScope.setUserCreatedBy(userInfo);
         editorScope.setUserModifiedBy(userInfo);
-        Mockito.when(commonClassDao.getEntityItem(PolicyEditorScopes.class, "scopeName", "test")).thenReturn(editorScope);
+        Mockito.when(commonClassDao.getEntityItem(PolicyEditorScopes.class, "scopeName", "test"))
+                .thenReturn(editorScope);
         BRMSParamTemplate template = new BRMSParamTemplate();
         template.setRuleName("testPolicy");
         template.setUserCreatedBy(userInfo);
@@ -406,11 +526,12 @@ public class XACMLPAPTest {
                 + "System.out.println(\"Firing rule 1\");\n"
                 + "System.out.println($param);\n"
                 + "end\n";
-        template.setRule(rule );
-        Mockito.when(commonClassDao.getEntityItem(BRMSParamTemplate.class, "ruleName", "testPolicy")).thenReturn(template);
-        
+        template.setRule(rule);
+        Mockito.when(commonClassDao.getEntityItem(BRMSParamTemplate.class, "ruleName", "testPolicy"))
+                .thenReturn(template);
+
     }
-    
+
     @Test
     public void testClosedLoopCreateDictionary() throws IOException, SQLException, ServletException {
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
@@ -439,7 +560,10 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"pepName\":\"testRestAPI\",\"description\":\"testing create\",\"attributes\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\",\"number\":\"test\"}]}}";
+        json =
+                "{\"dictionaryFields\":{\"pepName\":\"testRestAPI\",\"description\":\"testing create\"," +
+                        "\"attributes\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\"," +
+                        "\"number\":\"test\"}]}}";
         dictionaryTestSetup(false, "PEPOptions", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
@@ -450,7 +574,9 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"varbindName\":\"testRestAPI\",\"varbindDescription\":\"testing\",\"varbindOID\":\"test\"}}";
+        json =
+                "{\"dictionaryFields\":{\"varbindName\":\"testRestAPI\",\"varbindDescription\":\"testing\"," +
+                        "\"varbindOID\":\"test\"}}";
         dictionaryTestSetup(false, "Varbind", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
@@ -530,7 +656,9 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"prefixListName\":\"testRestAPI\",\"prefixListValue\":\"127.0.0.1\",\"description\":\"testing\"}}";
+        json =
+                "{\"dictionaryFields\":{\"prefixListName\":\"testRestAPI\",\"prefixListValue\":\"127.0.0.1\"," +
+                        "\"description\":\"testing\"}}";
         dictionaryTestSetup(false, "PrefixList", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
@@ -541,7 +669,9 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"groupName\":\"testRestAPIgroup\",\"description\":\"testing\",\"attributes\":[{\"option\":\"testRestAPI\"}, {\"option\":\"testRestAPI\"}]}}";
+        json =
+                "{\"dictionaryFields\":{\"groupName\":\"testRestAPIgroup\",\"description\":\"testing\"," +
+                        "\"attributes\":[{\"option\":\"testRestAPI\"}, {\"option\":\"testRestAPI\"}]}}";
         dictionaryTestSetup(false, "AddressGroup", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
@@ -552,7 +682,9 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"groupName\":\"testRestAPIServiceGroup\",\"attributes\":[{\"option\":\"testRestAPIservice\"}]}}";
+        json =
+                "{\"dictionaryFields\":{\"groupName\":\"testRestAPIServiceGroup\"," +
+                        "\"attributes\":[{\"option\":\"testRestAPIservice\"}]}}";
         dictionaryTestSetup(false, "ServiceGroup", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
@@ -563,7 +695,11 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"serviceName\":\"testRestAPIservice\",\"serviceDescription\":\"test\",\"servicePorts\":\"8888\",\"transportProtocols\":[{\"option\":\"testRestAPI\"},{\"option\":\"testRestAPI1\"}],\"appProtocols\":[{\"option\":\"testRestAPI\"},{\"option\":\"testRestAPI1\"}]}}";
+        json =
+                "{\"dictionaryFields\":{\"serviceName\":\"testRestAPIservice\",\"serviceDescription\":\"test\"," +
+                        "\"servicePorts\":\"8888\",\"transportProtocols\":[{\"option\":\"testRestAPI\"}," +
+                        "{\"option\":\"testRestAPI1\"}],\"appProtocols\":[{\"option\":\"testRestAPI\"}," +
+                        "{\"option\":\"testRestAPI1\"}]}}";
         dictionaryTestSetup(false, "ServiceList", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
@@ -574,186 +710,218 @@ public class XACMLPAPTest {
         //
         httpServletRequest = Mockito.mock(HttpServletRequest.class);
         httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-        json = "{\"dictionaryFields\":{\"termName\":\"testRestAPIRule\",\"termDescription\":\"testing\",\"fromZoneDatas\":[{\"option\":\"testRestAPI\"}],\"toZoneDatas\":[{\"option\":\"testRestAPI1\"}],\"sourceListDatas\":[{\"option\":\"Group_testportal\"}],\"destinationListDatas\":[{\"option\":\"testRestAPI\"}],\"sourceServiceDatas\":[{\"option\":\"testRestAPIservice\"},{\"option\":\"testRestAPIservice1\"}],\"destinationServiceDatas\":[{\"option\":\"testRestAPIservice1\"},{\"option\":\"testportalservice2\"}],\"actionListDatas\":[{\"option\":\"testRestAPI\"}]}}";
+        json =
+                "{\"dictionaryFields\":{\"termName\":\"testRestAPIRule\",\"termDescription\":\"testing\"," +
+                        "\"fromZoneDatas\":[{\"option\":\"testRestAPI\"}]," +
+                        "\"toZoneDatas\":[{\"option\":\"testRestAPI1\"}]," +
+                        "\"sourceListDatas\":[{\"option\":\"Group_testportal\"}]," +
+                        "\"destinationListDatas\":[{\"option\":\"testRestAPI\"}]," +
+                        "\"sourceServiceDatas\":[{\"option\":\"testRestAPIservice\"}," +
+                        "{\"option\":\"testRestAPIservice1\"}]," +
+                        "\"destinationServiceDatas\":[{\"option\":\"testRestAPIservice1\"}," +
+                        "{\"option\":\"testportalservice2\"}],\"actionListDatas\":[{\"option\":\"testRestAPI\"}]}}";
         dictionaryTestSetup(false, "TermList", json);
         // send Request to PAP
         pap.service(httpServletRequest, httpServletResponse);
         // Verify 
         Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
     }
-    
+
     @Test
     public void testCommonCreateDictionary() throws IOException, SQLException, ServletException {
-       new DictionaryController(commonClassDao);
-       new ActionPolicyDictionaryController(commonClassDao);
-       new SafePolicyController(commonClassDao);
-       new DescriptiveDictionaryController(commonClassDao);
-       List<Object> object = new ArrayList<>();
+        new DictionaryController(commonClassDao);
+        new ActionPolicyDictionaryController(commonClassDao);
+        new SafePolicyController(commonClassDao);
+        new DescriptiveDictionaryController(commonClassDao);
+        List<Object> object = new ArrayList<>();
         object.add(new Category());
         when(commonClassDao.getDataById(Category.class, "shortName", "resource")).thenReturn(object);
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       String json = "{\"dictionaryFields\": {\"onapName\": \"testMMRestAPI1\",\"description\": \"testing update response message\"}}";
-       dictionaryTestSetup(false, "OnapName", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\": {\"xacmlId\": \"testMMRestAPI1\",\"datatypeBean\": {\"shortName\": \"string\"}, \"description\": \"testing update\",\"priority\": \"High\",\"userDataTypeValues\": [{\"attributeValues\": \"testAttr\"}, {\"attributeValues\": \"testAttr2\"}, {\"attributeValues\": \"testAttr3\"}]}}";
-       dictionaryTestSetup(false, "Attribute", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"attributeName\":\"TestMMrestAPI1\",\"type\":\"REST\",\"url\":\"testsomeurl.com\",\"method\":\"GET\",\"description\":\"test create\",\"body\":\"Testing Create\",\"headers\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\",\"number\":\"test\"}]}}";
-       dictionaryTestSetup(false, "Action", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"scopeName\":\"testMMRestAPI1\",\"description\":\"test\",\"attributes\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\",\"number\":\"test\"}]}}";
-       dictionaryTestSetup(false, "DescriptiveScope", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"riskName\":\"testMMrestAPI1\",\"description\":\"test\"}}";
-       dictionaryTestSetup(false, "RiskType", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"message\":\"test\",\"riskType\":\"testMMrestAPI1\"}}";
-       dictionaryTestSetup(false, "SafePolicyWarning", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        String json =
+                "{\"dictionaryFields\": {\"onapName\": \"testMMRestAPI1\",\"description\": \"testing update response " +
+                        "message\"}}";
+        dictionaryTestSetup(false, "OnapName", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json =
+                "{\"dictionaryFields\": {\"xacmlId\": \"testMMRestAPI1\",\"datatypeBean\": {\"shortName\": " +
+                        "\"string\"}, \"description\": \"testing update\",\"priority\": \"High\"," +
+                        "\"userDataTypeValues\": [{\"attributeValues\": \"testAttr\"}, {\"attributeValues\": " +
+                        "\"testAttr2\"}, {\"attributeValues\": \"testAttr3\"}]}}";
+        dictionaryTestSetup(false, "Attribute", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json =
+                "{\"dictionaryFields\":{\"attributeName\":\"TestMMrestAPI1\",\"type\":\"REST\",\"url\":\"testsomeurl" +
+                        ".com\",\"method\":\"GET\",\"description\":\"test create\",\"body\":\"Testing Create\"," +
+                        "\"headers\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\"," +
+                        "\"number\":\"test\"}]}}";
+        dictionaryTestSetup(false, "Action", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json =
+                "{\"dictionaryFields\":{\"scopeName\":\"testMMRestAPI1\",\"description\":\"test\"," +
+                        "\"attributes\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\"," +
+                        "\"number\":\"test\"}]}}";
+        dictionaryTestSetup(false, "DescriptiveScope", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"riskName\":\"testMMrestAPI1\",\"description\":\"test\"}}";
+        dictionaryTestSetup(false, "RiskType", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json =
+                "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"message\":\"test\"," +
+                        "\"riskType\":\"testMMrestAPI1\"}}";
+        dictionaryTestSetup(false, "SafePolicyWarning", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
     }
-    
+
     @Test
     public void testDecisionCreateDictionary() throws IOException, SQLException, ServletException {
-       new DecisionPolicyDictionaryController(commonClassDao);
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       String json = "{\"dictionaryFields\":{\"xacmlId\":\"testMMRestAPI1\",\"datatypeBean\":{\"shortName\":\"string\"},\"description\":\"test\",\"priority\":\"High\"}}";
-       dictionaryTestSetup(false, "Settings", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"bbid\":\"BB1\",\"workstep\":\"1\",\"treatments\":\"Manual Handling,Abort,Retry\"}}";
-       dictionaryTestSetup(false, "RainyDayTreatments", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+        new DecisionPolicyDictionaryController(commonClassDao);
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        String json =
+                "{\"dictionaryFields\":{\"xacmlId\":\"testMMRestAPI1\",\"datatypeBean\":{\"shortName\":\"string\"}," +
+                        "\"description\":\"test\",\"priority\":\"High\"}}";
+        dictionaryTestSetup(false, "Settings", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json =
+                "{\"dictionaryFields\":{\"bbid\":\"BB1\",\"workstep\":\"1\",\"treatments\":\"Manual Handling,Abort," +
+                        "Retry\"}}";
+        dictionaryTestSetup(false, "RainyDayTreatments", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
     }
-    
+
     @Test
     public void testMSCreateDictionary() throws IOException, SQLException, ServletException {
-       new MicroServiceDictionaryController(commonClassDao);
-       new PolicyScopeDictionaryController(commonClassDao);
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       String json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"descriptionValue\":\"test\"}}";
-       dictionaryTestSetup(false, "MicroServiceLocation", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"descriptionValue\":\"test\"}}";
-       dictionaryTestSetup(false, "MicroServiceConfigName", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"description\":\"test\"}}";
-       dictionaryTestSetup(false, "DCAEUUID", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
-       dictionaryTestSetup(false, "PolicyScopeService", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
-       dictionaryTestSetup(false, "PolicyScopeResource", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
-       dictionaryTestSetup(false, "PolicyScopeType", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
-       dictionaryTestSetup(false, "PolicyScopeClosedLoop", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
-       
-       httpServletRequest = Mockito.mock(HttpServletRequest.class);
-       httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
-       json = "{\"dictionaryFields\":{\"groupName\":\"testMMrestAPI1\",\"description\":\"testing\"},\"groupPolicyScopeListData1\":{\"resource\":\"ANY\",\"type\":\"ANY\",\"service\":\"ANY\",\"closedloop\":\"ANY\"}}";
-       dictionaryTestSetup(false, "GroupPolicyScopeList", json);
-       // send Request to PAP
-       pap.service(httpServletRequest, httpServletResponse);
-       // Verify 
-       Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+        new MicroServiceDictionaryController(commonClassDao);
+        new PolicyScopeDictionaryController(commonClassDao);
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        String json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"descriptionValue\":\"test\"}}";
+        dictionaryTestSetup(false, "MicroServiceLocation", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"descriptionValue\":\"test\"}}";
+        dictionaryTestSetup(false, "MicroServiceConfigName", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"description\":\"test\"}}";
+        dictionaryTestSetup(false, "DCAEUUID", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
+        dictionaryTestSetup(false, "PolicyScopeService", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
+        dictionaryTestSetup(false, "PolicyScopeResource", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
+        dictionaryTestSetup(false, "PolicyScopeType", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}";
+        dictionaryTestSetup(false, "PolicyScopeClosedLoop", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
+
+        httpServletRequest = Mockito.mock(HttpServletRequest.class);
+        httpServletResponse = Mockito.mock(MockHttpServletResponse.class);
+        json =
+                "{\"dictionaryFields\":{\"groupName\":\"testMMrestAPI1\",\"description\":\"testing\"}," +
+                        "\"groupPolicyScopeListData1\":{\"resource\":\"ANY\",\"type\":\"ANY\",\"service\":\"ANY\"," +
+                        "\"closedloop\":\"ANY\"}}";
+        dictionaryTestSetup(false, "GroupPolicyScopeList", json);
+        // send Request to PAP
+        pap.service(httpServletRequest, httpServletResponse);
+        // Verify
+        Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK);
     }
-    
-    private void dictionaryTestSetup(Boolean updateFlag, String dictionaryType, String json) throws IOException, SQLException {
+
+    private void dictionaryTestSetup(Boolean updateFlag, String dictionaryType, String json)
+            throws IOException, SQLException {
         Mockito.when(httpServletRequest.getHeader(ENVIRONMENT_HEADER)).thenReturn("DEVL");
         Mockito.when(httpServletRequest.getHeader("ClientScope")).thenReturn("dictionaryItem");
         Mockito.when(httpServletRequest.getMethod()).thenReturn("PUT");
         Mockito.when(httpServletRequest.getParameter("apiflag")).thenReturn("api");
-        if(updateFlag){
+        if (updateFlag) {
             Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("update");
-        }else{
+        } else {
             Mockito.when(httpServletRequest.getParameter("operation")).thenReturn("create");
         }
         Mockito.when(httpServletRequest.getParameter("dictionaryType")).thenReturn(dictionaryType);
@@ -789,26 +957,26 @@ public class XACMLPAPTest {
     }
 
     @Test
-    public void getDictionary() throws ServletException, IOException{
-       String[] dictionarys = new String[]{"Attribute", "OnapName", "Action", "BRMSParamTemplate","VSCLAction"
-                       ,"VNFType","PEPOptions","Varbind","Service","Site", "Settings", "RainyDayTreatments",
-                       "DescriptiveScope", "ActionList", "ProtocolList", "Zone", "SecurityZone",
-                       "PrefixList", "AddressGroup", "ServiceGroup", "ServiceList", "TermList",
-                       "MicroServiceLocation", "MicroServiceConfigName", "DCAEUUID", "MicroServiceModels",
-                       "PolicyScopeService", "PolicyScopeResource", "PolicyScopeType", "PolicyScopeClosedLoop",
-                       "GroupPolicyScopeList", "RiskType", "SafePolicyWarning", "MicroServiceDictionary"};
-       for(String dictionary : dictionarys){
-               httpServletRequest = Mockito.mock(HttpServletRequest.class);
-               httpServletResponse = new MockHttpServletResponse();
-               Mockito.when(httpServletRequest.getHeader(ENVIRONMENT_HEADER)).thenReturn("DEVL");
-               Mockito.when(httpServletRequest.getMethod()).thenReturn("GET");
-               Mockito.when(httpServletRequest.getParameter("apiflag")).thenReturn("api");
-               Mockito.when(httpServletRequest.getParameter("dictionaryType")).thenReturn(dictionary);
-               pap.service(httpServletRequest, httpServletResponse);
-               assertTrue(HttpServletResponse.SC_OK == httpServletResponse.getStatus());
-       }
+    public void getDictionary() throws ServletException, IOException {
+        String[] dictionarys = new String[]{"Attribute", "OnapName", "Action", "BRMSParamTemplate", "VSCLAction"
+                , "VNFType", "PEPOptions", "Varbind", "Service", "Site", "Settings", "RainyDayTreatments",
+                "DescriptiveScope", "ActionList", "ProtocolList", "Zone", "SecurityZone",
+                "PrefixList", "AddressGroup", "ServiceGroup", "ServiceList", "TermList",
+                "MicroServiceLocation", "MicroServiceConfigName", "DCAEUUID", "MicroServiceModels",
+                "PolicyScopeService", "PolicyScopeResource", "PolicyScopeType", "PolicyScopeClosedLoop",
+                "GroupPolicyScopeList", "RiskType", "SafePolicyWarning", "MicroServiceDictionary"};
+        for (String dictionary : dictionarys) {
+            httpServletRequest = Mockito.mock(HttpServletRequest.class);
+            httpServletResponse = new MockHttpServletResponse();
+            Mockito.when(httpServletRequest.getHeader(ENVIRONMENT_HEADER)).thenReturn("DEVL");
+            Mockito.when(httpServletRequest.getMethod()).thenReturn("GET");
+            Mockito.when(httpServletRequest.getParameter("apiflag")).thenReturn("api");
+            Mockito.when(httpServletRequest.getParameter("dictionaryType")).thenReturn(dictionary);
+            pap.service(httpServletRequest, httpServletResponse);
+            assertTrue(HttpServletResponse.SC_OK == httpServletResponse.getStatus());
+        }
     }
-    
+
     @Test
     public void testDummy() throws ServletException, IOException {
 
@@ -828,10 +996,10 @@ public class XACMLPAPTest {
             fail();
         }
     }
-    
+
     @After
-    public void destroy(){
-        if(sessionFactory!=null){
+    public void destroy() {
+        if (sessionFactory != null) {
             sessionFactory.close();
         }
         pap.destroy();