Implement serialization/deserialization for TOSCA concepts
[policy/models.git] / models-tosca / src / main / java / org / onap / policy / models / tosca / simple / serialization / ToscaTopologyTemplateJsonAdapter.java
index a2974fd..d302b7e 100644 (file)
@@ -47,6 +47,7 @@ public class ToscaTopologyTemplateJsonAdapter
         implements JsonSerializer<ToscaTopologyTemplate>, JsonDeserializer<ToscaTopologyTemplate> {
 
     private static final String POLICIES = "policies";
+    private static final String DESCRIPTION = "description";
 
     @Override
     public ToscaTopologyTemplate deserialize(@NonNull final JsonElement toplogyTemplateElement,
@@ -59,6 +60,10 @@ public class ToscaTopologyTemplateJsonAdapter
         final PfReferenceKey topologyTemplateKey = new PfReferenceKey(new PfConceptKey(), "IncomingTopologyTemplate");
         final ToscaTopologyTemplate topologyTemplate = new ToscaTopologyTemplate(topologyTemplateKey);
 
+        if (topologyTemplateJsonObject.has(DESCRIPTION)) {
+            topologyTemplate.setDescription(topologyTemplateJsonObject.get(DESCRIPTION).getAsString());
+        }
+
         if (topologyTemplateJsonObject.has(POLICIES)) {
             topologyTemplate.setPolicies(new ToscaPoliciesJsonAdapter()
                     .deserialize(topologyTemplateJsonObject.get(POLICIES), ToscaPolicies.class, context));
@@ -76,6 +81,11 @@ public class ToscaTopologyTemplateJsonAdapter
                 .serialize(topologyTemplate.getPolicies(), type, context);
 
         topologyTemplateJsonObject.add(POLICIES, policiesJsonElement);
+
+        if (topologyTemplate.getDescription() != null) {
+            topologyTemplateJsonObject.addProperty(DESCRIPTION, topologyTemplate.getDescription());
+        }
+
         return topologyTemplateJsonObject;
     }
 }