public class ProcessElement extends BaseClass
Process,
 such as a Task or DecisionTask.config, configOnly, factoryCreated, factoryProperties, id, scClassName| 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) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | completeElement(Process process)StringMethod called when a processElement completes. | 
| static com.google.gwt.core.client.JavaScriptObject | convertToJavaScriptArray(ProcessElement[] array) | 
| com.google.gwt.core.client.JavaScriptObject | create() | 
| java.lang.Boolean | executeElement(Process process)Method called by  Processto have the processElement perform its work. | 
| java.lang.String | getBindOutput()When set, the output of the task will be automatically bound to the specified value in the  process state. | 
| java.lang.String | getClassDescription()Optional description of the general nature of the kinds of tasks this this process element performs. | 
| java.lang.String | getDescription()Optional description for this specific instance of process element. | 
| java.lang.String | getDynamicValue(java.lang.String value,
               Process process)Resolves a dynamic value as  taskInputExpressionsor returns the
 value as-is. | 
| java.lang.String | getEditorType()Editor type used to edit instances of this type of process element. | 
| java.lang.String | getElementDescription()Returns a text description of the element derived from the configuration. | 
| java.lang.Boolean | getForceSingle()Should  multiple record
 processingbe suppressed for this task instance? This property can be set at any time is checked before executing the
 task and after each execution during processing of multiple last task output records. | 
| java.lang.String | getID()Optional ID for this process element, allowing it to be referred to from   Decisions, or as theProcess.startElement. | 
| com.google.gwt.core.client.JavaScriptObject | getJsObj() | 
| java.lang.Boolean | getMockMode()Enable mock mode on the task? If  Process.mockModeis
 enabled, setting this property tofalsedisables mockMode on this task only. | 
