79 lines
2.5 KiB
Java
79 lines
2.5 KiB
Java
/**
|
|
*
|
|
*/
|
|
|
|
|
|
import java.io.ByteArrayOutputStream;
|
|
import java.io.File;
|
|
import java.io.FileInputStream;
|
|
import java.io.FileNotFoundException;
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
import javax.xml.bind.JAXBException;
|
|
|
|
import org.gcube.data.analysis.dminvocation.DataMinerInvocationManager;
|
|
import org.gcube.data.analysis.dminvocation.MediaType;
|
|
import org.gcube.data.analysis.dminvocation.model.DataMinerInputParams;
|
|
import org.gcube.data.analysis.dminvocation.model.DataMinerInvocation;
|
|
import org.gcube.data.analysis.dminvocation.model.DataMinerOutputParams;
|
|
import org.gcube.data.analysis.dminvocation.model.DataMinerParam;
|
|
import org.gcube.data.analysis.dminvocation.model.DataMinerParameters;
|
|
import org.junit.Before;
|
|
import org.junit.Test;
|
|
|
|
|
|
/**
|
|
*
|
|
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
|
* Dec 4, 2018
|
|
*/
|
|
public class DataMinerInvocationTest {
|
|
|
|
static String operatorID = "THE_OPERATOR_ID";
|
|
|
|
static Map<String,String> parameters = new HashMap<String,String>();
|
|
|
|
|
|
@Before
|
|
public void init(){
|
|
parameters.put("key1", "value1");
|
|
parameters.put("key2", "value2");
|
|
}
|
|
|
|
|
|
@Test
|
|
public void marshallingTest() throws JAXBException {
|
|
|
|
//LOADING PARAMETERS
|
|
List<DataMinerParam> inParams = new ArrayList<DataMinerParam>();
|
|
for (String pm : parameters.keySet()) {
|
|
inParams.add(new DataMinerParam(pm, parameters.get(pm)));
|
|
}
|
|
|
|
DataMinerInputParams inputParams = new DataMinerInputParams(inParams);
|
|
DataMinerOutputParams outputParams = new DataMinerOutputParams(null);
|
|
DataMinerParameters params = new DataMinerParameters(inputParams, outputParams);
|
|
|
|
DataMinerInvocation dmInvocation = new DataMinerInvocation();
|
|
dmInvocation.setOperatorId(operatorID);
|
|
dmInvocation.setParameters(params);
|
|
System.out.println(dmInvocation);
|
|
|
|
ByteArrayOutputStream outStreamJSON = DataMinerInvocationManager.marshaling(dmInvocation, MediaType.ApplicationJSON);
|
|
System.out.println(new String(outStreamJSON.toByteArray()));
|
|
|
|
ByteArrayOutputStream outStreamXML = DataMinerInvocationManager.marshaling(dmInvocation, MediaType.ApplicationXML);
|
|
System.out.println(new String(outStreamXML.toByteArray()));
|
|
}
|
|
|
|
@Test
|
|
public void unmarshallingXMLTest() throws JAXBException, FileNotFoundException{
|
|
FileInputStream dmInvocationXMLFile = new FileInputStream(new File("./src/test/resources/DataMinerInvocation.xml"));
|
|
DataMinerInvocation dmInvocation = DataMinerInvocationManager.unmarshaling(dmInvocationXMLFile, MediaType.ApplicationXML);
|
|
System.out.println(dmInvocation);
|
|
}
|
|
}
|