diff --git a/pom.xml b/pom.xml
index 68004e3..f4afe1c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -41,9 +41,17 @@
pom
import
+
+ org.gcube.distribution
+ gcube-bom
+ LATEST
+ pom
+ import
+
+
${project.basedir}/distro
${project.build.directory}/${project.build.finalName}
@@ -75,7 +83,7 @@
org.glassfish
javax.json
1.1.2
- provided
+
@@ -84,6 +92,11 @@
2.7.3
+
+ com.fasterxml.jackson.core
+ jackson-annotations
+
+
org.projectlombok
lombok
diff --git a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInputParams.java b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInputParams.java
index 7e898ab..f792a19 100644
--- a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInputParams.java
+++ b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInputParams.java
@@ -17,6 +17,8 @@ import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
/**
* The Class DataMinerInputParams.
@@ -26,6 +28,7 @@ import lombok.ToString;
*/
@XmlRootElement(name = "dataminer-inputparams")
@XmlAccessorType (XmlAccessType.FIELD)
+//@JsonIgnoreProperties(ignoreUnknown=true)
@NoArgsConstructor
@AllArgsConstructor
@Getter
@@ -39,6 +42,7 @@ public class DataMinerInputParams implements Serializable{
private static final long serialVersionUID = -7241629940190729604L;
@XmlElement(name = "param", required=true, nillable=false)
+ @JsonProperty(value="param", required=true)
private List listParam;
diff --git a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInvocation.java b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInvocation.java
index aa9847a..561b142 100644
--- a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInvocation.java
+++ b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerInvocation.java
@@ -18,6 +18,10 @@ import lombok.ToString;
import org.gcube.data.analysis.dminvocation.ActionType;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonRootName;
+
/**
* The Class DataMinerInvocation.
*
@@ -25,7 +29,9 @@ import org.gcube.data.analysis.dminvocation.ActionType;
* Dec 4, 2018
*/
@XmlRootElement(name = "dataminer-invocation")
+@JsonRootName(value = "dataminer-invocation")
@XmlAccessorType (XmlAccessType.FIELD)
+@JsonIgnoreProperties(ignoreUnknown=true)
@NoArgsConstructor
@AllArgsConstructor
@Getter
@@ -40,12 +46,15 @@ public class DataMinerInvocation implements Serializable{
@XmlElement(name = "operator-id", required=true, nillable=false)
+ @JsonProperty(value="operator-id", required=true)
private String operatorId;
@XmlElement(name = "action", required=true, nillable=false)
+ @JsonProperty(value="action", required=true)
private ActionType actionType = ActionType.RUN;
@XmlElement(name = "parameters", required=false, nillable=true)
+ @JsonProperty(required=false)
private DataMinerParameters parameters;
}
diff --git a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerOutputParams.java b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerOutputParams.java
index 0b42890..e4b2d73 100644
--- a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerOutputParams.java
+++ b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerOutputParams.java
@@ -17,6 +17,8 @@ import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
/**
* The Class DataMinerOutputParams.
@@ -26,6 +28,7 @@ import lombok.ToString;
*/
@XmlRootElement(name = "dataminer-outputparams")
@XmlAccessorType (XmlAccessType.FIELD)
+//@JsonIgnoreProperties(ignoreUnknown=true)
@NoArgsConstructor
@AllArgsConstructor
@Getter
@@ -39,6 +42,7 @@ public class DataMinerOutputParams implements Serializable{
private static final long serialVersionUID = -683773454747370184L;
@XmlElement(name = "param")
+ @JsonProperty(value="param", required=true)
private List params;
}
diff --git a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerParameters.java b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerParameters.java
index 6175839..829ba38 100644
--- a/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerParameters.java
+++ b/src/main/java/org/gcube/data/analysis/dminvocation/model/DataMinerParameters.java
@@ -16,6 +16,9 @@ import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
/**
@@ -26,6 +29,7 @@ import lombok.ToString;
*/
@XmlRootElement(name = "dataminer-parameters")
@XmlAccessorType (XmlAccessType.FIELD)
+@JsonIgnoreProperties(ignoreUnknown=true)
@NoArgsConstructor
@AllArgsConstructor
@Getter
@@ -38,8 +42,10 @@ public class DataMinerParameters implements Serializable{
*/
private static final long serialVersionUID = 8298755690515099551L;
@XmlElement(name = "input", required=true, nillable=false)
+ @JsonProperty(required=true)
private DataMinerInputParams input;
@XmlElement(name = "output", required=false, nillable=true)
+ @JsonProperty(required=false)
private DataMinerOutputParams output;
}
diff --git a/src/test/java/DataMinerInvocationTest.java b/src/test/java/DataMinerInvocationTest.java
index 5988cf8..e180335 100644
--- a/src/test/java/DataMinerInvocationTest.java
+++ b/src/test/java/DataMinerInvocationTest.java
@@ -67,7 +67,7 @@ public class DataMinerInvocationTest {
System.out.println(new String(outStreamXML.toByteArray()));
}
- @Test
+ //@Test
public void unmarshallingXMLTest() throws JAXBException, IOException, SAXException{
System.out.println(DataMinerInvocationTest.class.getMethods()[1].getName()+" called");
FileInputStream dmInvocationXMLFile = new FileInputStream(new File("./src/test/resources/DataMinerInvocation.xml"));
@@ -90,8 +90,8 @@ public class DataMinerInvocationTest {
DataMinerInvocation dmInvocation = dmMng.unmarshaling(dmInvocationJSONFile, MediaType.ApplicationJSON, true);
System.out.println(dmInvocation);
- ByteArrayOutputStream outStreamXML = dmMng.marshaling(dmInvocation, MediaType.ApplicationXML, true);
- System.out.println(new String(outStreamXML.toByteArray()));
+// ByteArrayOutputStream outStreamXML = dmMng.marshaling(dmInvocation, MediaType.ApplicationXML, true);
+// System.out.println(new String(outStreamXML.toByteArray()));
}
diff --git a/src/test/resources/DataMinerInvocation.json b/src/test/resources/DataMinerInvocation.json
index 28fa007..c8670b8 100644
--- a/src/test/resources/DataMinerInvocation.json
+++ b/src/test/resources/DataMinerInvocation.json
@@ -15,4 +15,4 @@
}
}
}
-}
\ No newline at end of file
+}