Interface BpmnElement

All Known Subinterfaces:
BpmnElementScope

public interface BpmnElement
Element of a TestCase.
  • Method Summary

    Modifier and Type
    Method
    Description
    io.camunda.zeebe.model.bpmn.instance.FlowNode
    Gets the underlying flow node.
    <T extends io.camunda.zeebe.model.bpmn.instance.FlowNode>
    T
    getFlowNode(Class<T> flowNodeType)
    Gets the underlying flow node of the given type.
    Returns the ID of the underlying flow node.
    Returns the name of the underlying flow node.
    int
    Determines how deep the BPMN element is nested within the BPMN process.
    Returns the next BPMN element, if this is not the last element.
    Return the parent BPMN element scope, if the underlying flow node is not a direct child of the BPMN process element.
    Returns the previous BPMN element, if this is not the first element.
    Returns the type or BpmnElementType.OTHER, if there is no explicit type.
    Returns the name of the flow node element type.
    boolean
    Determines if the BPMN element has a parent and the parent is a multi instance.
    boolean
    Determines if the BPMN element has a successor.
    boolean
    Determines if the BPMN element has a parent or if it is a direct child of the BPMN process element.
    boolean
    Determines if the BPMN element has a predecessor.
    boolean
    Checks if the BPMN element has a predecessor and the predecessor's type is the given type.
    boolean
    Checks if the BPMN element is a boundary event, that is attached to the given element.
    boolean
    Determines if the BPMN element is a multi instance.
    boolean
    Determines if the BPMN element is a sequential multi instance.
    boolean
    Returns true, if the BPMN element is a none start element of the process.
  • Method Details

    • getFlowNode

      io.camunda.zeebe.model.bpmn.instance.FlowNode getFlowNode()
      Gets the underlying flow node.
      Returns:
      The element's flow node.
    • getFlowNode

      <T extends io.camunda.zeebe.model.bpmn.instance.FlowNode> T getFlowNode(Class<T> flowNodeType)
      Gets the underlying flow node of the given type.
      Type Parameters:
      T - A flow node type - e.g. IntermediateCatchEvent.
      Parameters:
      flowNodeType - A specific flow node type.
      Returns:
      The typed flow node.
    • getId

      String getId()
      Returns the ID of the underlying flow node.
      Returns:
      The element ID.
    • getName

      String getName()
      Returns the name of the underlying flow node.
      Returns:
      The element name.
    • getNestingLevel

      int getNestingLevel()
      Determines how deep the BPMN element is nested within the BPMN process. Level 0, means that the element is not nested in a scope (embedded sub process).
      Returns:
      The element's nesting level.
    • getNext

      BpmnElement getNext()
      Returns the next BPMN element, if this is not the last element.
      Returns:
      The element's successors.
      Throws:
      IllegalStateException - If the element has no successors.
      See Also:
    • getParent

      BpmnElementScope getParent()
      Return the parent BPMN element scope, if the underlying flow node is not a direct child of the BPMN process element.
      Returns:
      The parent scope.
      Throws:
      IllegalStateException - If the element has no parent.
      See Also:
    • getPrevious

      BpmnElement getPrevious()
      Returns the previous BPMN element, if this is not the first element.
      Returns:
      The element's predecessor.
      Throws:
      IllegalStateException - If the element has no predecessor.
      See Also:
    • getType

      BpmnElementType getType()
      Returns the type or BpmnElementType.OTHER, if there is no explicit type.
      Returns:
      The element's type.
    • getTypeName

      String getTypeName()
      Returns the name of the flow node element type.
      Returns:
      The type name.
    • hasMultiInstanceParent

      boolean hasMultiInstanceParent()
      Determines if the BPMN element has a parent and the parent is a multi instance.
      Returns:
      true, if the element has a multi instance parent scope. Otherwise false.
      See Also:
    • hasNext

      boolean hasNext()
      Determines if the BPMN element has a successor.
      Returns:
      true, if the element has a successor. Otherwise false.
    • hasParent

      boolean hasParent()
      Determines if the BPMN element has a parent or if it is a direct child of the BPMN process element.
      Returns:
      true, if the element has a parent scope. Otherwise false.
    • hasPrevious

      boolean hasPrevious()
      Determines if the BPMN element has a predecessor.
      Returns:
      true, if the element has a predecessor. Otherwise false.
    • hasPrevious

      boolean hasPrevious(BpmnElementType type)
      Checks if the BPMN element has a predecessor and the predecessor's type is the given type.
      Parameters:
      type - A specific element type.
      Returns:
      true, if a previous element with the given type exists. Otherwise false.
    • isAttachedTo

      boolean isAttachedTo(BpmnElement element)
      Checks if the BPMN element is a boundary event, that is attached to the given element.
      Parameters:
      element - A specific element.
      Returns:
      true, if the element is attached to the given element. Otherwise false.
    • isMultiInstance

      boolean isMultiInstance()
      Determines if the BPMN element is a multi instance.
      Returns:
      true, if the element is a multi instance. Otherwise false.
    • isMultiInstanceSequential

      boolean isMultiInstanceSequential()
      Determines if the BPMN element is a sequential multi instance.
      Returns:
      true, if the element is a sequential multi instance. Otherwise false.
      Throws:
      IllegalStateException - If the element is not a multi instance.
    • isProcessStart

      boolean isProcessStart()
      Returns true, if the BPMN element is a none start element of the process.
      Returns:
      true, if the BPMN element is a none start element of the process. Otherwise false.