aboutsummaryrefslogtreecommitdiffstats
path: root/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java
diff options
context:
space:
mode:
authorMichael Lando <ml636r@att.com>2017-03-29 10:54:26 +0000
committerGerrit Code Review <gerrit@onap.org>2017-03-29 10:54:26 +0000
commit249698f5ece210994f8a3a7529653c67fc577ff4 (patch)
tree63052e82b5dc63e0a88988191ad7ecc9fbd79de2 /jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java
parentb4c0ae1af144b665c5cde3a3f44cee953e66683a (diff)
parente2cc2530fc6d54ebc975c01a4ff887ce12f0a736 (diff)
Merge "[SDC-6] sdc-distribution-client 1707 rebasing"
Diffstat (limited to 'jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java')
-rw-r--r--jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java70
1 files changed, 70 insertions, 0 deletions
diff --git a/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java
new file mode 100644
index 0000000..a6f9868
--- /dev/null
+++ b/jython-tosca-parser/src/main/java/org/openecomp/sdc/toscaparser/api/EntityTemplate.java
@@ -0,0 +1,70 @@
+package org.openecomp.sdc.toscaparser.api;
+
+import static com.google.common.collect.ImmutableList.toImmutableList;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+import org.openecomp.sdc.toscaparser.api.elements.StatefulEntityType;
+import org.openecomp.sdc.toscaparser.jython.JyEntityTemplate;
+
+import com.google.common.base.MoreObjects;
+import com.google.common.base.MoreObjects.ToStringHelper;
+
+public abstract class EntityTemplate {
+
+ private final JyEntityTemplate jyEntityTemplate;
+ private final StatefulEntityType statefulEntityType;
+
+ public EntityTemplate(JyEntityTemplate jyEntityTemplate) {
+ this.jyEntityTemplate = Objects.requireNonNull(jyEntityTemplate);
+ StatefulEntityTypeFactory statefulEntityTypeFactory = new StatefulEntityTypeFactory();
+ statefulEntityType = statefulEntityTypeFactory.create(jyEntityTemplate.getJyTypeDefinition());
+ }
+
+ public String getName() {
+ return jyEntityTemplate.getJyName();
+ }
+
+ public String getDescription() {
+ return jyEntityTemplate.getJyDescription();
+ }
+
+ public StatefulEntityType getTypeDefinition() {
+ return statefulEntityType;
+ }
+
+ public List<Property> getProperties() {
+ return jyEntityTemplate.getJyProperties()
+ .stream()
+ .map(Property::new)
+ .collect(toImmutableList());
+ }
+
+ public List<Capability> getCapabilities() {
+ return jyEntityTemplate.getJyCapabilities()
+ .stream()
+ .map(Capability::new)
+ .collect(toImmutableList());
+ }
+
+ public List<Map<String, Map<String, Object>>> getRequirements() {
+ return jyEntityTemplate.getJyRequirements();
+ }
+
+ protected ToStringHelper toStringHelper() {
+ return MoreObjects.toStringHelper(this)
+ .add("name", getName())
+ .add("description", getDescription())
+ .add("typeDefinition", getTypeDefinition())
+ .add("properties", getProperties())
+ .add("capabilities", getCapabilities())
+ .add("requirements", getRequirements());
+ }
+
+ @Override
+ public String toString() {
+ return toStringHelper().toString();
+ }
+}