Enum FcSwitchBpmnModeler
- java.lang.Object
-
- java.lang.Enum<FcSwitchBpmnModeler>
-
- de.xima.fc.workflow.designer.bpmn.node.flow_control.FcSwitchBpmnModeler
-
- All Implemented Interfaces:
IWorkflowNodeBpmnModeler<FcSwitchProps>
,Serializable
,Comparable<FcSwitchBpmnModeler>
public enum FcSwitchBpmnModeler extends Enum<FcSwitchBpmnModeler> implements IWorkflowNodeBpmnModeler<FcSwitchProps>
BPMN modeler
for nodes of typeswitch
. Creates a sequence of gateways, one for each switch case. Also adds an initial diverging gateway that checks whether any switch case matches. We cannot use inclusive gateways from the BPMN standard here, because they do not guarantee sequential execution. The workflow engine executes all matching switch cases in the order they were defined in the workflow designer.- Since:
- 8.4.0
-
-
Enum Constant Summary
Enum Constants Enum Constant Description INSTANCE
The immutable singleton instance of this modeler.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
modelNode(IModelWorkflowNodeParams<FcSwitchProps> params, IWorkflowBpmnModelContext context)
Models aWorkflowNode
in the BPMN diagram.static FcSwitchBpmnModeler
valueOf(String name)
Returns the enum constant of this type with the specified name.static FcSwitchBpmnModeler[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
INSTANCE
public static final FcSwitchBpmnModeler INSTANCE
The immutable singleton instance of this modeler.
-
-
Method Detail
-
values
public static FcSwitchBpmnModeler[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (FcSwitchBpmnModeler c : FcSwitchBpmnModeler.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static FcSwitchBpmnModeler valueOf(String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
modelNode
public void modelNode(IModelWorkflowNodeParams<FcSwitchProps> params, IWorkflowBpmnModelContext context)
Description copied from interface:IWorkflowNodeBpmnModeler
Models aWorkflowNode
in the BPMN diagram. This method is called once for theroot node
of eachWorkflowTask
in the workflow. Implementations for nodes that havechildren
should callcontext.modelNode(node)
on their child nodes if needed.The responsibility of each modeler is to access the provided
params.partBuilder()
and add the appropriate data to that builder. That data then gets used to create aIStructuredBpmnModelPart
for thenode
, see the class-level documentation ofIStructuredBpmnModelPart
for more info.When modelling a workflow node as BPMN, the usual approach is to create a nested tree of
alignment items
, making use of thelayouter
. This tree then getsresolved
to a flat map. Finally, the various method onIFlattenedAlignmentItemMap
can be used to create theBPMN shapes
,BPMN edges
andsequence flows
.- Specified by:
modelNode
in interfaceIWorkflowNodeBpmnModeler<FcSwitchProps>
- Parameters:
params
- The parameters for the modeler, containing theWorkflowNode
to model and its deserialized custom properties model, as well as the part builder to fill with data.context
- The context for creating the BPMN diagram, its lifecycle starts when the conversion (of the workflow to a BPMN diagram) starts and ends when the conversion ends. The context lets you access various helper methods such as thelayouter()
orcolorizer
, and also provides access to all global data such as alltriggers
andnodes
in the workflow.
-
-