Package com.sas.lsaf.workflow.processflow.setup

## Interface ProcessFlowSetupService

-     public interface ProcessFlowSetupService

  The service that contains methods to manage setup elements that are in a process flow.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.Set<ElementSetup>` | `getElementSetups​(java.lang.String id)` | Gets the process flow setup elements for the process flow.
    `ElementSetup` | `updateElementSetup​(ElementSetup elementSetup)` | Updates the element setup for the process flow.

- - ### Method Detail

    - #### getElementSetups

          java.util.Set<ElementSetup> getElementSetups​(java.lang.String id)
                                                throws ProcessFlowNotFoundException,
                                                       ProcessFlowException,
                                                       ProcessDefinitionNotFoundException

      Gets the process flow setup elements for the process flow.
      Parameters:
        `id` - The identifier of the process flow.
      Returns:
        The set of element setups.
      Throws:
        `ProcessFlowNotFoundException` - Thrown when the process flow does not exist.
        `ProcessFlowException` - Thrown when there is an issue when getting the element setups.
        `ProcessDefinitionNotFoundException` - Thrown when the process flow definition that is associated with the process flow does not exist.

    - #### updateElementSetup

          ElementSetup updateElementSetup​(ElementSetup elementSetup)
                                   throws InvalidProcessFlowStateException,
                                          ProcessFlowNotFoundException,
                                          ProcessDefinitionNotFoundException,
                                          InvalidTaskAssigneeException,
                                          InvalidRecipientException,
                                          ProcessFlowException,
                                          ProcessFlowElementSetupNotFoundException,
                                          ProcessFlowElementSetupException

      Updates the element setup for the process flow.
      Parameters:
        `elementSetup` - The element setup.
      Returns:
        The updated element setup.
      Throws:
        `InvalidProcessFlowStateException` - Thrown when the process flow is in an invalid state to update an element setup.
        `ProcessFlowNotFoundException` - Thrown when the process flow does not exist.
        `ProcessDefinitionNotFoundException` - Thrown when the process flow definition that is associated with the process flow does not exist.
        `InvalidTaskAssigneeException` - Thrown when the assignee who is specified for a user task setup is not valid.
        `InvalidRecipientException` - Thrown when the recipient who is specified for a notification task setup is not valid.
        `ProcessFlowException` - Thrown when there is an issue when updating the element setup.
        `ProcessFlowElementDefinitionNotFoundException` - Thrown when the element setup for the process flow is not found.
        `ProcessFlowElementDefinitionException` - Thrown when the element setup for the process flow is not updated.
        `ProcessFlowElementSetupNotFoundException`
        `ProcessFlowElementSetupException`