Package com.sas.lsaf.workflow.processflow

## Class ProcessFlow

- java.lang.Object
- - com.sas.lsaf.core.AbstractIdentifiable
  - - com.sas.lsaf.workflow.processflow.ProcessFlowDescriptor
    - - com.sas.lsaf.workflow.processflow.ProcessFlow

- All Implemented Interfaces:
    `Identifiable`, `java.io.Serializable`

      public class ProcessFlow
      extends ProcessFlowDescriptor

  The class that represents a process flow. It is identified by a name and context. It is associated with and scoped to a context in which it is defined. Examples of a process flow context are organization, project, and analysis.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.sas.lsaf.workflow.processflow.ProcessFlowDescriptor

      `ProcessFlowDescriptor.FlowStatus`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ProcessFlow​(java.lang.String id, java.lang.String contextId, java.lang.String contextPath, java.lang.String name, java.lang.String description, ProcessFlowDescriptor.FlowStatus status, java.lang.String owner, ProcessDefinitionInfo processDefinitionInfo, java.lang.String createdBy, java.util.Date created, java.lang.String lastModifiedBy, java.util.Date lastModified, long revision, java.lang.String autoFlowSource, AutoFlowType autoFlowType)` | It is not intended or recommended that the consumer of this API construct these objects.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(java.lang.Object obj)` |
    `Attribute` | `getAttribute​(java.lang.String id)` | Gets the extended attribute with the specified identifier for a process flow.
    `java.util.List<Attribute>` | `getAttributes()` | Gets the list of extended attributes that are defined for a process flow.
    `java.lang.String` | `getAutoFlowSource()` | Gets the identifier of the source object from which this process flow was automatically created.
    `java.util.Set<DataProperty>` | `getProcessData()` | Gets the process data properties for a process flow.
    `int` | `hashCode()` |
    `void` | `setAttribute​(java.lang.String id, java.io.Serializable value)` | Sets the value for the extended attribute with the specified identifier for a process flow.
    `void` | `setAttributes​(java.util.List<Attribute> attributes)` | Sets the extended attribute values for a process flow.
    `void` | `setProcessData​(java.util.Set<DataProperty> processData)` | Sets the process data properties for a process flow.
    `java.lang.String` | `toString()` |

    - ### Methods inherited from class com.sas.lsaf.workflow.processflow.ProcessFlowDescriptor

      `getAutoFlowType, getContextId, getContextPath, getCreated, getCreatedBy, getDescription, getLastModified, getLastModifiedBy, getName, getOwner, getProcessDefinitionInfo, getRevision, getStatus, setDescription, setName, setOwner`

    - ### Methods inherited from class com.sas.lsaf.core.AbstractIdentifiable

      `getId, getTypeId`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ProcessFlow

          public ProcessFlow​(java.lang.String id,
                             java.lang.String contextId,
                             java.lang.String contextPath,
                             java.lang.String name,
                             java.lang.String description,
                             ProcessFlowDescriptor.FlowStatus status,
                             java.lang.String owner,
                             ProcessDefinitionInfo processDefinitionInfo,
                             java.lang.String createdBy,
                             java.util.Date created,
                             java.lang.String lastModifiedBy,
                             java.util.Date lastModified,
                             long revision,
                             java.lang.String autoFlowSource,
                             AutoFlowType autoFlowType)

      It is not intended or recommended that the consumer of this API construct these objects. They should only deal with the process flows returned by the API.
      Parameters:
        `id` - The unique identifier of the process flow.
        `contextId` - The identifier of the context in which the process flow was created.
        `contextPath` - The path of the context in which the process flow was created.
        `name` - The name of the process flow.
        `description` - The description of the process flow.
        `status` - The status of the process flow.
        `owner` - The owner of the process flow.
        `processDefinitionInfo` - The process flow definition information of the process flow.
        `createdBy` - The user who created the process flow.
        `created` - The date on which the process flow was created.
        `lastModifiedBy` - The user who last modified the process flow.
        `lastModified` - The date on which the process flow was last modified.
        `revision` - The internal revision number.
        `autoFlowSource` - The source from which this process flow was automatically created.
        `autoFlowType` - The type of the source from which the process flow was automatically created.
      Since:
        1.8

  - ### Method Detail

    - #### getAttributes

          public java.util.List<Attribute> getAttributes()

      Gets the list of extended attributes that are defined for a process flow.
      Returns:
        The extended attributes.

    - #### setAttributes

          public void setAttributes​(java.util.List<Attribute> attributes)

      Sets the extended attribute values for a process flow.
      Parameters:
        `attributes` - The list of extended attribute values for a process flow.

    - #### getAttribute

          public Attribute getAttribute​(java.lang.String id)

      Gets the extended attribute with the specified identifier for a process flow.
      Parameters:
        `id` - The identifier of the extended attribute.
      Returns:
        The extended attribute with the specified identifier. Returns null, if not found.

    - #### setAttribute

          public void setAttribute​(java.lang.String id,
                                   java.io.Serializable value)

      Sets the value for the extended attribute with the specified identifier for a process flow.
      Parameters:
        `id` - The identifier of the extended attribute. If the identifier is not found, no update is made.
        `value` - The value of the extended attribute.

    - #### getProcessData

          public java.util.Set<DataProperty> getProcessData()

      Gets the process data properties for a process flow.
      Returns:
        The data properties.

    - #### setProcessData

          public void setProcessData​(java.util.Set<DataProperty> processData)

      Sets the process data properties for a process flow.
      Parameters:
        `processData` - The data properties.

    - #### getAutoFlowSource

          public java.lang.String getAutoFlowSource()

      Gets the identifier of the source object from which this process flow was automatically created.
      Returns:
        The identifier.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `ProcessFlowDescriptor`

    - #### equals

          public boolean equals​(java.lang.Object obj)

      Overrides:
        `equals` in class `ProcessFlowDescriptor`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `ProcessFlowDescriptor`