134 lines
3.8 KiB
Java
134 lines
3.8 KiB
Java
/**
|
|
*
|
|
*/
|
|
package org.gcube.common.workspacetaskexecutor.dataminer;
|
|
|
|
import org.gcube.common.workspacetaskexecutor.shared.TaskParameter;
|
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskComputation;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.data.computations.ComputationId;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.ColumnListParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.ColumnParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.DateParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.EnumParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.FileParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.ListParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.ObjectParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.Parameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.ParameterType;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.TabularListParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.TabularParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.TimeParameter;
|
|
import org.gcube.data.analysis.dataminermanagercl.shared.parameters.WKTParameter;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
|
|
/**
|
|
* The Class DMConverter.
|
|
*
|
|
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
|
* May 7, 2018
|
|
*/
|
|
public class DMConverter {
|
|
|
|
|
|
/** The logger. */
|
|
private static Logger logger = LoggerFactory.getLogger(DMConverter.class);
|
|
|
|
/**
|
|
* To dm computation id.
|
|
*
|
|
* @param computationId the computation id
|
|
* @return the task computation
|
|
*/
|
|
public static TaskComputation toDMComputationId(ComputationId computationId){
|
|
if(computationId==null)
|
|
return null;
|
|
|
|
return new TaskComputation(computationId.getId(), computationId.getUrlId(), computationId.getOperatorId(), computationId.getOperatorName(), computationId.getEquivalentRequest());
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* To computation id.
|
|
*
|
|
* @param taskComputation the task computation
|
|
* @return the computation id
|
|
*/
|
|
public static ComputationId toComputationId(TaskComputation taskComputation){
|
|
|
|
if(taskComputation==null)
|
|
return null;
|
|
|
|
return new ComputationId(taskComputation.getId(), taskComputation.getUrlId(), taskComputation.getOperatorId(), taskComputation.getOperatorName(), taskComputation.getEquivalentRequest());
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
* To dm parameter.
|
|
*
|
|
* @param taskParameter the task parameter
|
|
* @return the parameter
|
|
*/
|
|
public static Parameter toDMParameter(TaskParameter taskParameter){
|
|
|
|
ParameterType toParameterType = null;
|
|
try{
|
|
|
|
if(taskParameter==null || taskParameter.getType()==null)
|
|
return null;
|
|
|
|
toParameterType = ParameterType.valueOf(taskParameter.getType().getType());
|
|
Parameter p = null;
|
|
switch (toParameterType) {
|
|
case FILE:
|
|
p =new FileParameter();
|
|
break;
|
|
case OBJECT:
|
|
p = new ObjectParameter();
|
|
break;
|
|
case TABULAR:
|
|
p = new TabularParameter();
|
|
break;
|
|
case ENUM:
|
|
p = new EnumParameter();
|
|
break;
|
|
case LIST:
|
|
p = new ListParameter();
|
|
break;
|
|
case COLUMN:
|
|
p = new ColumnParameter();
|
|
break;
|
|
case COLUMN_LIST:
|
|
p = new ColumnListParameter();
|
|
break;
|
|
case DATE:
|
|
p = new DateParameter();
|
|
break;
|
|
case TABULAR_LIST:
|
|
p = new TabularListParameter();
|
|
break;
|
|
case TIME:
|
|
p = new TimeParameter();
|
|
break;
|
|
case WKT:
|
|
p = new WKTParameter();
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
p.setName(taskParameter.getKey());
|
|
p.setValue(taskParameter.getValue());
|
|
return p;
|
|
|
|
}catch(Exception e){
|
|
logger.warn("Impossible to convert the value: "+taskParameter+" at one of values "+ParameterType.values());
|
|
return null;
|
|
}
|
|
}
|
|
}
|