This library allows BPMN designers to declaratively define what values, from an incoming JSON based message, will be used to correlate to a Process or a Process Instance (e.g. Execution). Message values are evaluated at runtime using JSON Path expressions which are stored within the BPMN.
Using the modeler you can assign extensions to a Start Event, Message Catch Event, Boundary Event, or a Receive Task.
Note: {prefix} defaults to
ultimate.workflow
but can be configured via the application properties
Sets the topic value you wish to save with the extension data, to be used for message consumers to establish connections for correlation messages.
Example usage:
String topic = messageTypeExtensionData.getTopic();
topicContainerManager.createOrStartConsumer(topic, listener);
Assigns the business process key that will be used to start a new process or match on a currently running process
Note: This can also be declared as
{prefix}.match-var.business-process-key={json-path}
Java equivalent:
processEngine.getRuntimeService()
.createMessageCorrelation("com.acme.messages.important-event")
.processInstanceBusinessKey("key")
Creates a match requirement on a variable whose name is defined by {variable-name}
Java equivalent:
processEngine.getRuntimeService()
.createMessageCorrelation("com.acme.messages.important-event")
.processVariableValueEquals("key", "value")
Creates a match requirement on a local variable whose name is defined by {variable-name}
Java equivalent:
processEngine.getRuntimeService()
.createMessageCorrelation("com.acme.messages.important-event")
.variableValueEquals("key", "value")
Sets a variable, whose name is defined by {variable-name}
Java equivalent:
processEngine.getRuntimeService()
.createMessageCorrelation("com.acme.messages.important-event")
.setVariable("key", "value")