本文整理了Java中org.embl.ebi.escience.scufl.enactor.WorkflowInstance
类的一些代码示例,展示了WorkflowInstance
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。WorkflowInstance
类的具体详情如下:
包路径:org.embl.ebi.escience.scufl.enactor.WorkflowInstance
类名称:WorkflowInstance
暂无
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
public String toString() {
StringBuffer sb = new StringBuffer();
sb.append("Workflow '" + workflowInstance.getID()
+ "' completed with outputs\n");
Map outputs = workflowInstance.getOutput();
for (Iterator i = outputs.keySet().iterator(); i.hasNext();) {
String outputName = (String) i.next();
DataThing outputValue = (DataThing) outputs.get(outputName);
String outputLSID = outputValue
.getLSID(outputValue.getDataObject());
sb.append(" " + outputLSID + "->'" + outputName + "'\n");
}
return sb.toString();
}
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
public void onDispose() {
try {
workflowEditor.detachFromModel();
// In case it is still running, we'll stop it
workflowInstance.cancelExecution();
// FIXME: Is this the right place to destroy? What about
// other people attached to the workflow instance?
// (We must destroy() it somewhere, otherwise it will float
// around and reference among other things our possibly large
// input data)
workflowInstance.destroy();
// And remove our reference to it
workflowInstance = null;
theModel.removeListeners();
theModel = null;
} catch (Exception e) {
logger.error("Could not detach EnactorInvocation", e);
}
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
/**
* Get the status text for this invocation
*/
public String getStatusText() {
return workflowInstance.getProgressReportXMLString();
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl/scufl-workflow
UserContext context = parentInstance.getUserContext();
WorkflowInstance wfInstance = defaultEnactor.compileWorkflow(
theNestedModel, inputMap, context);
wfInstance.destroy();
throw new IllegalStateException(
"execute() called while still running nested workflow");
if (workflowInstance!=null) {
workflowInstance.destroy();
.addWorkflowStateListener(new WorkflowFinishedListener(
taskThread));
workflowInstance.run();
} catch (Exception e) {
String msg = "Nested workflow failed in task, error message was: "
.getState(workflowInstance.getStatus());
return workflowInstance.getOutput();
} else if (workflowState.equals(WorkflowState.FAILED)) {
throw new TaskExecutionException(
"Nested workflow failed in task, error message was : "
+ workflowInstance.getErrorMessage());
} else if (workflowState.equals(WorkflowState.CANCELLED)) {
return new HashMap();
代码示例来源:origin: uk.org.mygrid.taverna.scufl/scufl-tools
workflowInstance.run();
synchronized (lock) {
try {
.getProgressReportXMLString();
result = workflowInstance.getOutput();
} finally {
WorkflowEventDispatcher.DISPATCHER
.removeListener(completionListener);
workflowInstance.destroy();
代码示例来源:origin: uk.org.mygrid.provenance/logbook
workflowInstance, inputs,
"urn:lsid:www.mygrid.org.uk:operation:660KZBTN7D2");
System.out.println("Workflow Run Id = " + workflowInstance.getID());
processors = model.getProcessors();
Map<String, DataThing> inputsFirstProcessor = new HashMap<String, DataThing>();
outputIterationMap.put("uniprot2GOReturn", outputDataThing);
Map<String, DataThing> workflowOutputMap = workflowInstance.getOutput();
workflowOutputMap.put("GOId", largeDataThing);
WorkflowCompletionEvent workflowCompletionEvent = new WorkflowCompletionEvent(
workflowInstance.destroy();
代码示例来源:origin: uk.org.mygrid.taverna.scufl/scufl-ui
thing = (DataThing)instance.getOutput().get(link.getSink().getName());
Map[] maps = instance.getIntermediateResultsForProcessor(link.getSink()
.getProcessor().getName());
Map outputs = maps[0];
Map[] maps = instance.getIntermediateResultsForProcessor(processor.getName());
Map outputs = maps[1];
thing = (DataThing) outputs.get(link.getSource().getName());
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/workflow-input-panel
/**
* Immediately execute workflow. Workflow is submitted to the enactor with the
* given input values, and invocation is initiated. Switches to the
* @link{EnactPerspective}.
*
* @param workflow Workflow to run
* @param inputs Map of input values to run the workflow with
* @throws
*/
public static void executeWorkflow(ScuflModel workflow, Map<String, DataThing> inputs) {
EnactorProxy enactor = FreefluoEnactorProxy.getInstance();
WorkflowInstance instance;
try {
instance = enactor.compileWorkflow(workflow, inputs,
EnactorInvocation.USERCONTEXT);
} catch (WorkflowSubmissionException e) {
logger.error("Could not compile workflow " + workflow, e);
return;
}
logger.debug("Compiled workflow " + instance);
ModelMap.getInstance().setModel(instance.getID(), instance);
logger.info("Running the workflow " + instance);
try {
instance.run();
} catch (InvalidInputException e) {
logger.warn("Could not run workflow " + instance, e);
}
}
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
DISPATCHER.fireEvent(completionEvent);
if (nestedWorkflow != null) {
nestedWorkflow.destroy();
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
public String toString() {
return "Workflow '" + workflowInstance.getID()
+ "' failed or cancelled\n";
}
}
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
/**
* Override toString()
*/
public String toString() {
StringBuffer sb = new StringBuffer();
sb.append("Workflow '" + workflowInstance.getID()
+ "' created with " + inputs.size() + " input"
+ (inputs.size() != 1 ? "s" : "") + "\n");
for (Iterator i = inputs.keySet().iterator(); i.hasNext();) {
String inputName = (String) i.next();
DataThing inputValue = (DataThing) inputs.get(inputName);
String inputLSID = inputValue.getLSID(inputValue.getDataObject());
sb.append(" '" + inputName + "'->" + inputLSID + "\n");
}
sb.append("Created from workflow definition "
+ model.getDescription().getLSID() + "\n");
UserContext workflowContext = workflowInstance.getUserContext();
if (workflowContext == null) {
sb.append("No user context supplied\n");
} else {
sb.append("Workflow context :\n");
sb.append(" 'Person'->" + workflowContext.getPersonLSID() + "\n");
sb.append(" 'ExperimentDesign'->"
+ workflowContext.getExperimentDesignLSID() + "\n");
sb.append(" 'Organization'->"
+ workflowContext.getOrganizationLSID() + "\n");
}
return sb.toString();
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
Map<String, DataThing> resultMap = workflowInstance.getOutput();
ResultMapSaveSPI[] savePlugins = ResultMapSaveRegistry.plugins();
for (int i = 0; i < savePlugins.length; i++) {
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
public void showResultTable() {
if (MyGridConfiguration.getProperty("taverna.resulttable.enable") == null) {
return;
}
try {
int sizeLimit = 128000;
try {
sizeLimit = Integer.parseInt(MyGridConfiguration
.getProperty("taverna.resulttable.sizelimit"));
} catch (NumberFormatException ex) {
logger.error("Could not set taverna.resulttable.sizelimit", ex);
}
if (workflowInstance.getProvenanceXMLString().length() < sizeLimit) {
tabs.add("Result Table", new JScrollPane(new ResultTablePanel(
theModel, workflowInstance)));
}
} catch (RuntimeException e) {
// The above can cause a NPE, we need to track this down
// FIXME
logger.error("Could not show results", e);
}
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
/**
* Ensure that the results have been retrieved. This is code factored out
* from showResults().
*/
protected void ensureGotResults() {
try {
logger.debug("Getting results");
while (true) {
if (workflowInstance.getStatus().equalsIgnoreCase("Complete")) {
break;
}
// logger.debug(workflowInstance.getStatus());
// results = workflowInstance.getOutputXMLString();
// if (results.equals("") == false) {
// break;
Thread.sleep(200);
}
} catch (InterruptedException ie) {
// todo: ugly hack - I didn't want to change the logic just incase
// but shouldn't the try be close on the sleep()?
resultsText.setText("No results available : " + ie.toString());
}
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
try {
intermediateResultMaps = workflowInstance
.getIntermediateResultsForProcessor(processorName);
} catch (UnknownProcessorException ex) {
logger.error("Unknown processor " + processorName, ex);
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
DISPATCHER.fireEvent(event);
if (nestedWorkflow != null) {
nestedWorkflow.destroy();
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
public String toString() {
return "Workflow '" + workflowInstance.getID()
+ "' is to be destructed\n";
}
代码示例来源:origin: uk.org.mygrid.taverna.scufl/scufl-ui
provenance = parseProvenance(instance.getProvenanceXMLString());
代码示例来源:origin: uk.org.mygrid.taverna/taverna-enactor
nestedWorkflow));
if (nestedWorkflow != null) {
nestedWorkflow.destroy();
代码示例来源:origin: uk.org.mygrid.taverna.scufl.scufl-ui-components/enactor-invocation
public void actionPerformed(ActionEvent e) {
if (runningWorkflows.size()!=0) {
JOptionPane.showMessageDialog(EnactorInvocation.this, "Sorry, unable to close whilst other workflows are running","Unable to close results",JOptionPane.OK_OPTION);
}
else {
int r=JOptionPane.showConfirmDialog(EnactorInvocation.this, "Are you sure you wish to close this workflow run?","Close workflow run?",JOptionPane.YES_NO_OPTION);
if (r==JOptionPane.YES_OPTION) {
ModelMap.getInstance().setModel(workflowInstance.getID(), null);
}
}
}
内容来源于网络,如有侵权,请联系作者删除!