Apex PDP change to add PDP group 29/98729/1
authora.sreekumar <ajith.sreekumar@est.tech>
Tue, 19 Nov 2019 17:00:59 +0000 (17:00 +0000)
committera.sreekumar <ajith.sreekumar@est.tech>
Thu, 21 Nov 2019 17:35:04 +0000 (17:35 +0000)
Change-Id: I6cff921bdc65fe505c0b5e7dba94a6cf9aa3ba91
Issue-ID: POLICY-2234
Signed-off-by: a.sreekumar <ajith.sreekumar@est.tech>
services/services-onappf/src/main/java/org/onap/policy/apex/services/onappf/handler/PdpMessageHandler.java
services/services-onappf/src/main/java/org/onap/policy/apex/services/onappf/parameters/PdpStatusParameters.java
services/services-onappf/src/main/resources/config/OnapPfConfig.json
services/services-onappf/src/test/java/org/onap/policy/apex/services/onappf/parameters/CommonTestData.java
services/services-onappf/src/test/java/org/onap/policy/apex/services/onappf/parameters/TestPdpStatusParameters.java
services/services-onappf/src/test/resources/ApexStarterConfigParameters.json
services/services-onappf/src/test/resources/ApexStarterConfigParametersNoop.json
services/services-onappf/src/test/resources/ApexStarterConfigParameters_sim.json
services/services-onappf/src/test/resources/TestConfigParameters.json

index b72ef80..b1f38d6 100644 (file)
@@ -22,7 +22,6 @@ package org.onap.policy.apex.services.onappf.handler;
 
 import java.util.ArrayList;
 import java.util.List;
-
 import org.onap.policy.apex.services.onappf.ApexStarterConstants;
 import org.onap.policy.apex.services.onappf.parameters.PdpStatusParameters;
 import org.onap.policy.apex.services.onappf.parameters.ToscaPolicyTypeIdentifierParameters;