| java.lang.String | getNextElement() | 
| com.google.gwt.core.client.JavaScriptObject | getOrCreateJsObj() | 
| static ProcessElement | getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj) | 
| java.lang.Boolean | getPassThruOutput()Does this processElement pass through output from the last executed task (i.e. | 
| ProcessElement[] | getProcessElements(java.lang.String attribute) | 
| java.lang.Boolean | getSupportsMultipleInputRecords()Does this processElement support being called multiple times for multiple records in the  last task output? | 
| java.lang.String | getTextFormulaValue(UserSummary textFormula,
                   Process process)Resolves a  UserSummaryvalue against the currentrule context. | 
| java.lang.String | getTypeTitle()Optional short, descriptive title for this process element. | 
| boolean | isCreated() | 
| java.lang.Boolean | objectReferencesLastTaskOutput(java.util.Map object,
                              Process process)Does the object have fields that reference the last task output (i.e. | 
| protected void | onInit() | 
| void | reset()StringMethod called during  Process.reset()giving the task a
 chance to reset any internal state so it can be executed later. | 
| ProcessElement | setAttribute(java.lang.String attribute,
            ProcessElement[] value,
            boolean allowPostCreate) | 
| ProcessElement | setBindOutput(java.lang.String bindOutput)When set, the output of the task will be automatically bound to the specified value in the  process state. | 
| ProcessElement | setClassDescription(java.lang.String classDescription)Optional description of the general nature of the kinds of tasks this this process element performs. | 
| ProcessElement | setDescription(java.lang.String description)Optional description for this specific instance of process element. | 
| ProcessElement | setEditorType(java.lang.String editorType)Editor type used to edit instances of this type of process element. | 
| ProcessElement | setForceSingle(java.lang.Boolean forceSingle)Should  multiple record
 processingbe suppressed for this task instance? This property can be set at any time is checked before executing the
 task and after each execution during processing of multiple last task output records. | 
| ProcessElement | setID(java.lang.String ID)Optional ID for this process element, allowing it to be referred to from   Decisions, or as theProcess.startElement. | 
| void | setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj) | 
| ProcessElement | setMockMode(java.lang.Boolean mockMode)Enable mock mode on the task? If  Process.mockModeis
 enabled, setting this property tofalsedisables mockMode on this task only. | 
| ProcessElement | setNextElement(java.lang.String nextElement) | 
| ProcessElement | setPassThruOutput(java.lang.Boolean passThruOutput)Does this processElement pass through output from the last executed task (i.e. | 
| ProcessElement | setSupportsMultipleInputRecords(java.lang.Boolean supportsMultipleInputRecords)Does this processElement support being called multiple times for multiple records in the  last task output? | 
| ProcessElement | setTypeTitle(java.lang.String typeTitle)Optional short, descriptive title for this process element. | 
| java.lang.Boolean | updateGlobalIDInCriteria(AdvancedCriteria criteria,
                        java.lang.String oldId,
                        java.lang.String newId) | 
| java.lang.Boolean | updateGlobalIDInValueProperty(java.lang.String propertyName,
                             java.lang.String oldId,
                             java.lang.String newId)Updates a  TaskInputExpressionproperty value containing ruleScope references. | 
| java.lang.Boolean | updateGlobalIDInValues(java.util.Map values,
                      java.lang.String oldId,
                      java.lang.String newId)Updates a set of  TaskInputExpressionvalues containing ruleScope references. | 
| java.lang.Boolean | updateGlobalIDReferences(java.lang.String oldId,
                        java.lang.String newId)Updates references to a global ID within the properties of this process element (i.e. | 
| java.lang.Boolean | updateLastElementBindingReferences(java.lang.String oldId,
                                  java.lang.String newId)Update references to a binding $last within properties of this processElement. | 
| java.lang.Boolean | updateLastElementInCriteria(AdvancedCriteria criteria,
                           java.lang.String taskType) | 
| java.lang.Boolean | updateLastElementInValueProperty(java.lang.String propertyName,
                                java.lang.String taskType)Updates a  TaskInputExpressionproperty value containing $last references. | 
| java.lang.Boolean | updateLastElementInValues(java.util.Map values,
                         java.lang.String taskType)Updates a set of  TaskInputExpressionvalues containing $last references. | 
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, setScClassNamepublic ProcessElement()
public ProcessElement(com.google.gwt.core.client.JavaScriptObject jsObj)
public ProcessElement(java.lang.String ID)
public ProcessElement(java.lang.String ID,
                      java.lang.String nextElement)
public static ProcessElement getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
public void setJavaScriptObject(com.google.gwt.core.client.JavaScriptObject jsObj)
setJavaScriptObject in class BaseClasspublic com.google.gwt.core.client.JavaScriptObject create()
public com.google.gwt.core.client.JavaScriptObject getJsObj()
public com.google.gwt.core.client.JavaScriptObject getOrCreateJsObj()
getOrCreateJsObj in class BaseClasspublic ProcessElement setBindOutput(java.lang.String bindOutput) throws java.lang.IllegalStateException
process state.  See taskInputExpressions for details on the transient state outputs.
bindOutput - New bindOutput value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getBindOutput()
process state.  See taskInputExpressions for details on the transient state outputs.
public ProcessElement setClassDescription(java.lang.String classDescription) throws java.lang.IllegalStateException
description which describes what the
 specific instance of the process element has been configured to do.  For example, the classDescription
 for a task to disable a field might be "disables a field" whereas the description for a concrete instance
 might be "disables the 'shipTo' field in the 'ordering' form". 
 Used by editor to display additional details along
 with typeTitle.
classDescription - New classDescription value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getClassDescription()
description which describes what the
 specific instance of the process element has been configured to do.  For example, the classDescription
 for a task to disable a field might be "disables a field" whereas the description for a concrete instance
 might be "disables the 'shipTo' field in the 'ordering' form". 
 Used by editor to display additional details along
 with typeTitle.
public ProcessElement setDescription(java.lang.String description) throws java.lang.IllegalStateException
description - New description value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getDescription()
public ProcessElement setEditorType(java.lang.String editorType) throws java.lang.IllegalStateException
editorType - New editorType value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getEditorType()
this.editorType but a custom override could determine an editor type based on the
 property values. Default value is nullpublic ProcessElement setForceSingle(java.lang.Boolean forceSingle)
multiple record
 processing be suppressed for this task instance? This property can be set at any time is checked before executing the
 task and after each execution during processing of multiple last task output records.  Note that since this property
 applies to an instance of a task that could be used multiple times in a process (by branching) care should be taken to
 restore the property value after execution completes. See completeElement() or reset().
forceSingle - New forceSingle value. Default value is nullProcessElement instance, for chaining setter callspublic java.lang.Boolean getForceSingle()
multiple record
 processing be suppressed for this task instance? This property can be set at any time is checked before executing the
 task and after each execution during processing of multiple last task output records.  Note that since this property
 applies to an instance of a task that could be used multiple times in a process (by branching) care should be taken to
 restore the property value after execution completes. See completeElement() or reset().
public ProcessElement setID(java.lang.String ID) throws java.lang.IllegalStateException
Decisions, or as the Process.startElement. See ProcessSequence and Process to understand
 when this is required or can be omitted.  Unlike Canvas.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().
setID in class BaseClassID - New ID value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getID()
Decisions, or as the Process.startElement. See ProcessSequence and Process to understand
 when this is required or can be omitted.  Unlike Canvas.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().
public ProcessElement setMockMode(java.lang.Boolean mockMode)
Process.mockMode is
 enabled, setting this property to false disables mockMode on this task only. Otherwise, mock mode can be
 enabled on this task by setting it to true. Note that it is up to each task determine what effect mock mode has.
mockMode - New mockMode value. Default value is nullProcessElement instance, for chaining setter callspublic java.lang.Boolean getMockMode()
Process.mockMode is
 enabled, setting this property to false disables mockMode on this task only. Otherwise, mock mode can be
 enabled on this task by setting it to true. Note that it is up to each task determine what effect mock mode has.
public ProcessElement setNextElement(java.lang.String nextElement) throws java.lang.IllegalStateException
sequence or element to execute after this one completes.   
 nextElement does not need to be specified on most elements if you use sequences. 
 Note that if there is both a
 sequence and a normal element with the same name in the current Process, the
 sequence will be used.
nextElement - New nextElement value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getNextElement()
sequence or element to execute after this one completes.   
 nextElement does not need to be specified on most elements if you use sequences. 
 Note that if there is both a
 sequence and a normal element with the same name in the current Process, the
 sequence will be used.
public ProcessElement setPassThruOutput(java.lang.Boolean passThruOutput) throws java.lang.IllegalStateException
 See taskInputExpressions for details on the transient state outputs. 
 Note
 that this property does not affect the task at all but is an indicator to the user and to the workflow editor of the
 behavior of the task as coded (See Process.passThruTaskOutput()).
passThruOutput - New passThruOutput value. Default value is trueProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.Boolean getPassThruOutput()
 See taskInputExpressions for details on the transient state outputs. 
 Note
 that this property does not affect the task at all but is an indicator to the user and to the workflow editor of the
 behavior of the task as coded (See Process.passThruTaskOutput()).
public ProcessElement setSupportsMultipleInputRecords(java.lang.Boolean supportsMultipleInputRecords) throws java.lang.IllegalStateException
last task output?  By default a processElement is executed exactly once, however, for a task that can
 process records from the last task output it can be useful to handle each incoming record individually. Setting this
 property indicates to the process that if the last task output is an
 array, it should be executed once per value in the array. Normal processing of taskInputExpressions or use of Process.getLastTaskOutput() will have exactly one record
 except uses of the output for criteria values where the full output is used at once. 
 Processing of the task can
 determine that multiple incoming records should not result in multiple calls and set forceSingle. For example, a task that uses last task
 output for a criteria or for values should set forceSingle=true when a criteria is used because multiple
 calls do not make sense.
supportsMultipleInputRecords - New supportsMultipleInputRecords value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.Boolean getSupportsMultipleInputRecords()
last task output?  By default a processElement is executed exactly once, however, for a task that can
 process records from the last task output it can be useful to handle each incoming record individually. Setting this
 property indicates to the process that if the last task output is an
 array, it should be executed once per value in the array. Normal processing of taskInputExpressions or use of Process.getLastTaskOutput() will have exactly one record
 except uses of the output for criteria values where the full output is used at once. 
 Processing of the task can
 determine that multiple incoming records should not result in multiple calls and set forceSingle. For example, a task that uses last task
 output for a criteria or for values should set forceSingle=true when a criteria is used because multiple
 calls do not make sense.
public ProcessElement setTypeTitle(java.lang.String typeTitle) throws java.lang.IllegalStateException
typeTitle - New typeTitle value. Default value is nullProcessElement instance, for chaining setter callsjava.lang.IllegalStateException - this property cannot be changed after the underlying component has been createdpublic java.lang.String getTypeTitle()
public void completeElement(Process process)
forceSingle so it can be executed
 again later. See also reset().process - the containing processpublic java.lang.Boolean executeElement(Process process)
Process to have the processElement perform its work. There is
 no default implementation by ProcessElement, however, all of the system-provided subclasses do implement this method. An
 implementation or override of this method is one possible customization point. Some classes like ScriptTask perform other means to add customization. For ScriptTask, custom code is
 expected to handle the ScriptTask.execute() method instead.
  Any implementation of this method must return true if all the work this element needed to perform was
 completed. Return false if additional work is being performed asynchronously and the process should be
 paused until element restarts it. Once asynchronous work is complete the task must call Process.start() to restart the workflow with the next task.
process - the process that is handling the workflowpublic java.lang.String getDynamicValue(java.lang.String value,
                                        Process process)
taskInputExpressions or returns the
 value as-is.value - the value to resolveprocess - the current processpublic java.lang.String getElementDescription()
 If no override is provided by the concrete
 ProcessElement implementation the description is
 returned.
public java.lang.String getTextFormulaValue(UserSummary textFormula, Process process)
UserSummary value against the current rule context.textFormula - the UserSummary value to resolveprocess - the current processpublic java.lang.Boolean objectReferencesLastTaskOutput(java.util.Map object,
                                                        Process process)
object - object to be checkedprocess - the enclosing processpublic void reset()
Process.reset() giving the task a
 chance to reset any internal state so it can be executed later. See also completeElement().public java.lang.Boolean updateGlobalIDInCriteria(AdvancedCriteria criteria, java.lang.String oldId, java.lang.String newId)
AdvancedCriteria Criterion TaskInputExpression values containing ruleScope references.  This method is a helper to
 implement task-specific updateGlobalIDReferences().
criteria - the criteria to be updated in placeoldId - the ID being renamed.
 See IdentifiernewId - the new ID to be assigned.
 See Identifierpublic java.lang.Boolean updateGlobalIDInValueProperty(java.lang.String propertyName,
                                                       java.lang.String oldId,
                                                       java.lang.String newId)
TaskInputExpression property value containing ruleScope references.  This
 method is a helper to implement task-specific updateGlobalIDReferences().
propertyName - the property name to be updated in this taskoldId - the ID being renamed.
 See IdentifiernewId - the new ID to be assigned.
 See Identifierpublic java.lang.Boolean updateGlobalIDInValues(java.util.Map values,
                                                java.lang.String oldId,
                                                java.lang.String newId)
TaskInputExpression values containing ruleScope references.  This
 method is a helper to implement task-specific updateGlobalIDReferences().
values - the object to be updatedoldId - the ID being renamed.
 See IdentifiernewId - the new ID to be assigned.
 See Identifierpublic java.lang.Boolean updateGlobalIDReferences(java.lang.String oldId,
                                                  java.lang.String newId)
Reify to keep workflow event handlers in
 sync with ID changes within the screen.  Each processElement or Task that has properties that save global IDs (like a
 component ID or criteria referencing ruleContext) must  be able
 to update its references on demand by overriding this method or defer to its superclass. 
There are a number of helper methods to make this easier listed below.
oldId - the ID being renamed.
 See IdentifiernewId - the new ID to be assigned.
 See IdentifierupdateGlobalIDInValueProperty(java.lang.String, java.lang.String, java.lang.String), 
updateGlobalIDInValues(java.util.Map, java.lang.String, java.lang.String), 
updateGlobalIDInCriteria(com.smartgwt.client.data.AdvancedCriteria, java.lang.String, java.lang.String)public java.lang.Boolean updateLastElementBindingReferences(java.lang.String oldId,
                                                            java.lang.String newId)
com.smartgwt.client.tools.WorkflowEditor to adjust last task references as
 new tasks are inserted.  Each processElement or Task that has properties supporting taskInputExpressions using the $last syntax must  be able to update its
 references on demand by overriding this method or defer to its superclass. 
There are a number of helper methods to make this easier listed below.
oldId - the ID being renamed.
 See IdentifiernewId - the new ID to be assigned.
 See IdentifierupdateLastElementInValueProperty(java.lang.String, java.lang.String), 
updateLastElementInValues(java.util.Map, java.lang.String), 
updateLastElementInCriteria(com.smartgwt.client.data.AdvancedCriteria, java.lang.String)public java.lang.Boolean updateLastElementInCriteria(AdvancedCriteria criteria, java.lang.String taskType)
AdvancedCriteria Criterion TaskInputExpression values containing $last references. Any implicit reference to the last
 task is updated to reference a last task of a specified taskType. For example, a value of "$last.sequenceNo" would be replaced with "$last[fetch].sequenceNo" if the taskType is "fetch". Existing "$last[...]" references are left as-is.
 This method is a helper to implement task-specific updateLastElementBindingReferences().
criteria - the criteria to be updated in placetaskType - the taskType to be used in new referencepublic java.lang.Boolean updateLastElementInValueProperty(java.lang.String propertyName,
                                                          java.lang.String taskType)
TaskInputExpression property value containing $last references. Any implicit
 reference to the last task is updated to reference a last task of a specified taskType. For example, a value of "$last.sequenceNo" would be replaced with "$last[fetch].sequenceNo" if the taskType is "fetch". Existing "$last[...]" references are left as-is.
 This method is a helper to implement task-specific updateLastElementBindingReferences().
propertyName - the property name to be updated in this tasktaskType - the taskType to be used in new referencepublic java.lang.Boolean updateLastElementInValues(java.util.Map values,
                                                   java.lang.String taskType)
TaskInputExpression values containing $last references. Any implicit
 reference to the last task is updated to reference a last task of a specified taskType. For example, a value of "$last.sequenceNo" would be replaced with "$last[fetch].sequenceNo" if the taskType is "fetch". Existing "$last[...]" references are left as-is.
 This method is a helper to implement task-specific updateLastElementBindingReferences().
values - the object to be updatedtaskType - the taskType to be used in new referencepublic ProcessElement setAttribute(java.lang.String attribute, ProcessElement[] value, boolean allowPostCreate)
public ProcessElement[] getProcessElements(java.lang.String attribute)
public static com.google.gwt.core.client.JavaScriptObject convertToJavaScriptArray(ProcessElement[] array)