public static ErrorDetails getErrorDetails (ErrorDetailResource resource){ if (resource != null){ ErrorDetails errorDetails = new ErrorDetails(); errorDetails.setErrorID(String.valueOf(resource.getErrorId())); errorDetails.setCreationTime(resource.getCreationTime().getTime()); errorDetails.setActualErrorMessage(resource.getActualErrorMsg()); errorDetails.setUserFriendlyMessage(resource.getUserFriendlyErrorMsg()); errorDetails.setErrorCategory(ErrorCategory.valueOf(resource.getErrorCategory())); errorDetails.setTransientOrPersistent(resource.isTransientPersistent()); errorDetails.setCorrectiveAction(CorrectiveAction.valueOf(resource.getCorrectiveAction())); errorDetails.setActionableGroup(ActionableGroup.valueOf(resource.getActionableGroup())); return errorDetails; } return null; }
public static AdvancedOutputDataHandling getAdvanceOutputDataHandling(AdvancedOutputDataHandlingResource adodh){ if (adodh != null){ AdvancedOutputDataHandling outputDataHandling = new AdvancedOutputDataHandling(); outputDataHandling.setOutputDataDir(adodh.getOutputDataDir()); outputDataHandling.setDataRegistryURL(adodh.getDataRegUrl()); outputDataHandling.setPersistOutputData(adodh.isPersistOutputData()); return outputDataHandling; } return null; }
public static QualityOfServiceParams getQOSParams (QosParamResource qos){ if (qos != null){ QualityOfServiceParams qosParams = new QualityOfServiceParams(); qosParams.setStartExecutionAt(qos.getStartExecutionAt()); qosParams.setExecuteBefore(qos.getExecuteBefore()); qosParams.setNumberofRetries(qos.getNoOfRetries()); return qosParams; } return null; }
private void publishJobStatusChange(JobExecutionContext jobExecutionContext) { JobStatusChangeRequestEvent jobStatus = new JobStatusChangeRequestEvent(); JobIdentifier jobIdentity = new JobIdentifier(jobExecutionContext.getJobDetails().getJobID(), jobExecutionContext.getTaskData().getTaskID(), jobExecutionContext.getWorkflowNodeDetails().getNodeInstanceId(), jobExecutionContext.getExperimentID(), jobExecutionContext.getGatewayID()); jobStatus.setJobIdentity(jobIdentity); jobStatus.setState(jobExecutionContext.getJobDetails().getJobStatus().getJobState()); // we have this JobStatus class to handle amqp monitoring log.debugId(jobStatus.getJobIdentity().getJobId(), "[EJM]: Published job status(" + jobExecutionContext.getJobDetails().getJobStatus().getJobState().toString() + ") change request, " + "experiment {} , task {}", jobStatus.getJobIdentity().getExperimentId(), jobStatus.getJobIdentity().getTaskId()); BetterGfacImpl.getMonitorPublisher().publish(jobStatus); }
private void sendNotification(JobExecutionContext jobExecutionContext, JobState status) { JobStatusChangeRequestEvent jobStatus = new JobStatusChangeRequestEvent(); JobIdentifier jobIdentity = new JobIdentifier(jobExecutionContext.getJobDetails().getJobID(), jobExecutionContext.getTaskData().getTaskID(), jobExecutionContext.getWorkflowNodeDetails().getNodeInstanceId(), jobExecutionContext.getExperimentID(), jobExecutionContext.getGatewayID()); jobStatus.setJobIdentity(jobIdentity); jobStatus.setState(status); log.debug(jobStatus.getJobIdentity().getJobId(), "Published job status change request, " + "experiment {} , task {}", jobStatus.getJobIdentity().getExperimentId(), jobStatus.getJobIdentity().getTaskId()); monitorPublisher.publish(jobStatus); } }
public static WorkflowNodeDetails getWorkflowNodeDetails(WorkflowNodeDetailResource nodeDetailResource) throws RegistryException { if (nodeDetailResource != null){ WorkflowNodeDetails wfNode = new WorkflowNodeDetails(); wfNode.setNodeInstanceId(nodeDetailResource.getNodeInstanceId()); wfNode.setCreationTime(nodeDetailResource.getCreationTime().getTime()); wfNode.setNodeName(nodeDetailResource.getNodeName()); List<NodeInputResource> nodeInputs = nodeDetailResource.getNodeInputs(); wfNode.setNodeInputs(getNodeInputs(nodeInputs)); List<NodeOutputResource> nodeOutputs = nodeDetailResource.getNodeOutputs(); wfNode.setNodeOutputs(getNodeOutputs(nodeOutputs)); List<TaskDetailResource> taskDetails = nodeDetailResource.getTaskDetails(); wfNode.setTaskDetailsList(getTaskDetailsList(taskDetails)); wfNode.setWorkflowNodeStatus(getWorkflowNodeStatus(nodeDetailResource.getWorkflowNodeStatus())); List<ErrorDetailResource> errorDetails = nodeDetailResource.getErrorDetails(); wfNode.setErrors(getErrorDetailList(errorDetails)); wfNode.setExecutionUnit(ExecutionUnit.valueOf(nodeDetailResource.getExecutionUnit())); wfNode.setExecutionUnitData(nodeDetailResource.getExecutionUnitData()); return wfNode; } return null; }
private TaskDetails createTaskDetails(Node node) throws RegistryException { setupNodeDetailsInput(node, nodeInstanceList.get(node)); TaskDetails taskDetails = ExperimentModelUtil.cloneTaskFromWorkflowNodeDetails(experiment, nodeInstanceList.get(node)); taskDetails.setTaskID(getRegistry().add(ChildDataType.TASK_DETAIL, taskDetails,nodeInstanceList.get(node).getNodeInstanceId()).toString()); addToAwaitingTaskList(taskDetails.getTaskID(), node); return taskDetails; }
public static DataTransferDetails getDataTransferDetail (DataTransferDetailResource resource) throws RegistryException { if (resource != null){ DataTransferDetails details = new DataTransferDetails(); details.setTransferID(resource.getTransferId()); details.setCreationTime(resource.getCreationTime().getTime()); details.setTransferDescription(resource.getTransferDescription()); details.setTransferStatus(getTransferStatus(resource.getDataTransferStatus())); return details; } return null; }
public static TransferStatus getTransferStatus (StatusResource status){ if (status != null){ TransferStatus transferStatus = new TransferStatus(); if (status.getState() == null || status.getState().equals("")){ status.setState("UNKNOWN"); } transferStatus.setTransferState(TransferState.valueOf(status.getState())); transferStatus.setTimeOfStateChange(status.getStatusUpdateTime().getTime()); return transferStatus; } return null; }
public List<String> getTaskDetailIds(String fieldName, Object value) throws RegistryException { List<String> taskDetailIds = new ArrayList<String>(); List<TaskDetails> taskDetails = getTaskDetails(fieldName, value); for (TaskDetails td : taskDetails) { taskDetailIds.add(td.getTaskID()); } return taskDetailIds; }
private void updateWorkflowNodeStatus(WorkflowNodeDetails node, WorkflowNodeState state) throws RegistryException{ WorkflowNodeStatus status = ExperimentModelUtil.createWorkflowNodeStatus(state); node.setWorkflowNodeStatus(status); getRegistry().update(RegistryModelType.WORKFLOW_NODE_STATUS, status, node.getNodeInstanceId()); }
public List<String> getJobDetailIds(String fieldName, Object value) throws RegistryException { List<String> jobIds = new ArrayList<String>(); List<JobDetails> jobDetails = getJobDetails(fieldName, value); for (JobDetails jd : jobDetails) { jobIds.add(jd.getJobID()); } return jobIds; }
public static AdvancedInputDataHandling getAdvanceInputDataHandling(AdvanceInputDataHandlingResource adhr){ if (adhr != null){ AdvancedInputDataHandling adih = new AdvancedInputDataHandling(); adih.setStageInputFilesToWorkingDir(adhr.isStageInputFiles()); adih.setParentWorkingDirectory(adhr.getWorkingDirParent()); adih.setUniqueWorkingDirectory(adhr.getWorkingDir()); adih.setCleanUpWorkingDirAfterJob(adhr.isCleanAfterJob()); return adih; } return null; }
public static JobStatus getJobStatus (StatusResource status){ if (status != null){ JobStatus jobStatus = new JobStatus(); if (status.getState() == null || status.getState().equals("")){ status.setState("UNKNOWN"); } jobStatus.setJobState(JobState.valueOf(status.getState())); jobStatus.setTimeOfStateChange(status.getStatusUpdateTime().getTime()); return jobStatus; } return null; }
public List<String> getWorkflowNodeIds(String fieldName, Object value) throws RegistryException { List<String> wfIds = new ArrayList<String>(); List<WorkflowNodeDetails> wfNodeDetails = getWFNodeDetails(fieldName, value); for (WorkflowNodeDetails wf : wfNodeDetails) { wfIds.add(wf.getNodeInstanceId()); } return wfIds; }
public static WorkflowNodeStatus getWorkflowNodeStatus (StatusResource status){ if (status != null){ WorkflowNodeStatus workflowNodeStatus = new WorkflowNodeStatus(); if (status.getState() == null || status.getState().equals("")){ status.setState("UNKNOWN"); } workflowNodeStatus.setWorkflowNodeState(WorkflowNodeState.valueOf(status.getState())); workflowNodeStatus.setTimeOfStateChange(status.getStatusUpdateTime().getTime()); return workflowNodeStatus; } return null; }
public static ExperimentStatus getExperimentStatus(StatusResource status){ if (status != null){ ExperimentStatus experimentStatus = new ExperimentStatus(); if (status.getState() == null || status.getState().equals("")){ status.setState("UNKNOWN"); } experimentStatus.setExperimentState(ExperimentState.valueOf(status.getState())); experimentStatus.setTimeOfStateChange(status.getStatusUpdateTime().getTime()); return experimentStatus; } return null; }
public static TaskStatus getTaskStatus (StatusResource status){ if (status != null){ TaskStatus taskStatus = new TaskStatus(); if (status.getState() == null || status.getState().equals("")){ status.setState("UNKNOWN"); } taskStatus.setExecutionState(TaskState.valueOf(status.getState())); taskStatus.setTimeOfStateChange(status.getStatusUpdateTime().getTime()); return taskStatus; } return null; }
public List<String> getTransferDetailIds(String fieldName, Object value) throws RegistryException { List<String> transferIds = new ArrayList<String>(); List<DataTransferDetails> dataTransferDetails = getDataTransferDetails(fieldName, value); for (DataTransferDetails dtd : dataTransferDetails) { transferIds.add(dtd.getTransferID()); } return transferIds; }
private String createInvokerForEachSingleWSNode(Node foreachWSNode, WSComponent wsComponent) throws WorkflowException, RegistryException, TException { TaskDetails taskDetails = createTaskDetails(foreachWSNode); getOrchestratorClient().launchTask(taskDetails.getTaskID(), getCredentialStoreToken()); return taskDetails.getTaskID(); }