public interface WorkflowService
Modifier and Type | Method and Description |
---|---|
void |
decideWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
Starts the decision task for a workflow.
|
void |
deleteWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId,
boolean archiveWorkflow)
Removes the workflow from the system.
|
com.netflix.conductor.common.run.Workflow |
getExecutionStatus(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId,
boolean includeTasks)
Gets the workflow by workflow Id.
|
com.netflix.conductor.common.run.ExternalStorageLocation |
getExternalStorageLocation(java.lang.String path,
java.lang.String operation,
java.lang.String payloadType)
Get the external storage location where the workflow input payload is stored/to be stored
|
java.util.List<java.lang.String> |
getRunningWorkflows(@NotEmpty(message="Workflow name cannot be null or empty.") java.lang.String workflowName,
java.lang.Integer version,
java.lang.Long startTime,
java.lang.Long endTime)
Retrieves all the running workflows.
|
java.util.Map<java.lang.String,java.util.List<com.netflix.conductor.common.run.Workflow>> |
getWorkflows(@NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name,
boolean includeClosed,
boolean includeTasks,
java.util.List<java.lang.String> correlationIds)
Lists workflows for the given correlation id.
|
java.util.List<com.netflix.conductor.common.run.Workflow> |
getWorkflows(@NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name,
java.lang.String correlationId,
boolean includeClosed,
boolean includeTasks)
Lists workflows for the given correlation id.
|
void |
pauseWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
Pauses the workflow given a worklfowId.
|
java.lang.String |
rerunWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId,
@NotNull(message="RerunWorkflowRequest cannot be null.") com.netflix.conductor.common.metadata.workflow.RerunWorkflowRequest request)
Reruns the workflow from a specific task.
|
void |
resetWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
Resets callback times of all in_progress tasks to 0.
|
void |
restartWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId,
boolean useLatestDefinitions)
Restarts a completed workflow.
|
void |
resumeWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
Resumes the workflow.
|
void |
retryWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
Retries the last failed task.
|
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> |
searchWorkflows(int start,
@Max(value=5000L,message="Cannot return more than {value} workflows. Please use pagination.") int size,
java.util.List<java.lang.String> sort,
java.lang.String freeText,
java.lang.String query)
Search for workflows based on payload and given parameters.
|
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> |
searchWorkflows(int start,
@Max(value=5000L,message="Cannot return more than {value} workflows. Please use pagination.") int size,
java.lang.String sort,
java.lang.String freeText,
java.lang.String query)
Search for workflows based on payload and given parameters.
|
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> |
searchWorkflowsByTasks(int start,
int size,
java.util.List<java.lang.String> sort,
java.lang.String freeText,
java.lang.String query)
Search for workflows based on task parameters.
|
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> |
searchWorkflowsByTasks(int start,
int size,
java.lang.String sort,
java.lang.String freeText,
java.lang.String query)
Search for workflows based on task parameters.
|
void |
skipTaskFromWorkflow(@NotEmpty(message="WorkflowId name cannot be null or empty.") java.lang.String workflowId,
@NotEmpty(message="TaskReferenceName cannot be null or empty.") java.lang.String taskReferenceName,
com.netflix.conductor.common.metadata.workflow.SkipTaskRequest skipTaskRequest)
Skips a given task from a current running workflow.
|
java.lang.String |
startWorkflow(@NotNull(message="StartWorkflowRequest cannot be null") @Valid com.netflix.conductor.common.metadata.workflow.StartWorkflowRequest startWorkflowRequest)
Start a new workflow with StartWorkflowRequest, which allows task to be executed in a domain.
|
java.lang.String |
startWorkflow(@NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name,
java.lang.Integer version,
java.lang.String correlationId,
@Min(value=0L,message="0 is the minimum priority value") @Max(value=99L,message="99 is the maximum priority value") java.lang.Integer priority,
java.util.Map<java.lang.String,java.lang.Object> input)
Start a new workflow.
|
java.lang.String |
startWorkflow(@NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name,
java.lang.Integer version,
java.lang.String correlationId,
java.util.Map<java.lang.String,java.lang.Object> input)
Start a new workflow.
|
java.lang.String |
startWorkflow(@NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name,
java.lang.Integer version,
java.lang.String correlationId,
java.util.Map<java.lang.String,java.lang.Object> input,
java.lang.String externalInputPayloadStoragePath,
java.util.Map<java.lang.String,java.lang.String> taskToDomain,
com.netflix.conductor.common.metadata.workflow.WorkflowDef workflowDef)
Start a new workflow with StartWorkflowRequest, which allows task to be executed in a domain.
|
void |
terminateWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId,
java.lang.String reason)
Terminate workflow execution.
|
java.lang.String startWorkflow(@NotNull(message="StartWorkflowRequest cannot be null") @Valid @NotNull(message="StartWorkflowRequest cannot be null") @Valid com.netflix.conductor.common.metadata.workflow.StartWorkflowRequest startWorkflowRequest)
startWorkflowRequest
- StartWorkflow request for the workflow you want to start.java.lang.String startWorkflow(@NotEmpty(message="Workflow name cannot be null or empty") @NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name, java.lang.Integer version, java.lang.String correlationId, java.util.Map<java.lang.String,java.lang.Object> input, java.lang.String externalInputPayloadStoragePath, java.util.Map<java.lang.String,java.lang.String> taskToDomain, com.netflix.conductor.common.metadata.workflow.WorkflowDef workflowDef)
name
- Name of the workflow you want to start.version
- Version of the workflow you want to start.correlationId
- CorrelationID of the workflow you want to start.input
- Input to the workflow you want to start.externalInputPayloadStoragePath
- taskToDomain
- workflowDef
- - workflow definitionjava.lang.String startWorkflow(@NotEmpty(message="Workflow name cannot be null or empty") @NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name, java.lang.Integer version, java.lang.String correlationId, java.util.Map<java.lang.String,java.lang.Object> input)
name
- Name of the workflow you want to start.version
- Version of the workflow you want to start.correlationId
- CorrelationID of the workflow you want to start.input
- Input to the workflow you want to start.java.lang.String startWorkflow(@NotEmpty(message="Workflow name cannot be null or empty") @NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name, java.lang.Integer version, java.lang.String correlationId, @Min(value=0L,message="0 is the minimum priority value") @Max(value=99L,message="99 is the maximum priority value") @Min(value=0L,message="0 is the minimum priority value") @Max(value=99L,message="99 is the maximum priority value") java.lang.Integer priority, java.util.Map<java.lang.String,java.lang.Object> input)
name
- Name of the workflow you want to start.version
- Version of the workflow you want to start.correlationId
- CorrelationID of the workflow you want to start.priority
- Priority of the workflow you want to start.input
- Input to the workflow you want to start.java.util.List<com.netflix.conductor.common.run.Workflow> getWorkflows(@NotEmpty(message="Workflow name cannot be null or empty") @NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name, java.lang.String correlationId, boolean includeClosed, boolean includeTasks)
name
- Name of the workflow.correlationId
- CorrelationID of the workflow you want to list.includeClosed
- IncludeClosed workflow which are not running.includeTasks
- Includes tasks associated with workflows.Workflow
java.util.Map<java.lang.String,java.util.List<com.netflix.conductor.common.run.Workflow>> getWorkflows(@NotEmpty(message="Workflow name cannot be null or empty") @NotEmpty(message="Workflow name cannot be null or empty") java.lang.String name, boolean includeClosed, boolean includeTasks, java.util.List<java.lang.String> correlationIds)
name
- Name of the workflow.includeClosed
- CorrelationID of the workflow you want to start.includeTasks
- IncludeClosed workflow which are not running.correlationIds
- Includes tasks associated with workflows.Map
of String
as key and a list of Workflow
as valuecom.netflix.conductor.common.run.Workflow getExecutionStatus(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId, boolean includeTasks)
workflowId
- Id of the workflow.includeTasks
- Includes tasks associated with workflow.Workflow
void deleteWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId, boolean archiveWorkflow)
workflowId
- WorkflowID of the workflow you want to remove from system.archiveWorkflow
- Archives the workflow.java.util.List<java.lang.String> getRunningWorkflows(@NotEmpty(message="Workflow name cannot be null or empty.") @NotEmpty(message="Workflow name cannot be null or empty.") java.lang.String workflowName, java.lang.Integer version, java.lang.Long startTime, java.lang.Long endTime)
workflowName
- Name of the workflow.version
- Version of the workflow.startTime
- Starttime of the workflow.endTime
- EndTime of the workflowvoid decideWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
workflowId
- WorkflowId of the workflow.void pauseWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
workflowId
- WorkflowId of the workflow.void resumeWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
workflowId
- WorkflowId of the workflow.void skipTaskFromWorkflow(@NotEmpty(message="WorkflowId name cannot be null or empty.") @NotEmpty(message="WorkflowId name cannot be null or empty.") java.lang.String workflowId, @NotEmpty(message="TaskReferenceName cannot be null or empty.") @NotEmpty(message="TaskReferenceName cannot be null or empty.") java.lang.String taskReferenceName, com.netflix.conductor.common.metadata.workflow.SkipTaskRequest skipTaskRequest)
workflowId
- WorkflowId of the workflow.taskReferenceName
- The task reference name.skipTaskRequest
- SkipTaskRequest
for task you want to skip.java.lang.String rerunWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId, @NotNull(message="RerunWorkflowRequest cannot be null.") @NotNull(message="RerunWorkflowRequest cannot be null.") com.netflix.conductor.common.metadata.workflow.RerunWorkflowRequest request)
workflowId
- WorkflowId of the workflow you want to rerun.request
- (@link RerunWorkflowRequest) for the workflow.void restartWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId, boolean useLatestDefinitions)
workflowId
- WorkflowId of the workflow.useLatestDefinitions
- if true, use the latest workflow and task definitions upon restartvoid retryWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
workflowId
- WorkflowId of the workflow.void resetWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId)
workflowId
- WorkflowId of the workflow.void terminateWorkflow(@NotEmpty(message="WorkflowId cannot be null or empty.") @NotEmpty(message="WorkflowId cannot be null or empty.") java.lang.String workflowId, java.lang.String reason)
workflowId
- WorkflowId of the workflow.reason
- Reason for terminating the workflow.com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> searchWorkflows(int start, @Max(value=5000L,message="Cannot return more than {value} workflows. Please use pagination.") @Max(value=5000L,message="Cannot return more than {value} workflows. Please use pagination.") int size, java.lang.String sort, java.lang.String freeText, java.lang.String query)
start
- Start index of paginationsize
- Number of entriessort
- Sorting type ASC|DESCfreeText
- Text you want to searchquery
- Query you want to searchSearchResult
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> searchWorkflows(int start, @Max(value=5000L,message="Cannot return more than {value} workflows. Please use pagination.") @Max(value=5000L,message="Cannot return more than {value} workflows. Please use pagination.") int size, java.util.List<java.lang.String> sort, java.lang.String freeText, java.lang.String query)
start
- Start index of paginationsize
- Number of entriessort
- list of sorting options, separated by "|" delimiterfreeText
- Text you want to searchquery
- Query you want to searchSearchResult
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> searchWorkflowsByTasks(int start, int size, java.lang.String sort, java.lang.String freeText, java.lang.String query)
start
- Start index of paginationsize
- Number of entriessort
- Sorting type ASC|DESCfreeText
- Text you want to searchquery
- Query you want to searchSearchResult
com.netflix.conductor.common.run.SearchResult<com.netflix.conductor.common.run.WorkflowSummary> searchWorkflowsByTasks(int start, int size, java.util.List<java.lang.String> sort, java.lang.String freeText, java.lang.String query)
start
- Start index of paginationsize
- Number of entriessort
- list of sorting options, separated by "|" delimiterfreeText
- Text you want to searchquery
- Query you want to searchSearchResult
com.netflix.conductor.common.run.ExternalStorageLocation getExternalStorageLocation(java.lang.String path, java.lang.String operation, java.lang.String payloadType)
path
- the path for which the external storage location is to be populatedoperation
- the operation to be performed (read or write)payloadType
- the type of payload (input or output)ExternalStorageLocation
containing the uri and the path to the payload is stored in external storage