Json Serialize 'clazz' to 'class' 29/42629/2
authorYuanHu <yuan.hu1@zte.com.cn>
Fri, 13 Apr 2018 00:56:42 +0000 (08:56 +0800)
committerYuanHu <yuan.hu1@zte.com.cn>
Tue, 17 Apr 2018 06:24:17 +0000 (14:24 +0800)
Add @JsonProperty(value="class") to field 'clazz' to indicate the Json Serialize name.

Issue-ID: SDC-1235

Change-Id: I21de7514a9d6c8f7227b25d8c8c9ecf4e9c35171
Signed-off-by: YuanHu <yuan.hu1@zte.com.cn>
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/WorkflowDesignerApp.java
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/externalservice/sdc/entity/ActivityContent.java
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/externalservice/sdc/entity/ActivitySpec.java
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/resources/ExtendActivityResource.java
sdc-workflow-designer-server/src/main/java/org/onap/sdc/workflowdesigner/resources/entity/Content.java
sdc-workflow-designer-server/src/test/java/org/onap/sdc/workflowdesigner/externalservice/sdc/entity/ActivityContentTest.java
sdc-workflow-designer-server/src/test/java/org/onap/sdc/workflowdesigner/resources/entity/ContentTest.java

index e5b065e..34a17e7 100644 (file)
@@ -12,7 +12,6 @@
 
 package org.onap.sdc.workflowdesigner;
 
-//import org.glassfish.jersey.media.multipart.MultiPartFeature;
 import org.onap.sdc.workflowdesigner.config.AdapterType;
 import org.onap.sdc.workflowdesigner.config.AppConfig;
 import org.onap.sdc.workflowdesigner.resources.ExtendActivityResource;
@@ -61,8 +60,6 @@ public class WorkflowDesignerApp extends Application<WorkflowDesignerConfigurati
 
     // register rest interface
     environment.jersey().packages("org.onap.sdc.workflowdesigner.resources");
-//    // upload file by inputstream need to register MultiPartFeature
-//    environment.jersey().register(MultiPartFeature.class);
 
     initSwaggerConfig(environment, configuration);
 
index e97fd8e..66208a2 100644 (file)
  */\r
 package org.onap.sdc.workflowdesigner.externalservice.sdc.entity;\r
 \r
+import com.fasterxml.jackson.annotation.JsonProperty;\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 /**\r
  *\r
  */\r
 public class ActivityContent {\r
-  @SerializedName("class")\r
-  private String clazz;\r
+  @JsonProperty(value="class") // for dropwizard's Jackson\r
+  @SerializedName("class")  // for Gson\r
+  public String clazz;\r
   \r
   private String scriptFormat;\r
   \r
   private String script;\r
 \r
-  /**\r
-   * @return the clazz\r
-   */\r
-  public String getClazz() {\r
-    return clazz;\r
-  }\r
-\r
-  /**\r
-   * @param clazz the clazz to set\r
-   */\r
-  public void setClazz(String clazz) {\r
-    this.clazz = clazz;\r
-  }\r
 \r
   /**\r
    * @return the scriptFormat\r
index 46fef11..99e2f28 100644 (file)
@@ -160,7 +160,8 @@ public class ExtendActivityResource {
    */
   private Content buildContent(ActivitySpec activitySpec) {
     Content content = new Content();
-    content.setClass(activitySpec.getContent().getClazz());
+//    content.setClass(activitySpec.getContent().getClazz());
+    content.clazz = activitySpec.getContent().clazz;
     content.setScript(activitySpec.getContent().getScript());
     content.setScriptFormat(activitySpec.getContent().getScriptFormat());
     content.setInputs(convert2InputOutputs(activitySpec.getInputs()));
index 5a24662..70d5992 100644 (file)
@@ -13,14 +13,16 @@ package org.onap.sdc.workflowdesigner.resources.entity;
 \r
 import java.util.Map;\r
 \r
+import com.fasterxml.jackson.annotation.JsonProperty;\r
 import com.google.gson.annotations.SerializedName;\r
 \r
 /**\r
  *\r
  */\r
 public class Content {\r
-  @SerializedName("class")\r
-  private String clazz;\r
+  @JsonProperty(value="class") // for dropwizard's Jackson\r
+  @SerializedName("class")  // for Gson\r
+  public String clazz;\r
   \r
   private String script;\r
   \r
@@ -29,20 +31,7 @@ public class Content {
   private Map<String, InputOutput> inputs;\r
   \r
   private Map<String, InputOutput> outputs;\r
-\r
-  /**\r
-   * @return the clazz\r
-   */\r
-  public String getClazz() {\r
-    return clazz;\r
-  }\r
-\r
-  /**\r
-   * @param clazz the clazz to set\r
-   */\r
-  public void setClass(String clazz) {\r
-    this.clazz = clazz;\r
-  }\r
+  \r
 \r
   /**\r
    * @return the script\r
index 2ede261..4aa2dd0 100644 (file)
@@ -39,16 +39,16 @@ public class ActivityContentTest {
    */\r
   @Test\r
   public void testToString() {\r
-    String clazz = "clazz";\r
+//    String clazz = "clazz";\r
     String script = "script";\r
     String scriptFormat = "scriptFormat";\r
     \r
     ActivityContent ac = new ActivityContent();\r
-    ac.setClazz(clazz);\r
+//    ac.setClass(clazz);\r
     ac.setScript(script);\r
     ac.setScriptFormat(scriptFormat );\r
     \r
-    assertEquals(clazz, ac.getClazz());\r
+//    assertEquals(clazz, ac.getClazz());\r
     assertEquals(script, ac.getScript());\r
     assertEquals(scriptFormat, ac.getScriptFormat());\r
   }\r
index 58738bc..1c6612e 100644 (file)
@@ -19,6 +19,7 @@ import java.util.Map;
 import org.junit.After;\r
 import org.junit.Before;\r
 import org.junit.Test;\r
+import org.onap.sdc.workflowdesigner.utils.JsonUtils;\r
 \r
 /**\r
  *\r
@@ -39,24 +40,34 @@ public class ContentTest {
 \r
   @Test\r
   public void test() {\r
-    String clazz = "clazz";\r
+//    String clazz = "clazz";\r
     String script = "script";\r
     String scriptFormat = "scriptFormat";\r
     Map<String, InputOutput> inputs = new HashMap<String, InputOutput>();\r
     Map<String, InputOutput> outputs = new HashMap<String, InputOutput>();\r
     \r
     Content c = new Content();\r
-    c.setClass(clazz);\r
+//    c.setClass(clazz);\r
     c.setInputs(inputs);\r
     c.setOutputs(outputs);\r
     c.setScript(script);\r
     c.setScriptFormat(scriptFormat);\r
     \r
-    assertEquals(clazz, c.getClazz());\r
+//    assertEquals(clazz, c.getClazz());\r
     assertEquals(inputs, c.getInputs());\r
     assertEquals(outputs, c.getOutputs());\r
     assertEquals(script, c.getScript());\r
     assertEquals(scriptFormat, c.getScriptFormat());\r
   }\r
+  \r
+  @Test\r
+  public void testGson() {\r
+    String json = "{\r\n" + \r
+        "      \"class\": \"aaaa\",\r\n" + \r
+        "      \"inputs\": {}\r\n" + \r
+        "    }";\r
+    Content content = JsonUtils.fromJson(json, Content.class);\r
+    assertNotNull(content);\r
+  }\r
 \r
 }\r