@@ -54,6 +53,7 @@ public class PdpMessageHandler {
     public PdpStatus createPdpStatusFromParameters(final String instanceId,
             final PdpStatusParameters pdpStatusParameters) {
         final PdpStatus pdpStatus = new PdpStatus();
+        pdpStatus.setPdpGroup(pdpStatusParameters.getPdpGroup());
         pdpStatus.setPdpType(pdpStatusParameters.getPdpType());
         pdpStatus.setState(PdpState.PASSIVE);
         pdpStatus.setHealthy(PdpHealthStatus.HEALTHY);
index 962a98e..d4c6137 100644 (file)
@@ -21,9 +21,7 @@
 package org.onap.policy.apex.services.onappf.parameters;
 
 import java.util.List;
-
 import lombok.Getter;
-
 import org.onap.policy.common.parameters.ParameterGroupImpl;
 import org.onap.policy.common.parameters.annotations.Min;
 import org.onap.policy.common.parameters.annotations.NotBlank;
@@ -45,6 +43,7 @@ public class PdpStatusParameters extends ParameterGroupImpl {
     private String pdpType;
     private String description;
     private List<ToscaPolicyTypeIdentifierParameters> supportedPolicyTypes;
+    private String pdpGroup;
 
     public PdpStatusParameters() {
         super(PdpStatusParameters.class.getSimpleName());
index 95e28a3..76595a6 100644 (file)
@@ -8,6 +8,7 @@
         "https": true
     },
     "pdpStatusParameters":{
+        "pdpGroup": "defaultGroup",
         "timeIntervalMs": 120000,
         "pdpType":"apex",
         "description":"Pdp Heartbeat",
index c8d61f5..b26a1f1 100644 (file)
@@ -42,6 +42,7 @@ public class CommonTestData {
     public static final String PDP_NAME = "apex-pdp";
     public static final String VERSION = "0.0.1";
     public static final String PDP_TYPE = "apex";
+    public static final String PDP_GROUP = "defaultGroup";
     public static final String DESCRIPTION = "Pdp status for HealthCheck";
     public static final String POLICY_NAME = "onap.controllloop.operational.apex.BBS";
     public static final String POLICY_VERSION = "0.0.1";
@@ -145,6 +146,7 @@ public class CommonTestData {
     public Map<String, Object> getPdpStatusParametersMap(final boolean isEmpty) {
         final Map<String, Object> map = new TreeMap<>();
         if (!isEmpty) {
+            map.put("pdpGroup", PDP_GROUP);
             map.put("timeIntervalMs", TIME_INTERVAL);
             map.put("pdpName", PDP_NAME);
             map.put("version", VERSION);
index e8a3f7e..95cf350 100644 (file)
 package org.onap.policy.apex.services.onappf.parameters;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
+import java.util.Map;
 import org.junit.Test;
-import org.onap.policy.apex.services.onappf.parameters.PdpStatusParameters;
 import org.onap.policy.common.parameters.GroupValidationResult;
 
 /**
@@ -46,6 +47,7 @@ public class TestPdpStatusParameters {
         assertEquals(CommonTestData.PDP_TYPE, pdpStatusParameters.getPdpType());
         assertEquals(CommonTestData.DESCRIPTION, pdpStatusParameters.getDescription());
         assertEquals(CommonTestData.SUPPORTED_POLICY_TYPES, pdpStatusParameters.getSupportedPolicyTypes());
+        assertEquals(CommonTestData.PDP_GROUP, pdpStatusParameters.getPdpGroup());
     }
 
     @Test
@@ -56,4 +58,28 @@ public class TestPdpStatusParameters {
         assertNull(result.getResult());
         assertTrue(result.isValid());
     }
+
+    @Test
+    public void testPdpStatusParameters_nullPdpGroup() throws Exception {
+        Map<String, Object> pdpStatusParametersMap = testData.getPdpStatusParametersMap(false);
+        pdpStatusParametersMap.remove("pdpGroup");
+        final PdpStatusParameters pdpStatusParameters =
+                testData.toObject(pdpStatusParametersMap, PdpStatusParameters.class);
+        final GroupValidationResult validationResult = pdpStatusParameters.validate();
+        assertFalse(validationResult.isValid());
+        assertTrue(validationResult.getResult()
+            .contains("field \"pdpGroup\" type \"java.lang.String\" value \"null\" INVALID"));
+    }
+
+    @Test
+    public void testPdpStatusParameters_emptyPdpGroup() throws Exception {
+        Map<String, Object> pdpStatusParametersMap = testData.getPdpStatusParametersMap(false);
+        pdpStatusParametersMap.put("pdpGroup", "");
+        final PdpStatusParameters pdpStatusParameters =
+                testData.toObject(pdpStatusParametersMap, PdpStatusParameters.class);
+        final GroupValidationResult validationResult = pdpStatusParameters.validate();
+        assertFalse(validationResult.isValid());
+        assertTrue(validationResult.getResult()
+            .contains("field \"pdpGroup\" type \"java.lang.String\" value \"\" INVALID, must be a non-blank string"));
+    }
 }
index 2023685..4e58200 100644 (file)
@@ -8,6 +8,7 @@
         "https": true
     },
     "pdpStatusParameters":{
+        "pdpGroup": "defaultGroup",
         "timeIntervalMs": 120000,
         "pdpType":"apex",
         "description":"Pdp Heartbeat",
index bce20da..061237f 100644 (file)
@@ -8,6 +8,7 @@
         "https": true
     },
     "pdpStatusParameters":{
+        "pdpGroup": "defaultGroup",
         "timeIntervalMs": 120000,
         "pdpType":"apex",
         "description":"Pdp Heartbeat",
index c26a0a6..67e5bcb 100644 (file)
@@ -8,6 +8,7 @@
         "https": true
     },
     "pdpStatusParameters":{
+        "pdpGroup": "defaultGroup",
         "timeIntervalMs": 120000,
         "pdpType":"apex",
         "description":"Pdp Heartbeat",
index 2023685..4e58200 100644 (file)
@@ -8,6 +8,7 @@
         "https": true
     },
     "pdpStatusParameters":{
+        "pdpGroup": "defaultGroup",
         "timeIntervalMs": 120000,
         "pdpType":"apex",
         "description":"Pdp Heartbeat",