Package org.jbpm.workflow.instance.node

## Class StateBasedNodeInstance

- java.lang.Object
- - org.jbpm.workflow.instance.impl.NodeInstanceImpl
  - - org.jbpm.workflow.instance.impl.ExtendedNodeInstanceImpl
    - - org.jbpm.workflow.instance.node.StateBasedNodeInstance

- All Implemented Interfaces:
    `Serializable`, `EventBasedNodeInstanceInterface`, `NodeInstance`, `org.kie.api.runtime.process.EventListener`, `org.kie.api.runtime.process.NodeInstance`
  Direct Known Subclasses:
    `CompositeNodeInstance`, `MilestoneNodeInstance`, `RuleSetNodeInstance`, `SubProcessNodeInstance`, `TimerNodeInstance`, `WorkItemNodeInstance`

      public abstract class StateBasedNodeInstance
      extends ExtendedNodeInstanceImpl
      implements EventBasedNodeInstanceInterface, org.kie.api.runtime.process.EventListener

  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.jbpm.workflow.instance.impl.NodeInstanceImpl

      `NodeInstanceImpl.NodeInstanceTrigger`

    - ### Nested classes/interfaces inherited from interface org.jbpm.workflow.instance.NodeInstance

      `NodeInstance.CancelType`

  - ### Field Summary

    - ### Fields inherited from class org.jbpm.workflow.instance.impl.NodeInstanceImpl

      `cancelType, dynamicParameters, slaCompliance, slaDueDate, slaTimerId, triggerTime, UNIQUE_ID`

    - ### Fields inherited from interface org.jbpm.workflow.instance.NodeInstance

      `METADATA_WRAP_ASYNC_NODE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `StateBasedNodeInstance()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addEventListeners()` |
    `protected void` | `addTimerListener()` |
    `void` | `cancel​(NodeInstance.CancelType cancelType)` |
    `protected boolean` | `checkDeclarationMatch​(org.kie.api.runtime.rule.Match match, String matchVariable)` |
    `protected boolean` | `checkProcessInstance​(org.kie.api.runtime.rule.Match match)` |
    `protected void` | `configureSla()` |
    `protected void` | `configureTimerInstance​(Timer timer, TimerInstance timerInstance)` |
    `protected TimerInstance` | `createTimerInstance​(Timer timer)` |
    `protected String` | `getActivationType()` |
    `StateBasedNode` | `getEventBasedNode()` |
    `String[]` | `getEventTypes()` |
    `List<Long>` | `getTimerInstances()` |
    `protected void` | `handleSLAViolation()` |
    `void` | `internalSetTimerInstances​(List<Long> timerInstances)` |
    `void` | `internalTrigger​(org.kie.api.runtime.process.NodeInstance from, String type)` |
    `protected void` | `mapDynamicOutputData​(Map<String,​Object> results)` |
    `protected void` | `registerBoundaryEvents()` |
    `void` | `removeEventListeners()` |
    `protected String` | `resolveVariable​(String s)` |
    `void` | `signalEvent​(String type, Object event)` |
    `void` | `triggerCompleted()` |
    `protected void` | `triggerCompleted​(String type, boolean remove)` |
    `protected void` | `triggerTimer​(TimerInstance timerInstance)` |

    - ### Methods inherited from class org.jbpm.workflow.instance.impl.ExtendedNodeInstanceImpl

      `getExtendedNode, handleAssignment, mapOutputSetVariables, mapOutputSetVariables, triggerCompleted, triggerEvent`

    - ### Methods inherited from class org.jbpm.workflow.instance.impl.NodeInstanceImpl

      `cancel, executeAction, followConnection, getCancelType, getExecutionErrorHandler, getFrom, getId, getLevel, getMetaData, getMetaData, getNode, getNodeId, getNodeInstanceContainer, getNodeName, getProcessInstance, getSlaCompliance, getSlaDueDate, getSlaTimerId, getTriggerTime, getUniqueId, getVariable, internalSetSlaCompliance, internalSetSlaDueDate, internalSetSlaTimerId, isAborted, isInversionOfControl, resolveContext, resolveContextInstance, resolveContextInstance, retrigger, setAborted, setDynamicParameters, setId, setLevel, setMetaData, setNodeId, setNodeInstanceContainer, setProcessInstance, setVariable, trigger, triggerConnection, triggerNode, triggerNode, triggerNodeInstance, triggerNodeInstance`

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

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

- - ### Constructor Detail

    - #### StateBasedNodeInstance

          public StateBasedNodeInstance()

  - ### Method Detail

    - #### getEventBasedNode

          public StateBasedNode getEventBasedNode()

    - #### internalTrigger

          public void internalTrigger​(org.kie.api.runtime.process.NodeInstance from,
                                      String type)

      Overrides:
        `internalTrigger` in class `ExtendedNodeInstanceImpl`

    - #### registerBoundaryEvents

          protected void registerBoundaryEvents()

    - #### configureSla

          protected void configureSla()

      Overrides:
        `configureSla` in class `NodeInstanceImpl`

    - #### createTimerInstance

          protected TimerInstance createTimerInstance​(Timer timer)

    - #### configureTimerInstance

          protected void configureTimerInstance​(Timer timer,
                                                TimerInstance timerInstance)

    - #### resolveVariable

          protected String resolveVariable​(String s)

    - #### handleSLAViolation

          protected void handleSLAViolation()

    - #### signalEvent

          public void signalEvent​(String type,
                                  Object event)

      Specified by:
        `signalEvent` in interface `org.kie.api.runtime.process.EventListener`

    - #### triggerTimer

          protected void triggerTimer​(TimerInstance timerInstance)

    - #### getEventTypes

          public String[] getEventTypes()

      Specified by:
        `getEventTypes` in interface `org.kie.api.runtime.process.EventListener`

    - #### triggerCompleted

          public void triggerCompleted()

    - #### addEventListeners

          public void addEventListeners()

      Specified by:
        `addEventListeners` in interface `EventBasedNodeInstanceInterface`

    - #### addTimerListener

          protected void addTimerListener()

    - #### removeEventListeners

          public void removeEventListeners()

      Specified by:
        `removeEventListeners` in interface `EventBasedNodeInstanceInterface`

    - #### triggerCompleted

          protected void triggerCompleted​(String type,
                                          boolean remove)

      Overrides:
        `triggerCompleted` in class `ExtendedNodeInstanceImpl`

    - #### getTimerInstances

          public List<Long> getTimerInstances()

    - #### internalSetTimerInstances

          public void internalSetTimerInstances​(List<Long> timerInstances)

    - #### cancel

          public void cancel​(NodeInstance.CancelType cancelType)

      Specified by:
        `cancel` in interface `NodeInstance`
      Overrides:
        `cancel` in class `NodeInstanceImpl`

    - #### getActivationType

          protected String getActivationType()

    - #### checkProcessInstance

          protected boolean checkProcessInstance​(org.kie.api.runtime.rule.Match match)

    - #### checkDeclarationMatch

          protected boolean checkDeclarationMatch​(org.kie.api.runtime.rule.Match match,
                                                  String matchVariable)

    - #### mapDynamicOutputData

          protected void mapDynamicOutputData​(Map<String,​Object> results)