public interface ProcessFlowService
A process flow is a collection of tasks and elements that can be assigned or executed based on the underlying process definition. It is identified by a name and context and is associated with and scoped to a context where it is defined. Examples of a process flow context are Organization, Project and Analysis.
Modifier and Type | Method and Description |
---|---|
ProcessFlow |
createProcessFlow(String contextId,
String processFlowName,
String processDefinitionId)
Create process flow at the specified context with the specified name using the latest deployed version of the
process definition with the specified identifier.
|
String |
createProcessFlowManifest(String id,
FileCreateInfo manifestFileCreateInfo)
Creates a process flow manifest for the process flow with the specified identifier.
|
void |
deleteProcessFlow(String id)
Deletes the process flow with the specified identifier.
|
boolean |
exists(String contextId,
String processFlowName)
Checks if the process flow exists with the specified name at the specified context.
|
Set<ProcessFlowDescriptor> |
getAllProcessFlowDescriptors()
Get all process flows this user is authorized to see.
|
Set<ProcessFlowDescriptor> |
getMyProcessFlowDescriptors()
Get all process flows this user is authorized to see.
|
Set<ProcessFlowDescriptor> |
getMyProcessFlowDescriptorsByContext(String contextId,
boolean includeChildren)
Get all process flows that are owned by the current user at a specified context, and (optionally) below.
|
ProcessFlow |
getProcessFlowById(String id)
Get process flow with the specified identifier.
|
ProcessFlow |
getProcessFlowByNameAndContext(String contextId,
String processFlowName)
Get process flow at the specified context with the specified name.
|
Set<ProcessFlowDescriptor> |
getProcessFlowDescriptorsByContext(String contextId,
boolean includeChildren)
Get process flows at the specified context and (optionally) below.
|
ProcessFlow |
updateProcessFlow(ProcessFlow processFlow)
Updates the process flow
|
Set<ProcessFlowDescriptor> getProcessFlowDescriptorsByContext(String contextId, boolean includeChildren) throws ProcessFlowContextNotFoundException
contextId
- the id of the contextincludeChildren
- the boolean value indicating if context children's process flows should be retrieved.ProcessFlowContextNotFoundException
Set<ProcessFlowDescriptor> getAllProcessFlowDescriptors()
Set<ProcessFlowDescriptor> getMyProcessFlowDescriptors()
Set<ProcessFlowDescriptor> getMyProcessFlowDescriptorsByContext(String contextId, boolean includeChildren) throws ProcessFlowContextNotFoundException
contextId
- the id of the contextincludeChildren
- the boolean value indicating if context children's process flows should be retrieved.ProcessFlowContextNotFoundException
boolean exists(String contextId, String processFlowName)
contextId
- the id of contextprocessFlowName
- the name of the process flowProcessFlow getProcessFlowByNameAndContext(String contextId, String processFlowName) throws ProcessFlowNotFoundException
contextId
- the id of the contextprocessFlowName
- the name of the process flowProcessFlowNotFoundException
- thrown if the process flow does not exist at the specified context with the
specified nameProcessFlow getProcessFlowById(String id) throws ProcessFlowNotFoundException, ProcessFlowException
id
- the identifier representing the process flowProcessFlowNotFoundException
- thrown if the process flow does not exist with the specified identifierProcessFlowException
- thrown if there was an issue getting process flow from the systemProcessFlow createProcessFlow(String contextId, String processFlowName, String processDefinitionId) throws ProcessFlowExistsException, ProcessDefinitionNotFoundException, ProcessFlowContextNotFoundException
contextId
- the id of the context in which to create the process flowprocessFlowName
- the name of the new process flowprocessDefinitionId
- The id of the process definition. This is the process id value in the process
definition file and displays in the ID column of the application in the Process Flow Definitions view.ProcessFlowExistsException
- thrown if a process flow with the given name already exists at the specified
context.ProcessDefinitionNotFoundException
- thrown if a deployed process definition does not exist with the
specified processDefinitionId at that specified contextProcessFlowContextNotFoundException
- thrown if the specified process flow context does not existProcessFlow updateProcessFlow(ProcessFlow processFlow) throws ProcessFlowNotFoundException, InvalidProcessFlowStateException, ProcessFlowException, ProcessFlowExistsException
processFlow
- the process flow to updateProcessFlowNotFoundException
- thrown if the process flow does not exist with the identifier on the given
process flowInvalidProcessFlowStateException
- thrown if the process flow is in an invalid state for updating the
process flow.ProcessFlowException
- thrown if there was an issue updating the process flow in the systemProcessFlowExistsException
- thrown if a process flow with the given name already exists at the specified
context.void deleteProcessFlow(String id) throws ProcessFlowNotFoundException, ProcessFlowException
id
- the id of the process flowProcessFlowNotFoundException
- thrown if the process flow does not exist at the specified context with the
specified nameProcessFlowException
- thrown if there was an issue deleting the process flowString createProcessFlowManifest(String id, FileCreateInfo manifestFileCreateInfo) throws ProcessFlowNotFoundException, ProcessFlowManifestCreateException, ProcessFlowException
id
- the id of the process flowmanifestFileCreateInfo
- the specification for how to add the new process flow manifest file (major version,
minor version, etc.). Specifying null will default to a major version specification.ProcessFlowNotFoundException
- thrown if the process flow does not exist at the specified context with the
specified nameProcessFlowManifestCreateException
- thrown if there was an issue creating a process flow manifest for the
process flowProcessFlowException
- thrown if there was an issue creating the process flow manifestCopyright (c) 2019, SAS Institute Inc., Cary, NC, USA