You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by di...@apache.org on 2018/10/29 19:34:47 UTC

[airavata] 01/02: Serializable parsing task input output

This is an automated email from the ASF dual-hosted git repository.

dimuthuupe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata.git

commit 3c6b3dd4d359cde18036e8df3621a54be214385f
Author: Dimuthu Wannipurage <di...@datasprouts.com>
AuthorDate: Mon Oct 29 15:33:22 2018 -0400

    Serializable parsing task input output
---
 .../impl/task/parsing/models/ParsingTaskInputs.java      | 16 +++++++++++++++-
 .../impl/task/parsing/models/ParsingTaskOutputs.java     | 16 +++++++++++++++-
 2 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskInputs.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskInputs.java
index 812f3b7..f710be5 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskInputs.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskInputs.java
@@ -1,9 +1,12 @@
 package org.apache.airavata.helix.impl.task.parsing.models;
 
+import com.google.gson.Gson;
+import org.apache.airavata.helix.task.api.TaskParamType;
+
 import java.util.ArrayList;
 import java.util.List;
 
-public class ParsingTaskInputs {
+public class ParsingTaskInputs implements TaskParamType {
 
     private List<ParsingTaskInput> inputs = new ArrayList<>();
 
@@ -18,4 +21,15 @@ public class ParsingTaskInputs {
     public void addInput(ParsingTaskInput input) {
         this.inputs.add(input);
     }
+
+    @Override
+    public String serialize() {
+        return new Gson().toJson(this);
+    }
+
+    @Override
+    public void deserialize(String content) {
+        ParsingTaskInputs parsingTaskInputs = new Gson().fromJson(content, ParsingTaskInputs.class);
+        this.inputs = parsingTaskInputs.getInputs();
+    }
 }
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskOutputs.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskOutputs.java
index cdda0b3..d0c0820 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskOutputs.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/parsing/models/ParsingTaskOutputs.java
@@ -1,9 +1,12 @@
 package org.apache.airavata.helix.impl.task.parsing.models;
 
+import com.google.gson.Gson;
+import org.apache.airavata.helix.task.api.TaskParamType;
+
 import java.util.ArrayList;
 import java.util.List;
 
-public class ParsingTaskOutputs {
+public class ParsingTaskOutputs implements TaskParamType {
     private List<ParsingTaskOutput> outputs = new ArrayList<>();
 
     public List<ParsingTaskOutput> getOutputs() {
@@ -17,4 +20,15 @@ public class ParsingTaskOutputs {
     public void addOutput(ParsingTaskOutput output) {
         outputs.add(output);
     }
+
+    @Override
+    public String serialize() {
+        return new Gson().toJson(this);
+    }
+
+    @Override
+    public void deserialize(String content) {
+        ParsingTaskOutputs parsingTaskOutputs = new Gson().fromJson(content, ParsingTaskOutputs.class);
+        this.outputs = parsingTaskOutputs.getOutputs();
+    }
 }