public class POJOWorkflowDefinition extends WorkflowDefinition
| Constructor and Description |
|---|
POJOWorkflowDefinition(Object workflowImplmentationInstance,
com.amazonaws.services.simpleworkflow.flow.pojo.MethodConverterPair workflowImplementationMethod,
Map<String,com.amazonaws.services.simpleworkflow.flow.pojo.MethodConverterPair> signals,
com.amazonaws.services.simpleworkflow.flow.pojo.MethodConverterPair getStateMethod,
DataConverter converter,
DecisionContext context) |
| Modifier and Type | Method and Description |
|---|---|
Promise<String> |
execute(String input)
Asynchronous method that implements workflow business logic.
|
Object |
getImplementationInstance() |
String |
getWorkflowState()
Return state that is inserted decision completion through
RespondDecisionTaskCompletedRequest.setExecutionContext(String)
and later can be retrieved through
AmazonSimpleWorkflow.describeWorkflowExecution(com.amazonaws.services.simpleworkflow.model.DescribeWorkflowExecutionRequest)
visibility call. |
void |
signalRecieved(String signalName,
String details)
Asynchronous method that implements signals handling logic.
|
public POJOWorkflowDefinition(Object workflowImplmentationInstance, com.amazonaws.services.simpleworkflow.flow.pojo.MethodConverterPair workflowImplementationMethod, Map<String,com.amazonaws.services.simpleworkflow.flow.pojo.MethodConverterPair> signals, com.amazonaws.services.simpleworkflow.flow.pojo.MethodConverterPair getStateMethod, DataConverter converter, DecisionContext context) throws ClassNotFoundException, SecurityException, NoSuchMethodException, NoSuchFieldException
public Promise<String> execute(String input) throws WorkflowException
WorkflowDefinitionTryCatchFinally. Workflow is
completed when TryCatchFinally.doFinally() is executed. So even
if return Promise of the method is ready but there is some
asynchronous task or activity still not completed workflow is not going
to complete.execute in class WorkflowDefinitioninput - Data passed to the worklfow instance during start instance
call.WorkflowException - Prefer throwing WorkflowException.public void signalRecieved(String signalName, String details) throws WorkflowException
WorkflowDefinitionTryCatchFinally
that is used to execute workflow. It means that non handled failure
inside this method causes workflow execution failure.signalRecieved in class WorkflowDefinitionWorkflowExceptionpublic String getWorkflowState() throws WorkflowException
WorkflowDefinitionRespondDecisionTaskCompletedRequest.setExecutionContext(String)
and later can be retrieved through
AmazonSimpleWorkflow.describeWorkflowExecution(com.amazonaws.services.simpleworkflow.model.DescribeWorkflowExecutionRequest)
visibility call.
Implementation of this call is expected to be synchronous and is not
allowed to invoke any asynchronous operations like creation of new
Task or calling methods marked with Asynchronous
annotation. It is also expected to be read only operation which is not
allowed to modify state of workflow in any way.getWorkflowState in class WorkflowDefinitionWorkflowExceptionpublic Object getImplementationInstance()
Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.