com.smartgwt.client.util.workflow

## Class ProcessElement

- java.lang.Object
- - com.smartgwt.client.core.BaseClass
  - - com.smartgwt.client.util.workflow.ProcessElement

- Direct Known Subclasses:
    DecisionGateway, ProcessSequence, Task, XORGateway

      public class ProcessElement
      extends BaseClass

  A ProcessElement is an abstract superclass for elements involved in a `Process`, such as a `Task` or `XORGateway`.

- - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.core.BaseClass

      `config, id, scClassName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProcessElement()`
    `ProcessElement(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `ProcessElement(java.lang.String ID)`
    `ProcessElement(java.lang.String ID, java.lang.String nextElement)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static com.google.gwt.core.client.JavaScriptObject` | `convertToJavaScriptArray(ProcessElement[] array)`
    `com.google.gwt.core.client.JavaScriptObject` | `create()`
    `java.lang.String` | `getID()` Optional ID for this process element, allowing it to be referred to from `Gateway`s, or as the `startElement`.
    `com.google.gwt.core.client.JavaScriptObject` | `getJsObj()`
    `java.lang.String` | `getNextElement()` Next `sequence` or `element` to execute after this one completes.
    `com.google.gwt.core.client.JavaScriptObject` | `getOrCreateJsObj()`
    `static ProcessElement` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `ProcessElement[]` | `getProcessElements(java.lang.String attribute)`
    `boolean` | `isCreated()`
    `void` | `setAttribute(java.lang.String attribute, ProcessElement[] value, boolean allowPostCreate)`
    `void` | `setID(java.lang.String ID)` Optional ID for this process element, allowing it to be referred to from `Gateway`s, or as the `startElement`.
    `void` | `setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `void` | `setNextElement(java.lang.String nextElement)` Next `sequence` or `element` to execute after this one completes.

    - ### Methods inherited from class com.smartgwt.client.core.BaseClass

      `asSGWTComponent, destroy, doAddHandler, doInit, error, error, errorIfNotCreated, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsString, getAttributeAsStringArray, getClassName, getConfig, getHandlerCount, getRef, getScClassName, internalSetID, internalSetID, onBind, onInit, registerID, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setProperty, setProperty, setProperty, setProperty, setScClassName`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ProcessElement

          public ProcessElement()

    - #### ProcessElement

          public ProcessElement(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### ProcessElement

          public ProcessElement(java.lang.String ID)

    - #### ProcessElement

          public ProcessElement(java.lang.String ID,
                        java.lang.String nextElement)

  - ### Method Detail

    - #### getOrCreateRef

          public static ProcessElement getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### setJavaScriptObject

          public void setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### create

          public com.google.gwt.core.client.JavaScriptObject create()

      Specified by:
        `create` in class `BaseClass`

    - #### setID

          public void setID(java.lang.String ID)
                     throws java.lang.IllegalStateException

      Optional ID for this process element, allowing it to be referred to from `Gateway`s, or as the `startElement`. See `ProcessSequence` and `Process` to understand when this is required or can be omitted.

      Unlike `ID` a `processElement`'s is a not a globally unique variable, it need only by unique within it's process.

      When assigned an ID, a `processElement` can be retrieve via `Process.getElement`.

      Overrides:
        `setID` in class `BaseClass`
      Parameters:
        `ID` - . See `String`. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the underlying component has been created

    - #### getID

          public java.lang.String getID()

      Optional ID for this process element, allowing it to be referred to from `Gateway`s, or as the `startElement`. See `ProcessSequence` and `Process` to understand when this is required or can be omitted.

      Unlike `ID` a `processElement`'s is a not a globally unique variable, it need only by unique within it's process.

      When assigned an ID, a `processElement` can be retrieve via `Process.getElement`.

      Overrides:
        `getID` in class `BaseClass`
      Returns:
        . See `String`

    - #### setNextElement

          public void setNextElement(java.lang.String nextElement)
                              throws java.lang.IllegalStateException

      Next `sequence` or `element` to execute after this one completes. Sequences are checked first. `nextElement` does not need to be specified on most elements if you use `sequences`.
      Parameters:
        `nextElement` - . See `String`. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the underlying component has been created

    - #### getNextElement

          public java.lang.String getNextElement()

      Next `sequence` or `element` to execute after this one completes. Sequences are checked first. `nextElement` does not need to be specified on most elements if you use `sequences`.
      Returns:
        . See `String`

    - #### isCreated

          public boolean isCreated()

      Overrides:
        `isCreated` in class `BaseClass`

    - #### getJsObj

          public com.google.gwt.core.client.JavaScriptObject getJsObj()

      Overrides:
        `getJsObj` in class `BaseClass`

    - #### getOrCreateJsObj

          public com.google.gwt.core.client.JavaScriptObject getOrCreateJsObj()

      Overrides:
        `getOrCreateJsObj` in class `BaseClass`

    - #### setAttribute

          public void setAttribute(java.lang.String attribute,
                          ProcessElement[] value,
                          boolean allowPostCreate)

    - #### getProcessElements

          public ProcessElement[] getProcessElements(java.lang.String attribute)

    - #### convertToJavaScriptArray

          public static com.google.gwt.core.client.JavaScriptObject convertToJavaScriptArray(ProcessElement[] array)