Add 'id' property to service template.
authorYuanHu <yuan.hu1@zte.com.cn>
Thu, 27 Oct 2016 01:55:42 +0000 (09:55 +0800)
committerYuanHu <yuan.hu1@zte.com.cn>
Thu, 27 Oct 2016 01:57:38 +0000 (09:57 +0800)
Change-Id: I03a861f3b30efec1b79156f271dbadc00a10ffc9
Issue-id: TOSCA-148
Signed-off-by: YuanHu <yuan.hu1@zte.com.cn>
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/common/TemplateDataHelper.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/entity/ServiceTemplate.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/parser/AbstractModelParser.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/parser/yaml/aria/AriaModelParser.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/parser/yaml/zte/ToscaYamlModelParser.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/wrapper/ServiceTemplateWrapper.java
catalog-core/catalog-mgr/src/test/java/org/openo/commontosca/catalog/wrapper/ServiceTemplateWrapperTest.java

index b03946c..6c591f1 100644 (file)
@@ -146,7 +146,7 @@ public class TemplateDataHelper {
         ToolUtil.fromJson(std.getOperations(), ServiceTemplateOperation[].class);
     String downloadUri = buildSTDownloadUri(std.getCsarId(), std.getDownloadUri());
     
-    return new ServiceTemplate(std.getServiceTemplateId(), std.getTemplateName(), std.getVendor(),
+    return new ServiceTemplate(std.getServiceTemplateId(), std.getTemplateName(), std.getTemplateName(), std.getVendor(),
         std.getVersion(), std.getCsarId(), std.getType(), downloadUri,
         parameters.getInputs(), parameters.getOutputs(), operations);
   }
index 5b777f9..fb55654 100644 (file)
@@ -219,8 +219,8 @@ public abstract class AbstractModelParser {
    * @return
    */
   public String parserServiceTemplateName(Map<String, String> metadata) {
-    if (metadata.containsKey("name")) {
-      return metadata.get("name");
+    if (metadata.containsKey("id")) {
+      return metadata.get("id");
     }
     return metadata.get("template_name");
   }
index bfebe15..fd2b350 100644 (file)
@@ -243,6 +243,7 @@ public class AriaModelParser extends AbstractModelParser {
     ServiceTemplate st = new ServiceTemplate();
 
     st.setServiceTemplateId(ToolUtil.generateId());
+    st.setId(parserServiceTemplateName(result.getInstance().getMetadata()));  // TODO
     st.setTemplateName(parserServiceTemplateName(result.getInstance().getMetadata()));
     st.setVendor(parserServiceTemplateVendor(result.getInstance().getMetadata()));
     st.setVersion(parserServiceTemplateVersion(result.getInstance().getMetadata()));
index 7f57075..4a50b02 100644 (file)
@@ -50,7 +50,7 @@ public class ToscaYamlModelParser extends AbstractModelParser {
     
     // service template
     ServiceTemplate st = parseServiceTemplate(
-        packageId, result, parseServiceTemplateFileName(packageId, fileLocation));
+        result, packageId, parseServiceTemplateFileName(packageId, fileLocation));
     // workflow
     ServiceTemplateOperation[] operations = parseOperations(fileLocation);
     st.setOperations(operations);
@@ -103,11 +103,12 @@ public class ToscaYamlModelParser extends AbstractModelParser {
         stm.getCapabilityList());
   }
 
-  private ServiceTemplate parseServiceTemplate(String packageId, ParseYamlResult result,
+  private ServiceTemplate parseServiceTemplate(ParseYamlResult result, String packageId,
       String stDownloadUri) {
     ServiceTemplate st = new ServiceTemplate();
 
     st.setServiceTemplateId(ToolUtil.generateId());
+    st.setId(parserServiceTemplateName(result.getMetadata()));  // TODO
     st.setTemplateName(parserServiceTemplateName(result.getMetadata()));
     st.setVendor(parserServiceTemplateVendor(result.getMetadata()));
     st.setVersion(parserServiceTemplateVersion(result.getMetadata()));
index c381c8a..e9cec9d 100644 (file)
@@ -112,14 +112,23 @@ public class ServiceTemplateWrapper {
       SubstitutionMapping stm = getSubstitutionMappingsByNodeTypeId(nodeTypeIds[i]);
       if (stm == null) {
         sts[i] = null;
-      } else {
-        sts[i] = getServiceTemplateById(stm.getServiceTemplateId());
+        continue;
       }
+      sts[i] = getServiceTemplate(stm, nodeTypeIds[i]);
     }
 
     return sts;
   }
 
+  private ServiceTemplate getServiceTemplate(SubstitutionMapping stm, String nodeTypeId) {
+    try {
+       return getServiceTemplateById(stm.getServiceTemplateId());
+    } catch (CatalogResourceException e) {
+      logger.warn("Get Nesting ServiceTemplate Failed. NodeTypeIds = " + nodeTypeId, e);
+      return null;
+    }
+  }
+
   /**
    * get substitution mappings by nodeTpe id.
    * @param nodeTypeId nodeType id
index 7087b22..8a9bf74 100644 (file)
@@ -370,6 +370,7 @@ public class ServiceTemplateWrapperTest {
     OutputParameter[] outputs = getOutputs();
     serviceTemplate.setOutputs(outputs);
     serviceTemplate.setServiceTemplateId("serviceTemplateId");
+    serviceTemplate.setId("templateName");
     serviceTemplate.setTemplateName("templateName");
     serviceTemplate.setType("NS");
     serviceTemplate.setVendor("ZTE");