Package com.smartgwt.client.util.workflow

# Class DecisionGateway

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

All Implemented Interfaces:
  `HasHandlers`

public class DecisionGateway extends MultiDecisionTask
Chooses a next element in a `Process` by evaluating a series of criteria against the `Process.state` and choosing the element associated with the criteria that matched, or a `defaultElement` if none of the criteria match.

- ## Field Summary

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

  `config, configOnly, factoryCreated, factoryProperties, id, scClassName`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DecisionGateway()`
  `DecisionGateway(JavaScriptObject jsObj)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `JavaScriptObject`
  `create()`
  `LinkedHashMap`
  `getCriteriaMap()`
  Deprecated.
  in favor of `MultiDecisionTask.getDecisionList()`.
  `static DecisionGateway`
  `getOrCreateRef(JavaScriptObject jsObj)`
  `DecisionGateway`
  `setCriteriaMap(Map<String,Criteria> criteriaMap)`
  Deprecated.
  In favor of `decisionList` as of SmartGWT release 12.1
  `void`
  `setDefaultElement(ProcessElement defaultElement)`

  ### Methods inherited from class com.smartgwt.client.util.workflow.MultiDecisionTask

  `getDecisionList, getDefaultElement, setDecisionList, setDefaultElement`

  ### Methods inherited from class com.smartgwt.client.util.workflow.ProcessElement

  `completeElement, convertToJavaScriptArray, executeElement, getBindOutput, getClassDescription, getComponentReferences, getCurrentProcess, getDescription, getDynamicValue, getEditorType, getElementDescription, getForceSingle, getID, getInvalidTaskMessage, getJsObj, getMockMode, getNextElement, getOrCreateJsObj, getPassThruOutput, getProcessElements, getSupportsMultipleInputRecords, getTextFormulaValue, getTypeTitle, getUndefinedComponentMessage, getUnresolvedComponentMessage, getWaitDuration, getWaitFor, getWaitLocator, isCreated, isValid, objectReferencesLastTaskOutput, onInit, reset, setAttribute, setBindOutput, setClassDescription, setCurrentProcess, setDescription, setEditorType, setForceSingle, setID, setJavaScriptObject, setMockMode, setNextElement, setPassThruOutput, setSupportsMultipleInputRecords, setTypeTitle, setUndefinedComponentMessage, setUnresolvedComponentMessage, setWaitDuration, setWaitFor, setWaitLocator, updateGlobalIDInCriteria, updateGlobalIDInTextFormula, updateGlobalIDInValueProperty, updateGlobalIDInValues, updateGlobalIDReferences, updateLastElementBindingReferences, updateLastElementInCriteria, updateLastElementInValueProperty, updateLastElementInValues`

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

  `addDynamicProperty, addDynamicProperty, addDynamicProperty, addDynamicProperty, applyFactoryProperties, asSGWTComponent, clearDynamicProperty, createJsObj, destroy, doAddHandler, doInit, error, error, errorIfNotCreated, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsString, getAttributeAsStringArray, getClassName, getConfig, getHandlerCount, getRef, getRuleScope, getScClassName, getTestInstance, hasAutoAssignedID, hasDynamicProperty, internalSetID, internalSetID, isConfigOnly, isFactoryCreated, onBind, registerID, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setFactoryCreated, setProperty, setProperty, setProperty, setProperty, setRuleScope, setScClassName`

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

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

- ## Constructor Details

  - ### DecisionGateway

    public DecisionGateway()

  - ### DecisionGateway

    public DecisionGateway(JavaScriptObject jsObj)

- ## Method Details

  - ### getOrCreateRef

    public static DecisionGateway getOrCreateRef(JavaScriptObject jsObj)

  - ### create

    public JavaScriptObject create()
    Overrides:
      `create` in class `MultiDecisionTask`

  - ### setCriteriaMap

    public DecisionGateway setCriteriaMap(Map<String,Criteria> criteriaMap) throws IllegalStateException
    Deprecated.
    In favor of `decisionList` as of SmartGWT release 12.1
    A Map from `ProcessElement.ID` to Criteria that will cause this ProcessElement to be chosen as the next element if the criteria matches.

    If no criteria is matched the next element is `defaultElement` or the workflow is finished.

    Data values in this criteria prefixed with "$" will be treated as dynamic expressions as detailed in `TaskInputExpression`. Specifically, this means that for simple criteria, any property value that is a String and is prefixed with "$" will be assumed to be an expression, and for AdvancedCriteria, the same treatment will be applied to `Criterion.value`.

    Note that dynamic expressions starting with "$input" are not applicable for an decisionGateway but "$inputRecord" can be used for direct reference to `Process.state`.

    This property supports `DynamicCriteria` - use `Criterion.valuePath` to refer to values in the `Process.ruleScope`.

    Parameters:
      `criteriaMap` - New criteriaMap value. Default value is null
    Returns:
      `DecisionGateway` instance, for chaining setter calls
    Throws:
      `IllegalStateException` - this property cannot be changed after the underlying component has been created

  - ### getCriteriaMap

    public LinkedHashMap getCriteriaMap()
    Deprecated.
    in favor of `MultiDecisionTask.getDecisionList()`.
    A Map from `ID` to Criteria that will cause this ProcessElement to be chosen as the next element if the criteria matches.
    Returns:
      LinkedHashMap<String,Criteria>

  - ### setDefaultElement

    public void setDefaultElement(ProcessElement defaultElement) throws IllegalStateException
    Throws:
      `IllegalStateException`
    See Also:
      - `MultiDecisionTask.setDefaultElement(String)`