enhancement

git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/Common/workspace-task-executor-library@167542 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Francesco Mangiacrapa 2018-05-16 15:52:36 +00:00
parent 09bf01b062
commit fbc9cd8a7a
2 changed files with 47 additions and 20 deletions

View File

@ -17,6 +17,7 @@ import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskExecutionStatus;
import org.gcube.common.workspacetaskexecutor.shared.exception.TaskErrorException;
import org.gcube.common.workspacetaskexecutor.shared.exception.TaskNotExecutableException;
import org.gcube.common.workspacetaskexecutor.util.Converter;
import org.gcube.common.workspacetaskexecutor.util.EncrypterUtil;
import org.gcube.data.analysis.dataminermanagercl.server.DataMinerService;
import org.gcube.data.analysis.dataminermanagercl.server.dmservice.SClient;
@ -44,7 +45,7 @@ public class DataMinerAccessPoint {
/**
*
*/
private static final String NEW_STATUS_CHARS = "*******";
private static final String NEW_STATUS_CHARS = "******* ";
/**
*
*/
@ -230,14 +231,19 @@ public class DataMinerAccessPoint {
}
TaskExecutionStatus newTaskExecutionStatus = new TaskExecutionStatus(taskConfiguration, taskComputation);
if(!isStart)
//adding previous log
newTaskExecutionStatus.addLog(oldTaskExecutionStatus.getLog());
else{
newTaskExecutionStatus.addLog(NEW_STATUS_CHARS+"Configurations are: ");
newTaskExecutionStatus.addLog(NEW_LINE+DASH+DASH+"Operator Id: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getOperatorId());
newTaskExecutionStatus.addLog(NEW_LINE+DASH+DASH+"Operator Name: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getOperatorName());
newTaskExecutionStatus.addLog(NEW_LINE+DASH+DASH+"EquivalentRequest: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getEquivalentRequest());
newTaskExecutionStatus.addLog(NEW_LINE+DASH+DASH+"URL ID: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getUrlId());
//first time adding the configurations
String confs=NEW_LINE+NEW_STATUS_CHARS+Converter.getCurrentFormattedDate(null)+NEW_LINE;
confs+="Computation starts with configurations...";
confs+=NEW_LINE+NEW_LINE+DASH+DASH+"Operator Id: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getOperatorId();
confs+=NEW_LINE+NEW_LINE+DASH+DASH+"Operator Name: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getOperatorName();
confs+=NEW_LINE+NEW_LINE+DASH+DASH+"EquivalentRequest: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getEquivalentRequest();
confs+=NEW_LINE+NEW_LINE+DASH+DASH+"URL ID: "+NEW_LINE+newTaskExecutionStatus.getTaskComputation().getUrlId();
newTaskExecutionStatus.addLog(confs+NEW_LINE);
}
logger.debug("Requesting operation progress");
@ -264,47 +270,47 @@ public class DataMinerAccessPoint {
newTaskExecutionStatus.setCurrentMessage(computationStatus.getMessage());
newTaskExecutionStatus.setPercentCompleted((float) computationStatus.getPercentage());
String msg=NEW_STATUS_CHARS;
String historyMsg=NEW_LINE+NEW_STATUS_CHARS+Converter.getCurrentFormattedDate(null)+NEW_LINE;
switch (status) {
case ACCEPTED:
logger.debug("Operation "+TaskStatus.ACCEPTED);
newTaskExecutionStatus.setStatus(TaskStatus.ACCEPTED);
msg+= "Status "+TaskStatus.ACCEPTED;
msg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
historyMsg+= "Status "+TaskStatus.ACCEPTED;
historyMsg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
break;
case CANCELLED:
logger.debug("Operation "+TaskStatus.CANCELLED);
newTaskExecutionStatus.setStatus(TaskStatus.CANCELLED);
msg+= "Status "+TaskStatus.CANCELLED;
msg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
historyMsg+= "Status "+TaskStatus.CANCELLED;
historyMsg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
break;
case COMPLETE:
logger.debug("Operation "+TaskStatus.COMPLETED);
newTaskExecutionStatus.setStatus(TaskStatus.COMPLETED);
msg+= "Status "+TaskStatus.COMPLETED;
msg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
historyMsg+= "Status "+TaskStatus.COMPLETED;
historyMsg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
break;
case FAILED:
logger.debug("Operation "+TaskStatus.FAILED);
newTaskExecutionStatus.setStatus(TaskStatus.FAILED);
msg+= "Status "+TaskStatus.FAILED;
msg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
historyMsg+= "Status "+TaskStatus.FAILED;
historyMsg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
break;
case RUNNING:
logger.debug("Operation "+TaskStatus.ONGOING);
newTaskExecutionStatus.setStatus(TaskStatus.ONGOING);
msg+= "Status "+TaskStatus.ONGOING;
msg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
historyMsg+= "Status "+TaskStatus.ONGOING;
historyMsg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
break;
default:
newTaskExecutionStatus.setStatus(TaskStatus.INITIALIZING);
msg+= "Status "+TaskStatus.INITIALIZING;
msg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
historyMsg+= "Status "+TaskStatus.INITIALIZING;
historyMsg+=computationStatus.getMessage()!=null?": "+computationStatus.getMessage():"";
break;
}
newTaskExecutionStatus.addLog(NEW_LINE+msg);
newTaskExecutionStatus.addLog(historyMsg+NEW_LINE);
saveTaskInMemory(taskConfiguration, newTaskExecutionStatus);
return newTaskExecutionStatus;

View File

@ -3,11 +3,14 @@
*/
package org.gcube.common.workspacetaskexecutor.util;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* The Class Converter.
*
@ -16,6 +19,10 @@ import java.util.List;
*/
public class Converter {
private static SimpleDateFormat defaultSDF = new SimpleDateFormat("HH:mm:ss yyyy-MM-dd");
/**
* Gets the enum list.
*
@ -26,4 +33,18 @@ public class Converter {
public static <E extends Enum<E>> List<E> getEnumList(Class<E> enumClass) {
return new ArrayList<E>(Arrays.asList(enumClass.getEnumConstants()));
}
/**
* Gets the current formatted date.
*
* @param sdf the sdf
* @return the current formatted date
*/
public static String getCurrentFormattedDate(SimpleDateFormat sdf){
if(sdf==null)
sdf = defaultSDF;
return sdf.format(new Date());
}
}