Class DbMessageState
java.lang.Object
io.camunda.zeebe.engine.state.message.DbMessageState
- All Implemented Interfaces:
StreamProcessorLifecycleAware
,MessageState
,MutableMessageState
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.camunda.zeebe.engine.state.immutable.MessageState
MessageState.ExpiredMessageVisitor, MessageState.Index, MessageState.MessageVisitor
-
Constructor Summary
ConstructorsConstructorDescriptionDbMessageState
(ZeebeDb<ZbColumnFamilies> zeebeDb, TransactionContext transactionContext, int partitionId) -
Method Summary
Modifier and TypeMethodDescriptionboolean
exist
(org.agrona.DirectBuffer name, org.agrona.DirectBuffer correlationKey, org.agrona.DirectBuffer messageId) boolean
existActiveProcessInstance
(org.agrona.DirectBuffer bpmnProcessId, org.agrona.DirectBuffer correlationKey) boolean
existMessageCorrelation
(long messageKey, org.agrona.DirectBuffer bpmnProcessId) getMessage
(long messageKey) org.agrona.DirectBuffer
getProcessInstanceCorrelationKey
(long processInstanceKey) void
Callback after reprocessing was successful and before regular processing beginsvoid
put
(long key, MessageRecord record) void
putActiveProcessInstance
(org.agrona.DirectBuffer bpmnProcessId, org.agrona.DirectBuffer correlationKey) void
putMessageCorrelation
(long messageKey, org.agrona.DirectBuffer bpmnProcessId) void
putProcessInstanceCorrelationKey
(long processInstanceKey, org.agrona.DirectBuffer correlationKey) void
remove
(long key) void
removeActiveProcessInstance
(org.agrona.DirectBuffer bpmnProcessId, org.agrona.DirectBuffer correlationKey) void
removeMessageCorrelation
(long messageKey, org.agrona.DirectBuffer bpmnProcessId) void
removeProcessInstanceCorrelationKey
(long processInstanceKey) void
visitMessages
(org.agrona.DirectBuffer name, org.agrona.DirectBuffer correlationKey, MessageState.MessageVisitor visitor) boolean
visitMessagesWithDeadlineBeforeTimestamp
(long timestamp, MessageState.Index startAt, MessageState.ExpiredMessageVisitor visitor) Visits the messages with expired deadline, using the provided visitor.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.camunda.zeebe.engine.api.StreamProcessorLifecycleAware
onClose, onFailed, onPaused, onResumed
-
Constructor Details
-
DbMessageState
public DbMessageState(ZeebeDb<ZbColumnFamilies> zeebeDb, TransactionContext transactionContext, int partitionId)
-
-
Method Details
-
onRecovered
Description copied from interface:StreamProcessorLifecycleAware
Callback after reprocessing was successful and before regular processing begins- Specified by:
onRecovered
in interfaceMutableMessageState
- Specified by:
onRecovered
in interfaceStreamProcessorLifecycleAware
-
put
- Specified by:
put
in interfaceMutableMessageState
-
putMessageCorrelation
public void putMessageCorrelation(long messageKey, org.agrona.DirectBuffer bpmnProcessId) - Specified by:
putMessageCorrelation
in interfaceMutableMessageState
-
removeMessageCorrelation
public void removeMessageCorrelation(long messageKey, org.agrona.DirectBuffer bpmnProcessId) - Specified by:
removeMessageCorrelation
in interfaceMutableMessageState
-
putActiveProcessInstance
public void putActiveProcessInstance(org.agrona.DirectBuffer bpmnProcessId, org.agrona.DirectBuffer correlationKey) - Specified by:
putActiveProcessInstance
in interfaceMutableMessageState
-
removeActiveProcessInstance
public void removeActiveProcessInstance(org.agrona.DirectBuffer bpmnProcessId, org.agrona.DirectBuffer correlationKey) - Specified by:
removeActiveProcessInstance
in interfaceMutableMessageState
-
putProcessInstanceCorrelationKey
public void putProcessInstanceCorrelationKey(long processInstanceKey, org.agrona.DirectBuffer correlationKey) - Specified by:
putProcessInstanceCorrelationKey
in interfaceMutableMessageState
-
removeProcessInstanceCorrelationKey
public void removeProcessInstanceCorrelationKey(long processInstanceKey) - Specified by:
removeProcessInstanceCorrelationKey
in interfaceMutableMessageState
-
remove
public void remove(long key) - Specified by:
remove
in interfaceMutableMessageState
-
existMessageCorrelation
public boolean existMessageCorrelation(long messageKey, org.agrona.DirectBuffer bpmnProcessId) - Specified by:
existMessageCorrelation
in interfaceMessageState
-
existActiveProcessInstance
public boolean existActiveProcessInstance(org.agrona.DirectBuffer bpmnProcessId, org.agrona.DirectBuffer correlationKey) - Specified by:
existActiveProcessInstance
in interfaceMessageState
-
getProcessInstanceCorrelationKey
public org.agrona.DirectBuffer getProcessInstanceCorrelationKey(long processInstanceKey) - Specified by:
getProcessInstanceCorrelationKey
in interfaceMessageState
-
visitMessages
public void visitMessages(org.agrona.DirectBuffer name, org.agrona.DirectBuffer correlationKey, MessageState.MessageVisitor visitor) - Specified by:
visitMessages
in interfaceMessageState
-
getMessage
- Specified by:
getMessage
in interfaceMessageState
-
visitMessagesWithDeadlineBeforeTimestamp
public boolean visitMessagesWithDeadlineBeforeTimestamp(long timestamp, MessageState.Index startAt, MessageState.ExpiredMessageVisitor visitor) Description copied from interface:MessageState
Visits the messages with expired deadline, using the provided visitor. The visitor stops when all messages with expired deadline have been visited, but can also be controlled through the visitor function.- Specified by:
visitMessagesWithDeadlineBeforeTimestamp
in interfaceMessageState
- Parameters:
timestamp
- Timestamp used to determine whether the deadline has expiredstartAt
- Index used to start the iteration at; visiting starts at the beginning when startAt isnull
visitor
- This method is called for each message with expired deadline. It must return a boolean that whentrue
allows the visiting to continue, or whenfalse
stops the visiting.- Returns:
true
when the visiting is stopped due to the returned value of the last call to visitor, otherwisefalse
-
exist
public boolean exist(org.agrona.DirectBuffer name, org.agrona.DirectBuffer correlationKey, org.agrona.DirectBuffer messageId) - Specified by:
exist
in interfaceMessageState
-