diff options
Diffstat (limited to 'src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java')
-rw-r--r-- | src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java | 62 |
1 files changed, 45 insertions, 17 deletions
diff --git a/src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java b/src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java index 91c7144..2567700 100644 --- a/src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java +++ b/src/main/java/org/onap/sdc/tosca/parser/elements/EntityDetails.java @@ -2,23 +2,24 @@ package org.onap.sdc.tosca.parser.elements; import org.onap.sdc.tosca.parser.api.IEntityDetails; import org.onap.sdc.tosca.parser.enums.EntityTemplateType; +import org.onap.sdc.toscaparser.api.CapabilityAssignment; import org.onap.sdc.toscaparser.api.EntityTemplate; -import org.onap.sdc.toscaparser.api.NodeTemplate; import org.onap.sdc.toscaparser.api.Property; +import org.onap.sdc.toscaparser.api.RequirementAssignment; -import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; public abstract class EntityDetails implements IEntityDetails { private final EntityTemplate entityTemplate; + private final IEntityDetails parentNodeTemplate; - private final IEntityDetails parentNode; - - EntityDetails(EntityTemplate entityTemplate, NodeTemplate parentNode) { + EntityDetails(EntityTemplate entityTemplate) { this.entityTemplate = entityTemplate; - this.parentNode = EntityDetailsFactory.createEntityDetails(EntityTemplateType.NODE_TEMPLATE, parentNode, null); + this.parentNodeTemplate = EntityDetailsFactory.createEntityDetails(EntityTemplateType.NODE_TEMPLATE, entityTemplate.getParentNodeTemplate()); } @Override @@ -36,27 +37,54 @@ public abstract class EntityDetails implements IEntityDetails { } @Override - public List<Property> getPropertyList() { - return entityTemplate.getPropertiesObjects(); + public List<IEntityDetails> getMemberNodes() { + return Collections.emptyList(); } @Override - public List<IEntityDetails> getMemberNodes() { - List<IEntityDetails> ntList = new ArrayList<>(); - ntList.add(getParent()); - return ntList; + public IEntityDetails getParent() { + return parentNodeTemplate; } @Override - public IEntityDetails getParent() { - //todo - update after adding parent to the EntityTemplate class - return parentNode; + public Map<String, RequirementAssignment> getRequirements() { + return entityTemplate.getRequirements() + .getAll() + .stream() + .collect(Collectors.toMap(RequirementAssignment::getName, ra->ra)); + } + + @Override + public Map<String, CapabilityAssignment> getCapabilities() { + return entityTemplate.getCapabilities() + .getAll() + .stream() + .collect(Collectors.toMap(CapabilityAssignment::getName, ca->ca)); + } + + @Override + public List<String> getTargets() { + return Collections.emptyList(); + } + + @Override + public List<IEntityDetails> getTargetNodes() { + return Collections.emptyList(); } @Override public String getPath() { - //todo - update after adding parent to the EntityTemplate class - return "jenny vTSBC vlan VNF 0#abstract_ssc#ssc_ssc_avpn_port_0"; + StringBuilder pathBld = new StringBuilder(""); + EntityTemplate currentEntityParent = entityTemplate.getParentNodeTemplate(); + + while (currentEntityParent != null) { + if (pathBld.length() != 0) { + pathBld.insert(0,"#"); + } + pathBld.insert(0, currentEntityParent.getName()); + currentEntityParent = currentEntityParent.getParentNodeTemplate(); + } + return pathBld.toString(); } |