Interface IFlattenedAlignmentItemMap<Value>

    • Method Detail

      • association

        IWorkflowBpmnAssociationEdgeBuilder association()
        Gets a builder for adding an Association between elements in this map. This is a convenience method, you could also retrieve the corresponding elements manually from this map and create the association manually.
        Returns:
        A builder for creating an association.
      • boundingBox

        Rectangular2DDouble boundingBox​(Object value)
        Finds the item at the given value and returns its bounding box.
        Parameters:
        value - The value of the alignment item.
        Returns:
        The bounding box of the alignment item, or null if no item with the given value exists.
      • coordinateAtEdge

        double coordinateAtEdge​(Object value,
                                ECardinalDirection2D direction)
        Finds the item at the given value and returns the coordinate of the edge in the given direction. See Geometry2D#edgeCoordinate for more details.
        Parameters:
        value - The value of the alignment item.
        direction - The direction of the edge to retrieve the coordinate for.
        Returns:
        The coordinate of the edge in the given direction, or NaN if no such item exists.
      • createBoundaryEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createBoundaryEventShape​(de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent boundaryEvent)
        Creates a BPMN shape for the given boundary event and colorizes it with the default colors, if needed.
        Parameters:
        boundaryEvent - The boundary event to create a shape for.
        Returns:
        The new BPMN shape for the boundary event.
      • createBoundaryEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createBoundaryEventShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.events.BoundaryEvent> boundaryEvent)
        Creates a BPMN shape for the given boundary event and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        boundaryEvent - The boundary event to create a shape for.
        Returns:
        The new BPMN shape for the boundary event.
      • createBpmnPointAtEdge

        de.xima.bpmn_model.api.element.dc.Point createBpmnPointAtEdge​(Object value,
                                                                      ECardinalDirection2D side,
                                                                      double position)
        Finds the item at the given value and creates a new Point for that a point on one of the item's 4 edges.
        Parameters:
        value - The value of the alignment item.
        side - The edge of the item to create the point on.
        position - The position of the point on the edge, between 0 and the maximum length of the edge. For the NORTH edge, 0 is the top-left corner. For the SOUTH edge, 0 is the bottom-left corner. For the EAST edge, 0 is the top-right corner. For the WEST edge, 0 is the top-left corner.
        Returns:
        The BPMN point with the position of the point, or null when no item exists for the given key.
      • createBpmnPointAtEdgeRelative

        de.xima.bpmn_model.api.element.dc.Point createBpmnPointAtEdgeRelative​(Object value,
                                                                              ECardinalDirection2D side,
                                                                              double ratio)
        Finds the item at the given value and creates a new Point for that a point on one of the item's 4 edges.
        Parameters:
        value - The value of the alignment item.
        side - The edge of the item to create the point on.
        ratio - The relative position of the point on the edge, between 0 (start of the edge) and 1 (end of the edge). For the NORTH edge, 0 is the top-left corner. For the SOUTH edge, 0 is the bottom-left corner. For the EAST edge, 0 is the top-right corner. For the WEST edge, 0 is the top-left corner.
        Returns:
        The BPMN point with the position of the point, or null when no item exists for the given key.
      • createBpmnShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createBpmnShape​(Object value)
        Finds the item at the given value and creates a new BpmnShape for that item. Uses the position and bounding box for the bounds of the shape. If the value of the item is a BaseElement, it will be set as the shape's BPMN element.
        Parameters:
        value - The value of the alignment item.
        Returns:
        The new BPMN shape for the alignment item, or null when no item exists for the given key.
      • createDataObjectShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createDataObjectShape​(de.xima.bpmn_model.api.element.bpmn.data.DataObjectReference dataObject)
        Creates a BPMN shape for the given data object and colorizes it with the default colors, if needed.
        Parameters:
        dataObject - The data object to create a shape for.
        Returns:
        The new BPMN shape for the boundary event.
      • createDataObjectShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createDataObjectShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.data.DataObjectReference> dataObject)
        Creates a BPMN shape for the given data object and colorizes it with the default colors, if needed.
        Parameters:
        dataObject - The data object to create a shape for.
        Returns:
        The new BPMN shape for the boundary event.
      • createDataStoreShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createDataStoreShape​(de.xima.bpmn_model.api.element.bpmn.data.DataStoreReference dataStore)
        Creates a BPMN shape for the given data store and colorizes it with the default colors, if needed.
        Parameters:
        dataStore - The data store to create a shape for.
        Returns:
        The new BPMN shape for the boundary event.
      • createDataStoreShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createDataStoreShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.data.DataStoreReference> dataStore)
        Creates a BPMN shape for the given data store and colorizes it with the default colors, if needed.
        Parameters:
        dataStore - The data store to create a shape for.
        Returns:
        The new BPMN shape for the boundary event.
      • createEndEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createEndEventShape​(de.xima.bpmn_model.api.element.bpmn.events.EndEvent endEvent)
        Creates a BPMN shape for the given end event and colorizes it with the default colors, if needed.
        Parameters:
        endEvent - The end event to create a shape for.
        Returns:
        The new BPMN shape for the end event.
      • createEndEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createEndEventShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.events.EndEvent> endEvent)
        Creates a BPMN shape for the given end event and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        endEvent - The end event to create a shape for.
        Returns:
        The new BPMN shape for the end event.
      • createExclusiveGatewayShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createExclusiveGatewayShape​(de.xima.bpmn_model.api.element.bpmn.gateways.ExclusiveGateway gateway)
        Creates a BPMN shape for the given exclusive gateway and colorizes it with the default colors, if needed.
        Parameters:
        gateway - The exclusive gateway to create a shape for.
        Returns:
        The new BPMN shape for the exclusive gateway.
      • createExclusiveGatewayShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createExclusiveGatewayShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.gateways.ExclusiveGateway> gateway)
        Creates a BPMN shape for the given exclusive gateway and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        gateway - The exclusive gateway to create a shape for.
        Returns:
        The new BPMN shape for the exclusive gateway.
      • createExpandedSubProcessShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createExpandedSubProcessShape​(de.xima.bpmn_model.api.element.bpmn.activities.SubProcess<?> subProcess)
        Creates a BPMN shape for the given expanded sub process and colorizes it with the default colors, if needed.
        Parameters:
        subProcess - The expanded sub process to create a shape for.
        Returns:
        The new BPMN shape for the expanded sub process.
      • createExpandedSubProcessShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createExpandedSubProcessShape​(ISubProcessBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.activities.SubProcess<?>> subProcess)
        Creates a BPMN shape for the given expanded sub process and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, as well as the start and end event, if the given layout has any.

        Parameters:
        subProcess - The expanded sub process to create a shape for.
        Returns:
        The new BPMN shape for the expanded sub process.
      • createInPortBpmnPoint

        de.xima.bpmn_model.api.element.dc.Point createInPortBpmnPoint​(Object value)
        Finds the item at the given value and creates a new Point for that item's in port. Retrieves the item's in port and resolves that in port to an absolute position (with respect to the coordinate system of this alignment item map).
        Parameters:
        value - The value of the alignment item.
        Returns:
        The BPMN point with the position of the in port, or null when no item exists for the given key.
      • createIntermediateCatchEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createIntermediateCatchEventShape​(de.xima.bpmn_model.api.element.bpmn.events.IntermediateCatchEvent intermediateCatchEvent)
        Creates a BPMN shape for the given intermediate catch event and colorizes it with the default colors, if needed.
        Parameters:
        intermediateCatchEvent - The intermediate catch event to create a shape for.
        Returns:
        The new BPMN shape for the intermediate catch event.
      • createIntermediateCatchEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createIntermediateCatchEventShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.events.IntermediateCatchEvent> intermediateCatchEvent)
        Creates a BPMN shape for the given intermediate catch event and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        intermediateCatchEvent - The intermediate catch event to create a shape for.
        Returns:
        The new BPMN shape for the intermediate catch event.
      • createIntermediateThrowEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createIntermediateThrowEventShape​(de.xima.bpmn_model.api.element.bpmn.events.IntermediateThrowEvent intermediateThrowEvent)
        Creates a BPMN shape for the given intermediate throw event and colorizes it with the default colors, if needed.
        Parameters:
        intermediateThrowEvent - The intermediate throw event to create a shape for.
        Returns:
        The new BPMN shape for the intermediate throw event.
      • createIntermediateThrowEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createIntermediateThrowEventShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.events.IntermediateThrowEvent> intermediateThrowEvent)
        Creates a BPMN shape for the given intermediate throw event and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        intermediateThrowEvent - The intermediate throw event to create a shape for.
        Returns:
        The new BPMN shape for the intermediate throw event.
      • createLabel

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnLabel createLabel​(de.xima.bpmn_model.api.element.bpmndi.BpmnShape shape,
                                                                    StyledBpmnLabel styleLabel)
        Creates the label for the given shape. If the shape already has a label already, uses that label, otherwise creates a new label for the shape. Applies the bounds and label style to the label, if available, and returns the label.
        Parameters:
        shape - The shape to create a label for. The label will be added to this shape.
        styleLabel - The style to apply to the label, may be null. If null, the label will not have any style.
        Returns:
        The new BPMN label for the shape, or the existing label if the shape already has one.
      • createLabel

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnLabel createLabel​(de.xima.bpmn_model.api.element.bpmndi.BpmnEdge edge,
                                                                    StyledBpmnLabel styleLabel)
        Creates the label for the given edge. If the edge already has a label already, uses that label, otherwise creates a new label for the edge. Applies the bounds and label style to the label, if available, and returns the label.
        Parameters:
        edge - The edge to create a label for. The label will be added to this edge.
        styleLabel - The style to apply to the label, may be null. If null, the label will not have any style.
        Returns:
        The new BPMN label for the edge, or the existing label if the edge already has one.
      • createLabel

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnLabel createLabel​(de.xima.bpmn_model.api.element.bpmndi.BpmnShape shape,
                                                                    INamedBpmnElementLayout<?> namedElement)
        Creates the label for the given shape. If the shape already has a label already, uses that label, otherwise creates a new label for the shape. Applies the bounds and label style to the label, if available, and returns the label.
        Parameters:
        shape - The shape to create a label for. The label will be added to this shape.
        namedElement - An element with a styled label apply, may be null. If null, the label will not have any style.
        Returns:
        The new BPMN label for the shape, or the existing label if the shape already has one.
      • createLabel

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnLabel createLabel​(de.xima.bpmn_model.api.element.bpmndi.BpmnEdge edge,
                                                                    INamedBpmnElementLayout<?> namedElement)
        Creates the label for the given edge. If the edge already has a label already, uses that label, otherwise creates a new label for the edge. Applies the bounds and label style to the label, if available, and returns the label.
        Parameters:
        edge - The edge to create a label for. The label will be added to this edge.
        namedElement - An element with a styled label apply, may be null. If null, the label will not have any style.
        Returns:
        The new BPMN label for the edge, or the existing label if the edge already has one.
      • createOutPortBpmnPoint

        de.xima.bpmn_model.api.element.dc.Point createOutPortBpmnPoint​(Object value)
        Finds the item at the given value and creates a new Point for that item's out port. Retrieves the item's out port and resolves that out port to an absolute position (with respect to the coordinate system of this alignment item map).
        Parameters:
        value - The value of the alignment item.
        Returns:
        The BPMN point with the position of the out port, or null when no item exists for the given key.
      • createResolvedBpmnPoint

        de.xima.bpmn_model.api.element.dc.Point createResolvedBpmnPoint​(Object value,
                                                                        String name)
        Finds the item at the given value and gets the named point with the given name. The point is resolved relative to the item's position. Creates and returns a new Point with those coordinates.
        Parameters:
        value - The value of the alignment item.
        name - The name of the point to retrieve.
        Returns:
        A new BPMN point with the resolved coordinates of the given named point.
      • createStartEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createStartEventShape​(de.xima.bpmn_model.api.element.bpmn.events.StartEvent startEvent)
        Creates a BPMN shape for the given start event and colorizes it with the default colors, if needed.
        Parameters:
        startEvent - The start event to create a shape for.
        Returns:
        The new BPMN shape for the start event.
      • createStartEventShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createStartEventShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.events.StartEvent> startEvent)
        Creates a BPMN shape for the given start event and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        startEvent - The start event to create a shape for.
        Returns:
        The new BPMN shape for the start event.
      • createSubProcessBodyEventShapes

        @CanIgnoreReturnValue
        IWorkflowBpmnSubProcessBodyShape createSubProcessBodyEventShapes​(IBoundedBpmnElementLayout<?> bounded)
        Creates a BPMN shape for the start and end events of the given sub process body (if any) and colorizes them with the default colors, if needed.
        Parameters:
        bounded - The body of a sub process with a start and end event for which to create shapes.
        Returns:
        The new BPMN shapes for the start and end events.
      • createTaskShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createTaskShape​(de.xima.bpmn_model.api.element.bpmn.activities.Task<?> task)
        Creates a BPMN shape for the given task and colorizes it with the default colors, if needed.
        Parameters:
        task - The task to create a shape for.
        Returns:
        The new BPMN shape for the task.
      • createTaskShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createTaskShape​(IAnnotatedNamedBpmnElementLayout<? extends de.xima.bpmn_model.api.element.bpmn.activities.Task<?>> task)
        Creates a BPMN shape for the given task and colorizes it with the default colors, if needed.

        This method will also create the name and text annotation, if the given layout has any.

        Parameters:
        task - The task to create a shape for.
        Returns:
        The new BPMN shape for the task.
      • createTextAnnotationShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createTextAnnotationShape​(de.xima.bpmn_model.api.element.bpmn.artifacts.TextAnnotation textAnnotation,
                                                                                  StyledBpmnLabel label)
        Creates a BPMN shape for the given text annotation, colorizes it with the default colors if needed, and adds a label to the shape.
        Parameters:
        textAnnotation - The text annotation to create a shape for.
        label - The label of the text annotation.
        Returns:
        The new BPMN shape for the text annotation.
      • createTextAnnotationShape

        @CanIgnoreReturnValue
        de.xima.bpmn_model.api.element.bpmndi.BpmnShape createTextAnnotationShape​(IAnnotatedBpmnElementLayout<?> annotatedLayout)
        Creates a BPMN shape for the given text annotation, colorizes it with the default colors if needed, and adds a label to the shape.
        Parameters:
        annotatedLayout - The annotated layout with the text annotation and its text.
        Returns:
        The new BPMN shape for the text annotation.
      • dataAssociation

        IWorkflowBpmnDataAssociationEdgeBuilder dataAssociation()
        Gets a builder for creating a BpmnEdge for a DataAssociation between elements in this map. This is a convenience method, you could also retrieve the corresponding elements manually from this map and create the edge manually.
        Returns:
        A builder for creating an edge for a data association.
      • flow

        IWorkflowBpmnFlowEdgeBuilder flow()
        Gets a builder for adding a SequenceFlow between elements in this map. This is a convenience method, you could also retrieve the corresponding elements manually from this map and create the flow manually.
        Returns:
        A builder for creating a sequence flow.
      • get

        Positioned<IWorkflowBpmnAlignmentItem<?,​?>,​Point2DDouble> get​(Object value)
        Gets the alignment item for the given value. The value corresponds to the value of each individual alignment item. You may also pass an instance of IWorkflowBpmnAlignmentItem; if you do, this is treated as if you had passed the value of that item.
        Parameters:
        value - The value of the alignment item to get.
        Returns:
        The alignment item for the given key, or null if no such item exists.
      • inPort

        Double inPort​(Object value)
        Finds the item at the given value and returns its in port.
        Parameters:
        value - The value of the alignment item.
        Returns:
        The in port of the alignment item, or null if no item with the given value exists.
      • inPortPoint

        Point2DDouble inPortPoint​(Object value)
        Finds the item at the given value, retrieves its in port and resolves that in port to an absolute position (with respect to the coordinate system of this alignment item map).
        Parameters:
        value - The value of the alignment item.
        Returns:
        The absolute position of the in port, or null if no item with the given value exists.
      • item

        IWorkflowBpmnAlignmentItem<?,​?> item​(Object value)
        Finds the item at the given value and returns its alignment item.
        Parameters:
        value - The value of the alignment item to get.
        Returns:
        The alignment item for the given key, or null if no such item exists.
      • item

        <Item extends IWorkflowBpmnAlignmentItem<?,​?>> Item item​(Object value,
                                                                       Class<Item> type)
        Finds the item at the given value and returns its alignment item, if it is of the given type.
        Parameters:
        value - The value of the alignment item to get.
        type - The desired alignment item subtype.
        Returns:
        The alignment item for the given key, or null if no such item exists.
      • outPort

        Double outPort​(Object value)
        Finds the item at the given value and returns its out port.
        Parameters:
        value - The value of the alignment item.
        Returns:
        The out port of the alignment item, or null if no item with the given value exists.
      • outPortPoint

        Point2DDouble outPortPoint​(Object value)
        Finds the item at the given value, retrieves its in port and resolves that in port to an absolute position (with respect to the coordinate system of this alignment item map).
        Parameters:
        value - The value of the alignment item.
        Returns:
        The absolute position of the in port, or null if no item with the given value exists.
      • pointAtEdge

        Point2DDouble pointAtEdge​(Object value,
                                  ECardinalDirection2D side,
                                  double position)
        Finds the item at the given value and creates a point on one of that item's edges at the given position.
        Parameters:
        value - The value of the alignment item.
        side - The edge of the item to create the point on.
        position - The position of the point on the edge, between 0 and the maximum length of the edge. For the NORTH edge, 0 is the top-left corner. For the SOUTH edge, 0 is the bottom-left corner. For the EAST edge, 0 is the top-right corner. For the WEST edge, 0 is the top-left corner.
        Returns:
        The absolute position of the in port, or null if no item with the given value exists.
      • pointAtEdgeRelative

        Point2DDouble pointAtEdgeRelative​(Object value,
                                          ECardinalDirection2D side,
                                          double ratio)
        Finds the item at the given value and creates a point on one of that item's edges at the given position.
        Parameters:
        value - The value of the alignment item.
        side - The edge of the item to create the point on.
        ratio - The relative position of the point on the edge, between 0 (start of the edge) and 1 (end of the edge). For the NORTH edge, 0 is the top-left corner. For the SOUTH edge, 0 is the bottom-left corner. For the EAST edge, 0 is the top-right corner. For the WEST edge, 0 is the top-left corner.
        Returns:
        The absolute position of the in port, or null if no item with the given value exists.
      • position

        Point2DDouble position​(Object value)
        Finds the item at the given value and returns its position.
        Parameters:
        value - The value of the alignment item.
        Returns:
        The position of the alignment item, or null if no item with the given value exists.
      • resolvedPoint

        Point2DDouble resolvedPoint​(Object value,
                                    String name)
        Finds the item at the given value and returns the named point with the given name. The point is resolved relative to the item's position.
        Parameters:
        value - The value of the alignment item.
        name - The name of the point to retrieve.
        Returns:
        The point with the given name, or null if no item with the given value exists.
      • size

        int size()
        Gets the number of alignment items present.
        Returns:
        The number of alignment items.