enhancement
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/widgets/ws-task-executor-widget@167541 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
e2bdfdc458
commit
0c69fa392d
|
@ -4,10 +4,13 @@ package org.gcube.portlets.widgets.wstaskexecutor.client;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.gcube.common.workspacetaskexecutor.shared.TaskParameter;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration;
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration;
|
||||||
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskExecutionStatus;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotConfiguredException;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotConfiguredException;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.WorkspaceFolderLocked;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.WorkspaceFolderLocked;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.TaskCompletedNotification.TaskCompletedNotificationListner;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.TaskCompletedNotification.TaskCompletedNotificationListner;
|
||||||
|
import org.gcube.portlets.widgets.wstaskexecutor.client.dialog.DialogConfirm;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.dialog.DialogResult;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.dialog.DialogResult;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.event.CreatedTaskConfigurationEvent;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.event.CreatedTaskConfigurationEvent;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.event.CreatedTaskConfigurationEventHandler;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.event.CreatedTaskConfigurationEventHandler;
|
||||||
|
@ -83,10 +86,49 @@ public class WsTaskExecutorWidget {
|
||||||
eventBus.addHandler(PerformRunTaskEvent.TYPE, new PerformRunTaskEventHandler() {
|
eventBus.addHandler(PerformRunTaskEvent.TYPE, new PerformRunTaskEventHandler() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPerformRunTask(PerformRunTaskEvent perforRunTaskEvent) {
|
public void onPerformRunTask(final PerformRunTaskEvent perforRunTaskEvent) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
performRunTask(perforRunTaskEvent.getFolder(), perforRunTaskEvent.getConf());
|
if(perforRunTaskEvent.getWsItem()!=null && perforRunTaskEvent.getConfiguration()!=null){
|
||||||
|
String msg = "<div style='font-size:14px; font-weight:bold;'>Executing the task with configuration:</div>";
|
||||||
|
msg+="<br/>";
|
||||||
|
msg+="Operator Id: "+perforRunTaskEvent.getConfiguration().getTaskId();
|
||||||
|
int cParam = perforRunTaskEvent.getConfiguration().getListParameters().size();
|
||||||
|
msg+="<br/><br/>";
|
||||||
|
if(cParam>0){
|
||||||
|
msg+="With Input ";
|
||||||
|
msg+=cParam>1?"Parameters:":"Parameter:";
|
||||||
|
msg+="<br/>";
|
||||||
|
int i = 0;
|
||||||
|
for (TaskParameter param : perforRunTaskEvent.getConfiguration().getListParameters()) {
|
||||||
|
msg+=++i+". Type: "+param.getType().getType() +" having "+param.getKey()+" = " +param.getValue();
|
||||||
|
msg+="<br/>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
msg+="<br/>";
|
||||||
|
msg+="<br/>";
|
||||||
|
msg+="<div style='font-size:14px; font-weight:bold;'>Confirm?</div>";
|
||||||
|
final DialogConfirm confirm = new DialogConfirm(null, "Run the task?", msg);
|
||||||
|
|
||||||
|
confirm.getYesButton().addClickHandler(new ClickHandler() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClick(ClickEvent event) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
performRunTask(perforRunTaskEvent.getWsItem(), perforRunTaskEvent.getConfiguration());
|
||||||
|
confirm.hide();
|
||||||
|
}
|
||||||
|
catch (Exception e) {
|
||||||
|
Window.alert(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
confirm.center();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (Exception e) {
|
catch (Exception e) {
|
||||||
Window.alert(e.getMessage());
|
Window.alert(e.getMessage());
|
||||||
|
@ -104,8 +146,7 @@ public class WsTaskExecutorWidget {
|
||||||
showTaskConfigurations(showListOfTaskConfigurationsEvent.getWsItem());
|
showTaskConfigurations(showListOfTaskConfigurationsEvent.getWsItem());
|
||||||
}
|
}
|
||||||
catch (Exception e) {
|
catch (Exception e) {
|
||||||
// TODO Auto-generated catch block
|
Window.alert(e.getMessage());
|
||||||
e.printStackTrace();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -139,8 +180,7 @@ public class WsTaskExecutorWidget {
|
||||||
showTaskConfigurations(dcEvent.getWsItem());
|
showTaskConfigurations(dcEvent.getWsItem());
|
||||||
}
|
}
|
||||||
catch (Exception e) {
|
catch (Exception e) {
|
||||||
// TODO Auto-generated catch block
|
Window.alert(e.getMessage());
|
||||||
e.printStackTrace();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -213,7 +253,7 @@ public class WsTaskExecutorWidget {
|
||||||
* @param conf the conf
|
* @param conf the conf
|
||||||
* @throws Exception the exception
|
* @throws Exception the exception
|
||||||
*/
|
*/
|
||||||
public void performRunTask(WSItem wsItem, TaskConfiguration conf) throws Exception {
|
public void performRunTask(final WSItem wsItem, final TaskConfiguration conf) throws Exception {
|
||||||
|
|
||||||
if(wsItem==null || wsItem.getItemId()==null)
|
if(wsItem==null || wsItem.getItemId()==null)
|
||||||
throw new Exception("Invalid parameter workpace item or its id is null");
|
throw new Exception("Invalid parameter workpace item or its id is null");
|
||||||
|
@ -221,8 +261,29 @@ public class WsTaskExecutorWidget {
|
||||||
if(conf==null)
|
if(conf==null)
|
||||||
throw new Exception("Invalid parameter the configuration is null");
|
throw new Exception("Invalid parameter the configuration is null");
|
||||||
|
|
||||||
|
final Modal box = new Modal(true);
|
||||||
|
box.setTitle("Executing task configuration...");
|
||||||
|
|
||||||
//WsTaskExecutorWidget.wsTaskService.runTask()
|
LoaderIcon loader = new LoaderIcon("Executing task configuration for: <br/>"+conf.getTaskId());
|
||||||
|
box.add(loader);
|
||||||
|
|
||||||
|
WsTaskExecutorWidget.wsTaskService.executeTheTask(conf, new AsyncCallback<TaskExecutionStatus>() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(Throwable caught) {
|
||||||
|
box.hide();
|
||||||
|
new DialogResult(null, "Error on show Task Status for algorithm id:"+conf.getTaskId(), caught.getMessage()).center();
|
||||||
|
viewManager.cancelMonitor(wsItem);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSuccess(TaskExecutionStatus result) {
|
||||||
|
box.hide();
|
||||||
|
viewManager.showMonitorTaskStatusFor(wsItem, result.getTaskConfiguration(), result.getTaskComputation(), taskEventsListeners);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
box.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -266,10 +327,10 @@ public class WsTaskExecutorWidget {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(Throwable caught) {
|
public void onFailure(Throwable caught) {
|
||||||
box.hide();
|
|
||||||
|
|
||||||
if(caught instanceof ItemNotConfiguredException){
|
if(caught instanceof ItemNotConfiguredException){
|
||||||
|
box.hide();
|
||||||
viewManager.showCreateTaskConfigurationForFolder(wsItem, null);
|
viewManager.showCreateTaskConfigurationForFolder(wsItem, null);
|
||||||
|
|
||||||
}else if(caught instanceof WorkspaceFolderLocked){
|
}else if(caught instanceof WorkspaceFolderLocked){
|
||||||
|
|
|
@ -20,17 +20,17 @@ public class PerformRunTaskEvent extends GwtEvent<PerformRunTaskEventHandler> {
|
||||||
/** The type. */
|
/** The type. */
|
||||||
public static Type<PerformRunTaskEventHandler> TYPE = new Type<PerformRunTaskEventHandler>();
|
public static Type<PerformRunTaskEventHandler> TYPE = new Type<PerformRunTaskEventHandler>();
|
||||||
private TaskConfiguration conf;
|
private TaskConfiguration conf;
|
||||||
private WSItem folder;
|
private WSItem wsItem;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Instantiates a new perform do sync event.
|
* Instantiates a new perform run task event.
|
||||||
*
|
*
|
||||||
* @param folder the folder
|
* @param wsItem the ws item
|
||||||
* @param conf the conf
|
* @param conf the conf
|
||||||
*/
|
*/
|
||||||
public PerformRunTaskEvent(WSItem folder, TaskConfiguration conf) {
|
public PerformRunTaskEvent(WSItem wsItem, TaskConfiguration conf) {
|
||||||
this.folder = folder;
|
this.wsItem = wsItem;
|
||||||
this.conf = conf;
|
this.conf = conf;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -52,23 +52,25 @@ public class PerformRunTaskEvent extends GwtEvent<PerformRunTaskEventHandler> {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the conf.
|
* Gets the configuration.
|
||||||
*
|
*
|
||||||
* @return the conf
|
* @return the configuration
|
||||||
*/
|
*/
|
||||||
public TaskConfiguration getConf() {
|
public TaskConfiguration getConfiguration() {
|
||||||
return conf;
|
return conf;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the folder.
|
* Gets the ws item.
|
||||||
*
|
*
|
||||||
* @return the folder
|
* @return the ws item
|
||||||
*/
|
*/
|
||||||
public WSItem getFolder() {
|
public WSItem getWsItem() {
|
||||||
return folder;
|
return wsItem;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,17 +8,20 @@ import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskExecutionStatus;
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskExecutionStatus;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotConfiguredException;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotConfiguredException;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotExecutableException;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotExecutableException;
|
||||||
|
import org.gcube.common.workspacetaskexecutor.shared.exception.TaskErrorException;
|
||||||
|
import org.gcube.common.workspacetaskexecutor.shared.exception.TaskNotExecutableException;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.shared.GcubeScope;
|
import org.gcube.portlets.widgets.wstaskexecutor.shared.GcubeScope;
|
||||||
|
|
||||||
import com.google.gwt.user.client.rpc.RemoteService;
|
import com.google.gwt.user.client.rpc.RemoteService;
|
||||||
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
|
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Interface GreetingService.
|
* The Interface WsTaskExecutorWidgetService.
|
||||||
*
|
*
|
||||||
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
|
* @author Francesco Mangiacrapa at ISTI-CNR (francesco.mangiacrapa@isti.cnr.it)
|
||||||
* May 4, 2018
|
* May 16, 2018
|
||||||
*/
|
*/
|
||||||
@RemoteServiceRelativePath("workspacetaskexecutor")
|
@RemoteServiceRelativePath("workspacetaskexecutor")
|
||||||
public interface WsTaskExecutorWidgetService extends RemoteService {
|
public interface WsTaskExecutorWidgetService extends RemoteService {
|
||||||
|
@ -37,10 +40,11 @@ public interface WsTaskExecutorWidgetService extends RemoteService {
|
||||||
* @param configuration the configuration
|
* @param configuration the configuration
|
||||||
* @param taskComputation the task computation
|
* @param taskComputation the task computation
|
||||||
* @return the task execution status
|
* @return the task execution status
|
||||||
|
* @throws TaskErrorException the task error exception
|
||||||
* @throws Exception the exception
|
* @throws Exception the exception
|
||||||
*/
|
*/
|
||||||
TaskExecutionStatus monitorTaskExecutionStatus(
|
TaskExecutionStatus monitorTaskExecutionStatus(
|
||||||
TaskConfiguration configuration, TaskComputation taskComputation) throws Exception;
|
TaskConfiguration configuration, TaskComputation taskComputation) throws TaskErrorException, Exception;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -63,30 +67,50 @@ public interface WsTaskExecutorWidgetService extends RemoteService {
|
||||||
List<TaskParameterType> getAvailableParameterTypes() throws Exception;
|
List<TaskParameterType> getAvailableParameterTypes() throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param itemId
|
* Creates the task configuration.
|
||||||
* @param taskConfiguration
|
*
|
||||||
* @param isUpdate
|
* @param itemId the item id
|
||||||
* @return
|
* @param taskConfiguration the task configuration
|
||||||
* @throws Exception
|
* @param isUpdate the is update
|
||||||
|
* @return the boolean
|
||||||
|
* @throws Exception the exception
|
||||||
*/
|
*/
|
||||||
Boolean createTaskConfiguration(
|
Boolean createTaskConfiguration(
|
||||||
String itemId, TaskConfiguration taskConfiguration, boolean isUpdate)
|
String itemId, TaskConfiguration taskConfiguration, boolean isUpdate)
|
||||||
throws Exception;
|
throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param itemId
|
* Gets the item task configurations.
|
||||||
* @return
|
*
|
||||||
* @throws Exception
|
* @param itemId the item id
|
||||||
|
* @return the item task configurations
|
||||||
|
* @throws Exception the exception
|
||||||
*/
|
*/
|
||||||
List<TaskConfiguration> getItemTaskConfigurations(String itemId)
|
List<TaskConfiguration> getItemTaskConfigurations(String itemId)
|
||||||
throws Exception;
|
throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param taskConfiguration
|
* Removes the task configuration.
|
||||||
* @return
|
*
|
||||||
* @throws ItemNotExecutableException
|
* @param taskConfiguration the task configuration
|
||||||
* @throws Exception
|
* @return the boolean
|
||||||
|
* @throws ItemNotExecutableException the item not executable exception
|
||||||
|
* @throws Exception the exception
|
||||||
*/
|
*/
|
||||||
Boolean removeTaskConfiguration(TaskConfiguration taskConfiguration)
|
Boolean removeTaskConfiguration(TaskConfiguration taskConfiguration)
|
||||||
throws ItemNotExecutableException, Exception;
|
throws ItemNotExecutableException, Exception;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Execute the task.
|
||||||
|
*
|
||||||
|
* @param taskConfiguration the task configuration
|
||||||
|
* @return the task execution status
|
||||||
|
* @throws ItemNotExecutableException the item not executable exception
|
||||||
|
* @throws TaskNotExecutableException the task not executable exception
|
||||||
|
* @throws Exception the exception
|
||||||
|
*/
|
||||||
|
TaskExecutionStatus executeTheTask(TaskConfiguration taskConfiguration)
|
||||||
|
throws ItemNotExecutableException, TaskNotExecutableException,
|
||||||
|
Exception;
|
||||||
}
|
}
|
||||||
|
|
|
@ -126,4 +126,14 @@ public interface WsTaskExecutorWidgetServiceAsync {
|
||||||
*/
|
*/
|
||||||
void removeTaskConfiguration(TaskConfiguration taskConfiguration, AsyncCallback<Boolean> asyncCallback);
|
void removeTaskConfiguration(TaskConfiguration taskConfiguration, AsyncCallback<Boolean> asyncCallback);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Execute the task.
|
||||||
|
*
|
||||||
|
* @param taskConfiguration the task configuration
|
||||||
|
* @param asyncCallback the async callback
|
||||||
|
*/
|
||||||
|
void executeTheTask(TaskConfiguration taskConfiguration, AsyncCallback<TaskExecutionStatus> asyncCallback);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,7 @@ public class WsTaskExecutorWidgetViewManager {
|
||||||
|
|
||||||
MonitorFolderTaskExecutionStatusView monitor = getMonitor(wsItem);
|
MonitorFolderTaskExecutionStatusView monitor = getMonitor(wsItem);
|
||||||
if(monitor.getSchedulerTime()!=null) {
|
if(monitor.getSchedulerTime()!=null) {
|
||||||
GWT.log("Cancelling scheduler time on folder: "+wsItem.getItemId());
|
GWT.log("Cancelling scheduler time on item: "+wsItem.getItemId());
|
||||||
monitor.getSchedulerTime().cancel();
|
monitor.getSchedulerTime().cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,7 +66,7 @@ public class WsTaskExecutorWidgetViewManager {
|
||||||
try {
|
try {
|
||||||
MonitorFolderTaskExecutionStatusView monitor = cancelScheduler(wsItem);
|
MonitorFolderTaskExecutionStatusView monitor = cancelScheduler(wsItem);
|
||||||
if(monitor!=null) {
|
if(monitor!=null) {
|
||||||
GWT.log("Removed monitor for folder: "+wsItem.getItemId());
|
GWT.log("Removed monitor for item: "+wsItem.getItemId());
|
||||||
mapMonitor.remove(wsItem.getItemId());
|
mapMonitor.remove(wsItem.getItemId());
|
||||||
}
|
}
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
|
@ -116,11 +116,11 @@ public class WsTaskExecutorWidgetViewManager {
|
||||||
final WSItem folder,
|
final WSItem folder,
|
||||||
final TaskConfiguration configuration, final TaskComputation taskComputation, final List<TaskCompletedNotificationListner> taskEventsListeners) {
|
final TaskConfiguration configuration, final TaskComputation taskComputation, final List<TaskCompletedNotificationListner> taskEventsListeners) {
|
||||||
|
|
||||||
GWT.log("showMonitorSyncToFolder for folder: "+folder.getItemId());
|
GWT.log("Show Monitor TaskStatus for itemId: "+folder.getItemId());
|
||||||
|
|
||||||
final Modal box = new Modal(true);
|
final Modal box = new Modal(true);
|
||||||
box.addStyleName("ws-thredds-modal-body");
|
box.addStyleName("ws-thredds-modal-body");
|
||||||
box.setTitle("Monitor transferring of: "+FormatUtil.getFolderTitle(folder.getItemName(), 20));
|
box.setTitle("Monitor Task Execution on: "+FormatUtil.getFolderTitle(folder.getItemName(), 20));
|
||||||
box.setWidth(800);
|
box.setWidth(800);
|
||||||
box.hide(false);
|
box.hide(false);
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ public abstract class MonitorFolderTaskExecutionStatusView extends Composite {
|
||||||
*/
|
*/
|
||||||
public static final String PROCESSING_STATE = "Processing state: ";
|
public static final String PROCESSING_STATE = "Processing state: ";
|
||||||
|
|
||||||
private static final String UNKNOWN = "UNKNOWN";
|
private static final String EMPTY = "EMPTY";
|
||||||
|
|
||||||
/** The ui binder. */
|
/** The ui binder. */
|
||||||
private static MonitorFolderTaskExecutionStatusViewUiBinder uiBinder =
|
private static MonitorFolderTaskExecutionStatusViewUiBinder uiBinder =
|
||||||
|
@ -78,8 +78,8 @@ public abstract class MonitorFolderTaskExecutionStatusView extends Composite {
|
||||||
// @UiField
|
// @UiField
|
||||||
// TextBox field_transferred_items;
|
// TextBox field_transferred_items;
|
||||||
|
|
||||||
@UiField
|
// @UiField
|
||||||
TextBox field_number_error;
|
// TextBox field_number_error;
|
||||||
|
|
||||||
@UiField
|
@UiField
|
||||||
TextArea field_history_messages;
|
TextArea field_history_messages;
|
||||||
|
@ -179,11 +179,11 @@ public abstract class MonitorFolderTaskExecutionStatusView extends Composite {
|
||||||
field_loader.add(loader);
|
field_loader.add(loader);
|
||||||
|
|
||||||
this.folder = folder;
|
this.folder = folder;
|
||||||
this.field_current_message.setValue(UNKNOWN);
|
this.field_current_message.setValue(EMPTY);
|
||||||
setFieldValue(this.field_number_error, UNKNOWN);
|
//setFieldValue(this.field_number_error, UNKNOWN);
|
||||||
// setFieldValue(this.field_queued_items, UNKNOWN);
|
// setFieldValue(this.field_queued_items, UNKNOWN);
|
||||||
// setFieldValue(this.field_transferred_items, UNKNOWN);
|
// setFieldValue(this.field_transferred_items, UNKNOWN);
|
||||||
this.field_history_messages.setValue(UNKNOWN);
|
this.field_history_messages.setValue(EMPTY);
|
||||||
|
|
||||||
if(folder==null || taskExecutionStatus==null || taskExecutionStatus.getStatus()==null) {
|
if(folder==null || taskExecutionStatus==null || taskExecutionStatus.getStatus()==null) {
|
||||||
//setError(true, "Sync status error: either folder does not exist or the status is null");
|
//setError(true, "Sync status error: either folder does not exist or the status is null");
|
||||||
|
@ -206,7 +206,6 @@ public abstract class MonitorFolderTaskExecutionStatusView extends Composite {
|
||||||
field_loader.clear();
|
field_loader.clear();
|
||||||
field_loader.add(new LoaderIcon(PROCESSING_STATE+TaskStatus.INITIALIZING.toString()));
|
field_loader.add(new LoaderIcon(PROCESSING_STATE+TaskStatus.INITIALIZING.toString()));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ONGOING:
|
case ONGOING:
|
||||||
field_loader.clear();
|
field_loader.clear();
|
||||||
field_loader.add(new LoaderIcon(PROCESSING_STATE+TaskStatus.ONGOING.toString()));
|
field_loader.add(new LoaderIcon(PROCESSING_STATE+TaskStatus.ONGOING.toString()));
|
||||||
|
@ -222,7 +221,6 @@ public abstract class MonitorFolderTaskExecutionStatusView extends Composite {
|
||||||
alert.setType(AlertType.SUCCESS);
|
alert.setType(AlertType.SUCCESS);
|
||||||
field_loader.add(alert);
|
field_loader.add(alert);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CANCELLED:
|
case CANCELLED:
|
||||||
field_loader.clear();
|
field_loader.clear();
|
||||||
Alert alert1 = new Alert("Transferring " +TaskStatus.CANCELLED.toString());
|
Alert alert1 = new Alert("Transferring " +TaskStatus.CANCELLED.toString());
|
||||||
|
@ -247,8 +245,8 @@ public abstract class MonitorFolderTaskExecutionStatusView extends Composite {
|
||||||
if(taskExecutionStatus.getCurrentMessage()!=null)
|
if(taskExecutionStatus.getCurrentMessage()!=null)
|
||||||
this.field_current_message.setValue(taskExecutionStatus.getCurrentMessage());
|
this.field_current_message.setValue(taskExecutionStatus.getCurrentMessage());
|
||||||
|
|
||||||
if(taskExecutionStatus.getErrorCount()!=null)
|
// if(taskExecutionStatus.getErrorCount()!=null)
|
||||||
this.field_number_error.setValue(taskExecutionStatus.getErrorCount().toString());
|
// this.field_number_error.setValue(taskExecutionStatus.getErrorCount().toString());
|
||||||
|
|
||||||
if(taskExecutionStatus.getLog()!=null)
|
if(taskExecutionStatus.getLog()!=null)
|
||||||
this.field_history_messages.setValue(taskExecutionStatus.getLog());
|
this.field_history_messages.setValue(taskExecutionStatus.getLog());
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.myFormWidth {
|
.myFormWidth {
|
||||||
width: 750px;
|
|
||||||
}
|
}
|
||||||
</ui:style>
|
</ui:style>
|
||||||
<g:VerticalPanel>
|
<g:VerticalPanel>
|
||||||
|
@ -20,7 +19,7 @@
|
||||||
</g:HTMLPanel>
|
</g:HTMLPanel>
|
||||||
<b:ProgressBar type="DEFAULT" color="INFO" percent="0"
|
<b:ProgressBar type="DEFAULT" color="INFO" percent="0"
|
||||||
ui:field="progress_percentage" />
|
ui:field="progress_percentage" />
|
||||||
<g:HorizontalPanel addStyleNames="myMarginLeft">
|
<!-- <g:HorizontalPanel addStyleNames="myMarginLeft"> -->
|
||||||
<!-- <b:ControlGroup ui:field="cg_queued_items" addStyleNames="myLittleMarginLeft"> -->
|
<!-- <b:ControlGroup ui:field="cg_queued_items" addStyleNames="myLittleMarginLeft"> -->
|
||||||
<!-- <b:ControlLabel for="cl_queued_items">Items in queue</b:ControlLabel> -->
|
<!-- <b:ControlLabel for="cl_queued_items">Items in queue</b:ControlLabel> -->
|
||||||
<!-- <b:Controls> -->
|
<!-- <b:Controls> -->
|
||||||
|
@ -36,14 +35,14 @@
|
||||||
<!-- </b:TextBox> -->
|
<!-- </b:TextBox> -->
|
||||||
<!-- </b:Controls> -->
|
<!-- </b:Controls> -->
|
||||||
<!-- </b:ControlGroup> -->
|
<!-- </b:ControlGroup> -->
|
||||||
<b:ControlGroup ui:field="cg_number_error" addStyleNames="myLittleMarginLeft">
|
<!-- <b:ControlGroup ui:field="cg_number_error" addStyleNames="myLittleMarginLeft"> -->
|
||||||
<b:ControlLabel for="cl_number_error">Number of Errors</b:ControlLabel>
|
<!-- <b:ControlLabel for="cl_number_error">Number of Errors</b:ControlLabel> -->
|
||||||
<b:Controls>
|
<!-- <b:Controls> -->
|
||||||
<b:TextBox b:id="field_number_error" ui:field="field_number_error"
|
<!-- <b:TextBox b:id="field_number_error" ui:field="field_number_error" -->
|
||||||
readOnly="true" addStyleNames="myLittleWidth"></b:TextBox>
|
<!-- readOnly="true" addStyleNames="myLittleWidth"></b:TextBox> -->
|
||||||
</b:Controls>
|
<!-- </b:Controls> -->
|
||||||
</b:ControlGroup>
|
<!-- </b:ControlGroup> -->
|
||||||
</g:HorizontalPanel>
|
<!-- </g:HorizontalPanel> -->
|
||||||
<b:Form type="HORIZONTAL" addStyleNames="myFormWidth"
|
<b:Form type="HORIZONTAL" addStyleNames="myFormWidth"
|
||||||
ui:field="field_form">
|
ui:field="field_form">
|
||||||
<b:Fieldset styleName="{style.noBorder}">
|
<b:Fieldset styleName="{style.noBorder}">
|
||||||
|
|
|
@ -7,6 +7,7 @@ import java.util.List;
|
||||||
|
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration;
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.WsTaskExecutorWidget;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.WsTaskExecutorWidget;
|
||||||
|
import org.gcube.portlets.widgets.wstaskexecutor.client.event.PerformRunTaskEvent;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.event.ShowCreateTaskConfigurationDialogEvent;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.event.ShowCreateTaskConfigurationDialogEvent;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.event.ShowCreateTaskConfigurationDialogEvent.Operation;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.event.ShowCreateTaskConfigurationDialogEvent.Operation;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.shared.WSItem;
|
import org.gcube.portlets.widgets.wstaskexecutor.shared.WSItem;
|
||||||
|
@ -97,9 +98,9 @@ public abstract class ShowTaskConfigurationsView extends Composite {
|
||||||
HTML h2 = new HTML("<b>VRE<b>");
|
HTML h2 = new HTML("<b>VRE<b>");
|
||||||
flex_table_configurations.setWidget(0, 2, h2);
|
flex_table_configurations.setWidget(0, 2, h2);
|
||||||
flex_table_configurations.setWidget(0, 3, new HTML("<b>Owner<b>"));
|
flex_table_configurations.setWidget(0, 3, new HTML("<b>Owner<b>"));
|
||||||
flex_table_configurations.setWidget(0, 4, new HTML("<b>Oper.<b>"));
|
flex_table_configurations.setWidget(0, 4, new HTML("<b>Run<b>"));
|
||||||
flex_table_configurations.setWidget(0, 5, new HTML("<b>Oper.<b>"));
|
flex_table_configurations.setWidget(0, 5, new HTML("<b>Edit<b>"));
|
||||||
flex_table_configurations.setWidget(0, 6, new HTML("<b>Oper.<b>"));
|
flex_table_configurations.setWidget(0, 6, new HTML("<b>Del.<b>"));
|
||||||
//flex_table_configurations.getColumnFormatter().setWidth(0, "10%");
|
//flex_table_configurations.getColumnFormatter().setWidth(0, "10%");
|
||||||
flex_table_configurations.getColumnFormatter().setWidth(0, "31%");
|
flex_table_configurations.getColumnFormatter().setWidth(0, "31%");
|
||||||
flex_table_configurations.getColumnFormatter().setWidth(1, "6%");
|
flex_table_configurations.getColumnFormatter().setWidth(1, "6%");
|
||||||
|
@ -116,7 +117,12 @@ public abstract class ShowTaskConfigurationsView extends Composite {
|
||||||
//flex_table_configurations.setWidget(i+1, 0, new HTML(taskConfiguration.getConfigurationKey()));
|
//flex_table_configurations.setWidget(i+1, 0, new HTML(taskConfiguration.getConfigurationKey()));
|
||||||
String operatorID = taskConfiguration.getTaskId();
|
String operatorID = taskConfiguration.getTaskId();
|
||||||
if(operatorID.length()>MAX_LENGHT_TEXT){
|
if(operatorID.length()>MAX_LENGHT_TEXT){
|
||||||
operatorID = "..."+operatorID.substring(operatorID.length()-MAX_LENGHT_TEXT, operatorID.length());
|
int algNameIndexStart = operatorID.lastIndexOf(".")+1;
|
||||||
|
String algName = operatorID.substring(algNameIndexStart, operatorID.length());
|
||||||
|
if(algName.length()>MAX_LENGHT_TEXT)
|
||||||
|
operatorID = "..."+operatorID.substring(operatorID.length()-MAX_LENGHT_TEXT, operatorID.length());
|
||||||
|
else
|
||||||
|
operatorID = algName;
|
||||||
}
|
}
|
||||||
HTML aId=new HTML(operatorID);
|
HTML aId=new HTML(operatorID);
|
||||||
aId.setTitle(taskConfiguration.getTaskId());
|
aId.setTitle(taskConfiguration.getTaskId());
|
||||||
|
@ -138,7 +144,7 @@ public abstract class ShowTaskConfigurationsView extends Composite {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onClick(ClickEvent event) {
|
public void onClick(ClickEvent event) {
|
||||||
|
WsTaskExecutorWidget.eventBus.fireEvent(new PerformRunTaskEvent(wsItem,taskConfiguration));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,8 @@ import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskExecutionStatus;
|
import org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskExecutionStatus;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotConfiguredException;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotConfiguredException;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotExecutableException;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.ItemNotExecutableException;
|
||||||
|
import org.gcube.common.workspacetaskexecutor.shared.exception.TaskErrorException;
|
||||||
|
import org.gcube.common.workspacetaskexecutor.shared.exception.TaskNotExecutableException;
|
||||||
import org.gcube.common.workspacetaskexecutor.shared.exception.WorkspaceFolderLocked;
|
import org.gcube.common.workspacetaskexecutor.shared.exception.WorkspaceFolderLocked;
|
||||||
import org.gcube.common.workspacetaskexecutor.util.EncrypterUtil;
|
import org.gcube.common.workspacetaskexecutor.util.EncrypterUtil;
|
||||||
import org.gcube.portlets.widgets.wstaskexecutor.client.rpc.WsTaskExecutorWidgetService;
|
import org.gcube.portlets.widgets.wstaskexecutor.client.rpc.WsTaskExecutorWidgetService;
|
||||||
|
@ -209,18 +211,6 @@ public class WsTaskExecutorWidgetServiceImpl extends RemoteServiceServlet implem
|
||||||
return exec.getParameterTypes();
|
return exec.getParameterTypes();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.gcube.portlets.widgets.wstaskexecutor.client.rpc.WsTaskExecutorWidgetService#monitorTaskExecutionStatus(org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration, org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskComputation)
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public TaskExecutionStatus monitorTaskExecutionStatus(
|
|
||||||
TaskConfiguration configuration, TaskComputation taskComputation)
|
|
||||||
throws Exception {
|
|
||||||
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates the task configuration.
|
* Creates the task configuration.
|
||||||
|
@ -293,4 +283,25 @@ public class WsTaskExecutorWidgetServiceImpl extends RemoteServiceServlet implem
|
||||||
return confs;
|
return confs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.gcube.portlets.widgets.wstaskexecutor.client.rpc.WsTaskExecutorWidgetService#executeTheTask(org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public TaskExecutionStatus executeTheTask(TaskConfiguration taskConfiguration) throws ItemNotExecutableException, TaskNotExecutableException, Exception {
|
||||||
|
|
||||||
|
WorkspaceDataMinerTaskExecutor exec = getTaskExecutor();
|
||||||
|
return exec.executeRun(taskConfiguration);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.gcube.portlets.widgets.wstaskexecutor.client.rpc.WsTaskExecutorWidgetService#monitorTaskExecutionStatus(org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskConfiguration, org.gcube.common.workspacetaskexecutor.shared.dataminer.TaskComputation)
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public TaskExecutionStatus monitorTaskExecutionStatus(
|
||||||
|
TaskConfiguration configuration, TaskComputation taskComputation)
|
||||||
|
throws TaskErrorException, Exception{
|
||||||
|
WorkspaceDataMinerTaskExecutor exec = getTaskExecutor();
|
||||||
|
return exec.monitorRunStatus(configuration, taskComputation);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue