Returns the next event trigger for the event scope or null if none exists.
void
triggerEvent(long eventScopeKey,
long eventKey,
org.agrona.DirectBuffer elementId,
org.agrona.DirectBuffer variables,
long processInstanceKey)
Creates a new event trigger for the given event scope.
void
triggerStartEvent(long processDefinitionKey,
long eventKey,
org.agrona.DirectBuffer elementId,
org.agrona.DirectBuffer variables,
long processInstanceKey)
Creates an event trigger for a process start event.
Methods inherited from interface io.camunda.zeebe.engine.state.immutable.EventScopeInstanceState
Creates a new event scope instance in the state. The event scope is interrupted if one of the
interrupting elements is triggered. An interrupted event scope can not be triggered by other
interrupting or non-interrupting events, except boundary events. After a interrupting boundary
event is triggered, no other event, including boundary events, can be triggered for the event
scope.
Parameters:
eventScopeKey - the event scope key
interruptingElementIds - element IDs that interrupt the event scope
boundaryElementIds - element IDs of boundary events
deleteInstance
voiddeleteInstance(long eventScopeKey)
Delete an event scope from the state. Does not fail in case the scope does not exist.
Parameters:
eventScopeKey - the key of the event scope to delete
Returns the next event trigger for the event scope or null if none exists. This will remove the
polled event trigger from the state if it exists.
Parameters:
eventScopeKey - the key of the event scope
Returns:
the next event trigger or null if none exist
triggerEvent
voidtriggerEvent(long eventScopeKey,
long eventKey,
org.agrona.DirectBuffer elementId,
org.agrona.DirectBuffer variables,
long processInstanceKey)
Creates a new event trigger for the given event scope. Ignores the trigger if the event scope
doesn't exist or if the event can be triggered in the scope (e.g. the scope is interrupted).
Use EventScopeInstanceState.canTriggerEvent(long, DirectBuffer) to check if the event can be triggered before
calling this method.
Parameters:
eventScopeKey - the key of the event scope the event is triggered in
eventKey - the key of the event record (used for ordering)
elementId - the id of the element which should be triggered, e.g. boundary event
variables - the variables of the occurred event, i.e. message variables
processInstanceKey - the key of the process instance this event is a part of
triggerStartEvent
voidtriggerStartEvent(long processDefinitionKey,
long eventKey,
org.agrona.DirectBuffer elementId,
org.agrona.DirectBuffer variables,
long processInstanceKey)
Creates an event trigger for a process start event. Uses the process definition key as the
scope key of the trigger.
Parameters:
processDefinitionKey - the key of the process definition a new instance should be created
of
eventKey - the key of the event record (used for ordering)
elementId - the id of the start event which should be triggered
variables - the variables of the occurred event, i.e. message variables
processInstanceKey - the key of the process instance this event is a part of
deleteTrigger
voiddeleteTrigger(long eventScopeKey,
long eventKey)
Deletes an event trigger by key and scope key. Does not fail if the trigger does not exist.