org.embl.ebi.escience.scufl.enactor
Interface ResumableEnactorProxy

All Superinterfaces:
EnactorProxy

public interface ResumableEnactorProxy
extends EnactorProxy

Extends the EnactorProxy interface with the addition of methods to allow the location of and connection to previously submitted workflow instances. This is intended to allow, for example, a long running workflow submitted using the workbench to be examined some weeks later for results. This interface really only applies to remote enactors, an in process one is pretty much by definition not going to support this functionality.

Author:
Tom Oinn

Method Summary
 WorkflowInstance connectToWorkflow(java.lang.String workflowInstanceID)
          Get a WorkflowInstance implementation corresponding to the running workflow with the supplied identifier.
 java.lang.String[] getWorkflowInstanceIDList()
          Get a list of all the known workflow instances, subject to authentication and security constraints, that the enactor represented by this proxy is aware of.
 
Methods inherited from interface org.embl.ebi.escience.scufl.enactor.EnactorProxy
compileWorkflow, compileWorkflow
 

Method Detail

getWorkflowInstanceIDList

java.lang.String[] getWorkflowInstanceIDList()
Get a list of all the known workflow instances, subject to authentication and security constraints, that the enactor represented by this proxy is aware of. It is expected that the creation of the proxy implementation will involve specification of user authorities or identities and that these identities will be used to only present the user of this API with those workflow instance keys that they have permission to connect to.

Returns:
String[] containing the identifiers of all visible workflow instances within this enactor

connectToWorkflow

WorkflowInstance connectToWorkflow(java.lang.String workflowInstanceID)
                                   throws UnknownWorkflowInstanceException
Get a WorkflowInstance implementation corresponding to the running workflow with the supplied identifier. The identifier scheme is up to the implementation, we would suggest use of LSID but this is not mandated by this specification.

Returns:
WorkflowInstance implementation for the supplied workflow identifier
Throws:
UnknownWorkflowInstanceException - if the proxy does not know about the supplied identifier, or if the calling user doesn not have the permissions required to connect to it.