Directly use the response of aria parser as RawData,
authorYuanHu <yuan.hu1@zte.com.cn>
Wed, 26 Oct 2016 08:23:24 +0000 (16:23 +0800)
committerYuanHu <yuan.hu1@zte.com.cn>
Wed, 26 Oct 2016 08:24:32 +0000 (16:24 +0800)
instead of serializing from memory object.

Change-Id: I9939987715afae95e4fbe1fb37e118f310b652b1
Issue-id: OCS-132
Signed-off-by: YuanHu <yuan.hu1@zte.com.cn>
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/entity/SubstitutionMapping.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/aria/entity/AriaParserResult.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/parser/yaml/aria/service/AriaParserServiceConsumer.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/parser/yaml/zte/entity/ParseYamlResult.java
catalog-core/catalog-mgr/src/main/java/org/openo/commontosca/catalog/model/parser/yaml/zte/service/YamlParseServiceConsumer.java

index 4124938..cadbb34 100644 (file)
  */
 package org.openo.commontosca.catalog.model.entity;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import java.util.HashMap;
-import java.util.Map;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 
 
 @Data
 @NoArgsConstructor
 @AllArgsConstructor
 public class SubstitutionMapping {
+  @JsonIgnore
   private String serviceTemplateId;
   private String nodeType;
   private Map<String, String[]> requirements = new HashMap<String, String[]>();
index d70eb93..bfebe15 100644 (file)
@@ -72,7 +72,7 @@ public class AriaModelParser extends AbstractModelParser {
     st.setType(getTemplateType(getSubstitutionType(result), ntList).toString());
     // save to db
     TemplateManager.getInstance().addServiceTemplate(
-        TemplateDataHelper.convert2TemplateData(st, ToolUtil.toJson(result), ntList));
+        TemplateDataHelper.convert2TemplateData(st, result.getRawData(), ntList));
     
     // substitution
     SubstitutionMapping stm = parseSubstitutionMapping(st.getServiceTemplateId(), result);
index 5c18a85..1701c60 100644 (file)
@@ -51,6 +51,7 @@ public class AriaParserServiceConsumer {
               IAriaParserRest.class);
       String strResult = parseProxy.parse(request);
       AriaParserResult result = new Gson().fromJson(strResult, AriaParserResult.class);
+      result.setRawData(strResult);
       validateResult(result, strResult);
       return result;
     } catch (Exception e) {
index 8ec7834..7f57075 100644 (file)
@@ -59,7 +59,7 @@ public class ToscaYamlModelParser extends AbstractModelParser {
     st.setType(getTemplateType(getSubstitutionType(result), ntList).toString());
     // save to db
     TemplateManager.getInstance().addServiceTemplate(
-        TemplateDataHelper.convert2TemplateData(st, ToolUtil.toJson(result), ntList));
+        TemplateDataHelper.convert2TemplateData(st, result.getRawData(), ntList));
 
     // substitution
     SubstitutionMapping stm = parseSubstitutionMapping(st.getServiceTemplateId(), result);
index 1089dc3..5bdab1c 100644 (file)
  */
 package org.openo.commontosca.catalog.model.parser.yaml.zte.entity;
 
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
 import org.openo.commontosca.catalog.common.ToolUtil;
 
 import com.google.gson.Gson;
@@ -23,13 +34,9 @@ import com.google.gson.JsonElement;
 import com.google.gson.JsonObject;
 import com.google.gson.annotations.SerializedName;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
 public class ParseYamlResult {
   private String toscaDefinitionsVersion;
   private String description;
@@ -40,7 +47,8 @@ public class ParseYamlResult {
   private TopologyTemplate topologyTemplate;
   private Map<String, String> metadata;
   private JsonObject plans;
-
+  
+  private String rawData;
 
   public String getToscaDefinitionsVersion() {
     return toscaDefinitionsVersion;
index d6e9286..2d9bd04 100644 (file)
@@ -46,7 +46,9 @@ public class YamlParseServiceConsumer {
           ConsumerFactory.createConsumer(MsbUtil.getYamlParseBaseUrl(), config,
               IYamlParseRest.class);
       String jsonStr = yamlParseProxy.parse(request);
-      return new Gson().fromJson(jsonStr, ParseYamlResult.class);
+      ParseYamlResult result = new Gson().fromJson(jsonStr, ParseYamlResult.class);
+      result.setRawData(jsonStr);
+      return result;
     } catch (Exception e1) {
       throw new CatalogResourceException("Call parser api failed.", e1);
     }