Interface IWorkflowBpmnFlowEdgeBuilder

All Superinterfaces:
IWorkflowBpmnConnectionEdgeBuilder<IWorkflowBpmnFlowEdgeBuilder, de.xima.bpmn_model.api.element.bpmn.common.FlowNode<?>>

public interface IWorkflowBpmnFlowEdgeBuilder extends IWorkflowBpmnConnectionEdgeBuilder<IWorkflowBpmnFlowEdgeBuilder, de.xima.bpmn_model.api.element.bpmn.common.FlowNode<?>>
Builder for creating a SequenceFlow and a BPMN edge between a source and a target, used by IFlattenedAlignmentItemMap.flow().

When modelling a workflow element as BPMN, the usual approach is to create a nested tree of alignment items, making use of the layouter. This tree then gets resolved to a flat map. Finally, the various method on IFlattenedAlignmentItemMap can be used to create the BPMN shapes, BPMN edges and sequence flows.

Since:
8.4.0
  • Method Details

    • build

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdge build()
      Creates a SequenceFlow and BPMN edge between the configured source and target.
      Returns:
      The created sequence flow and BPMN edge.
    • defaultFor

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder defaultFor(de.xima.bpmn_model.api.behavior.DefaultFlowAvailable<?> element)
      Marks the built flow as the default flow for the given BPMN element.
      Parameters:
      element - The BPMN element that can have a default flow.
      Returns:
      This builder for chaining method calls.
    • defaultFor

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder defaultFor(IBpmnElementAccessor<? extends de.xima.bpmn_model.api.behavior.DefaultFlowAvailable<?>> element)
      Marks the built flow as the default flow for the given BPMN element.
      Parameters:
      element - The BPMN element that can have a default flow.
      Returns:
      This builder for chaining method calls.
    • fromInPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromInPort(IStructuredBpmnModelPartBuilder<?> part, Point2DDouble inPortPoint)
      Sets the sequence flow's source to the in port of the given structured model part, using the given point as the in port point.
      Parameters:
      part - The source part of the sequence flow.
      inPortPoint - The in port point of the sequence flow, which is used as the first waypoint.
      Returns:
      This builder for chaining method calls.
    • fromInPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromInPort(IStructuredBpmnModelPart part)
      Sets the sequence flow's source to the in port of the given structured model part.
      Parameters:
      part - The source part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • fromInPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromInPort(IStructuredBpmnModelPartBuilder<?> part)
      Sets the sequence flow's source to the in port of the given structured model part. Use the current in port as the source point.
      Parameters:
      part - The source part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • fromOutPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromOutPort(IStructuredBpmnModelPartBuilder<?> part, Point2DDouble outPortPoint)
      Sets the sequence flow's source to the out port of the given structured model part, using the given point as the out port point.
      Parameters:
      part - The source part of the sequence flow.
      outPortPoint - The out port point of the sequence flow, which is used as the first waypoint.
      Returns:
      This builder for chaining method calls.
    • fromOutPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromOutPort(IStructuredBpmnModelPart part)
      Sets the sequence flow's source to the out port of the given structured model part.
      Parameters:
      part - The source part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • fromOutPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromOutPort(IStructuredBpmnModelPartBuilder<?> part)
      Sets the sequence flow's source to the out port of the given structured model part. Use the current out port as the source point.
      Parameters:
      part - The source part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • fromStartToEndEvent

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder fromStartToEndEvent(IBoundedBpmnElementLayout<?> subProcessBody)
      Creates a SequenceFlow and BPMN edge between the start and end event of the given layout. Uses the out port of the start event and the in port of the end event.
      Parameters:
      subProcessBody - The sub process body of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • name

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder name(StyledBpmnLabel name)
      Sets the name (label) of the sequence flow. Applicable only when the source is an initial flow node where a sequence flow starts, not an intermediate structured BPMN model part. When set, sets the name on the sequence flow and creates a BPMN label for BPMN edge with the appropriate position and dimensions.

      This method assumes that an alignment item was already created for the label, whose value is the given name.

      Parameters:
      name - The name for the sequence flow.
      Returns:
      This builder for chaining method calls.
    • name

      Sets the name (label) of the sequence flow. Applicable only when the source is an initial flow node where a sequence flow starts, not an intermediate structured BPMN model part. When set, sets the name on the sequence flow and creates a BPMN label for BPMN edge with the appropriate position and dimensions.
      Parameters:
      name - The item with the name of the sequence flow and the dimensions of the label text.
      position - The absolute position of the label.
      Returns:
      This builder for chaining method calls.
    • name

      Sets the name (label) of the sequence flow. Applicable only when the source is an initial flow node where a sequence flow starts, not an intermediate structured BPMN model part. When set, sets the name on the sequence flow and creates a BPMN label for BPMN edge with the appropriate position and dimensions.
      Parameters:
      name - The positioned item with the name of the sequence flow, the dimensions of the label text, and its position.
      Returns:
      This builder for chaining method calls.
    • name

      Sets the name (label) of the sequence flow. Applicable only when the source is an initial flow node where a sequence flow starts, not an intermediate structured BPMN model part. When set, sets the name on the sequence flow and creates a BPMN label for BPMN edge with the appropriate position and dimensions.
      Parameters:
      name - The item with the name of the sequence flow and the dimensions of the label text.
      configurator - Configurator for computing the position of the label from the edge's waypoints.
      Returns:
      This builder for chaining method calls.
    • toInPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder toInPort(IStructuredBpmnModelPartBuilder<?> part, Point2DDouble inPortPoint)
      Sets the sequence flow's target to the in port of the given structured model part, using the given point as the in port point.
      Parameters:
      part - The target part of the sequence flow.
      inPortPoint - The in port point of the sequence flow, which is used as the last waypoint.
      Returns:
      This builder for chaining method calls.
    • toInPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder toInPort(IStructuredBpmnModelPart part)
      Sets the sequence flow's target to the in port of the given structured model part.
      Parameters:
      part - The target part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • toInPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder toInPort(IStructuredBpmnModelPartBuilder<?> part)
      Sets the sequence flow's target to the in port of the given structured model part. Use the current in port as the target point.
      Parameters:
      part - The target part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • toOutPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder toOutPort(IStructuredBpmnModelPartBuilder<?> part, Point2DDouble outPortPoint)
      Sets the sequence flow's target to the out port of the given structured model part, using the given point as the out port point.
      Parameters:
      part - The target part of the sequence flow.
      outPortPoint - The out port point of the sequence flow, which is used as the last waypoint.
      Returns:
      This builder for chaining method calls.
    • toOutPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder toOutPort(IStructuredBpmnModelPart part)
      Sets the sequence flow's target to the out port of the given structured model part.
      Parameters:
      part - The target part of the sequence flow.
      Returns:
      This builder for chaining method calls.
    • toOutPort

      @CanIgnoreReturnValue IWorkflowBpmnFlowEdgeBuilder toOutPort(IStructuredBpmnModelPartBuilder<?> part)
      Sets the sequence flow's target to the out port of the given structured model part. Use the current out port as the target point.
      Parameters:
      part - The target part of the sequence flow.
      Returns:
      This builder for chaining method calls.