Return Input list from getEntity API 10/95310/1
authorShabanov, Marina (ms656r) <ms656r@intl.att.com>
Tue, 10 Sep 2019 07:17:30 +0000 (10:17 +0300)
committerShabanov, Marina (ms656r) <ms656r@intl.att.com>
Tue, 10 Sep 2019 07:17:30 +0000 (10:17 +0300)
Issue-ID: SDC-2559
Signed-off-by: Shabanov, Marina (ms656r) <ms656r@intl.att.com>
Change-Id: I104b83748a1b789a9fe749a38a1b940b00f52e3c

src/main/java/org/onap/sdc/tosca/parser/api/IEntityDetails.java
src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java
src/main/java/org/onap/sdc/tosca/parser/elements/NodeTemplateEntityDetails.java
src/test/java/org/onap/sdc/impl/GetEntityTest.java

index ac160e0..b69a8b3 100644 (file)
@@ -25,6 +25,7 @@ import org.onap.sdc.toscaparser.api.CapabilityAssignment;
 import org.onap.sdc.toscaparser.api.Property;
 import org.onap.sdc.toscaparser.api.RequirementAssignment;
 import org.onap.sdc.toscaparser.api.elements.Metadata;
+import org.onap.sdc.toscaparser.api.parameters.Input;
 
 import java.util.List;
 import java.util.Map;
@@ -104,4 +105,9 @@ public interface IEntityDetails {
      * Retrieves list of policy target entity instances (groups or node templates)
      */
     List<IEntityDetails> getTargetEntities();
+
+    /**
+     * Retrieves list of inputs
+     */
+    List<Input> getInputs();
 }
index 57559c6..6054ac9 100644 (file)
@@ -26,6 +26,7 @@ import org.onap.sdc.toscaparser.api.CapabilityAssignment;
 import org.onap.sdc.toscaparser.api.EntityTemplate;
 import org.onap.sdc.toscaparser.api.Property;
 import org.onap.sdc.toscaparser.api.RequirementAssignment;
+import org.onap.sdc.toscaparser.api.parameters.Input;
 
 import java.util.Collections;
 import java.util.List;
@@ -47,7 +48,7 @@ public abstract class EntityDetails implements IEntityDetails {
         return entityTemplate.getName();
     }
 
-    EntityTemplate getEntityTemplate() {
+    public EntityTemplate getEntityTemplate() {
         return entityTemplate;
     }
 
@@ -109,7 +110,13 @@ public abstract class EntityDetails implements IEntityDetails {
     }
 
     @Override
-    public List<String> getMembers() { return Collections.emptyList(); }
+    public List<String> getMembers()
+    { return Collections.emptyList(); }
+
+    @Override
+    public List<Input> getInputs(){
+        return Collections.emptyList();
+    }
 
 
 
index 9893856..3b7aa99 100644 (file)
@@ -24,6 +24,9 @@ import org.onap.sdc.tosca.parser.enums.EntityTemplateType;
 import org.onap.sdc.toscaparser.api.EntityTemplate;
 import org.onap.sdc.toscaparser.api.NodeTemplate;
 import org.onap.sdc.toscaparser.api.elements.Metadata;
+import org.onap.sdc.toscaparser.api.parameters.Input;
+
+import java.util.List;
 
 public class NodeTemplateEntityDetails extends EntityDetails {
 
@@ -43,4 +46,12 @@ public class NodeTemplateEntityDetails extends EntityDetails {
     public Metadata getMetadata() {
         return nodeTemplate.getMetaData();
     }
+
+    @Override
+    public List<Input> getInputs(){
+        if (nodeTemplate.getSubMappingToscaTemplate()!= null) {
+            return nodeTemplate.getSubMappingToscaTemplate().getInputs();
+        }
+        return super.getInputs();
+    }
 }
index f1fcf2f..e741cea 100644 (file)
@@ -24,6 +24,7 @@ import org.junit.BeforeClass;
 import org.junit.Test;
 import org.onap.sdc.tosca.parser.api.IEntityDetails;
 import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
+import org.onap.sdc.tosca.parser.elements.EntityDetails;
 import org.onap.sdc.tosca.parser.elements.queries.EntityQuery;
 import org.onap.sdc.tosca.parser.elements.queries.TopologyTemplateQuery;
 import org.onap.sdc.tosca.parser.enums.EntityTemplateType;
@@ -33,6 +34,7 @@ import org.onap.sdc.tosca.parser.impl.SdcPropertyNames;
 import org.onap.sdc.tosca.parser.impl.SdcToscaParserFactory;
 import org.onap.sdc.toscaparser.api.CapabilityAssignment;
 import org.onap.sdc.toscaparser.api.Property;
+import org.onap.sdc.toscaparser.api.parameters.Input;
 
 import java.net.URL;
 import java.util.List;
@@ -89,6 +91,7 @@ public class GetEntityTest {
         assertEquals(18, entities.get(0).getProperties().size());
         assertEquals(1, entities.get(0).getRequirements().size());
         assertEquals(13, entities.get(0).getCapabilities().size());
+        assertEquals(0, entities.get(0).getInputs().size());
         List<CapabilityAssignment> capAssignments = entities.get(0).getCapabilities();
         CapabilityAssignment capabilityAssignment = capAssignments.stream().filter(p -> p.getName().equals("network.outgoing.packets.rate")).findAny().orElse(null);
         assertEquals("org.openecomp.capabilities.metric.Ceilometer", capabilityAssignment.getDefinition().getType());
@@ -166,6 +169,7 @@ public class GetEntityTest {
         assertEquals(4, entities.size());
         assertTrue(entities.get(0).getRequirements().isEmpty());
         assertTrue(entities.get(1).getCapabilities().isEmpty());
+        assertEquals(0, entities.get(0).getInputs().size());
         assertTrue(entities.get(0).getPath().isEmpty() && entities.get(1).getPath().isEmpty() &&
                 entities.get(2).getPath().isEmpty() && entities.get(3).getPath().isEmpty());
     }
@@ -257,6 +261,7 @@ public class GetEntityTest {
         assertEquals("org.openecomp.policies.External", entities.get(0).getToscaType());
         assertTrue(entities.get(0).getMembers().isEmpty());
         assertEquals("jenny vTSBC vlan VNF 0", entities.get(0).getPath());
+        assertEquals(0, entities.get(0).getInputs().size());
     }
 
     @Test
@@ -398,4 +403,15 @@ public class GetEntityTest {
         assertEquals("false", valueList.get(0));
     }
 
+
+    @Test
+    public void getServiceInputs() {
+        EntityQuery entityQuery = EntityQuery.newBuilder(EntityTemplateType.NODE_TEMPLATE)
+                .build();
+        TopologyTemplateQuery topologyTemplateQuery = TopologyTemplateQuery.newBuilder(SdcTypes.SERVICE)
+                .build();
+
+        List<IEntityDetails> entities = helper.getEntity(entityQuery, topologyTemplateQuery, false);
+        assertEquals(163, entities.get(0).getInputs().size());
+    }
 }