Interface IBpmnElementStore


public interface IBpmnElementStore
Provides access to all BPMN elements when creating a BPMN diagram.
Since:
8.4.0
  • Method Details

    • _interface

      de.xima.bpmn_model.api.element.bpmn.service.Interface _interface(Object id)
      Gets a global Interface with the given ID. If no interface with the given ID exists, creates a new interface. If an interface with the given ID already exists, returns that interface.
      Parameters:
      id - The ID of the interface. This is NOT the ID of the BPMN element.
      Returns:
      The global interface with the given ID, never null.
    • _interface

      de.xima.bpmn_model.api.element.bpmn.service.Interface _interface(Object... id)
      Gets a global Interface with the given ID. If no interface with the given ID exists, creates a new interface. If an interface with the given ID already exists, returns that interface.
      Parameters:
      id - The ID of the interface. When multiple values are given, this is considered a compound ID, and the order is important. This is NOT the ID of the BPMN element.
      Returns:
      The global interface with the given ID, never null.
    • allError

      de.xima.bpmn_model.api.element.bpmn.common.Error allError()
      A BPMN Error that references all types of errors.

      Can be caught by BPMN parts corresponding to a WorkflowNode whose execution catches all types of NodeThrewException. Other errors instances can be used, but implementations are strongly recommended to use this generic all error.

      Only the error code matters. You can either use a reference to this global error (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Error with the same error code. But prefer using a reference to keep the model small and clean.

      Returns:
      The global all error instance, never null.
    • allErrorCode

      String allErrorCode()
      The error code of the BPMN Error that references all types of errors.

      Can be caught by BPMN parts corresponding to a WorkflowNode whose execution catches all types of NodeThrewException. Other errors instances can be used, but implementations are strongly recommended to use this generic all error.

      Only the error code matters. You can either use a reference to this global error (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Error with the same error code. But prefer using a reference to keep the model small and clean.

      Returns:
      The global all error code, never null.
    • allErrorEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.ErrorEventDefinition allErrorEventDefinition()
      The global EventDefinition corresponding to the allError(). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Returns:
      The global all error event definition, never null.
    • breakEscalation

      de.xima.bpmn_model.api.element.bpmn.common.Escalation breakEscalation(WorkflowNode target)
      A BPMN Escalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeTransferredControlException that have a target and where the control transfer type is BREAK.

      In other words, this is used for break statements inside a loop that targets the configured loop.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      If the given target is null, this method returns null.

      Parameters:
      target - The target node of the break statement.
      Returns:
      The global break escalation instance for the given target, never null.
    • breakEscalationCode

      String breakEscalationCode(WorkflowNode target)
      The code of a BPMN Escalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeTransferredControlException that have a target and where the control transfer type is BREAK.

      In other words, this is used for break statements inside a loop that targets the configured loop.

      If the given target is null, this method returns null.

      Parameters:
      target - The target node of the break statement.
      Returns:
      The code of a global break escalation instance for the given target, never null.
    • breakEscalationEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.EscalationEventDefinition breakEscalationEventDefinition(WorkflowNode target)
      The global EventDefinition corresponding to the breakEscalation(WorkflowNode). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().

      If the given target is null, this method returns null.

      Parameters:
      target - The target node of the break statement.
      Returns:
      The global break escalation event definition for the given target, never null.
    • breakEscalationRaisable

      BpmnRaisableEscalation breakEscalationRaisable(WorkflowNode target)
      A BpmnRaisableEscalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeTransferredControlException that have a target and where the control transfer type is BREAK.

      In other words, this is used for break statements inside a loop that targets the configured loop.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      If the given target is null, this method returns null.

      Parameters:
      target - The target node of the break statement.
      Returns:
      The global break escalation instance for the given target, never null.
    • category

      de.xima.bpmn_model.api.element.bpmn.artifacts.Category category(Object id)
      Gets a global Category with the given ID. If no category with the given ID exists, creates a new category. If a category with the given ID already exists, returns that category.
      Parameters:
      id - The ID of the category. This is NOT the ID of the BPMN element.
      Returns:
      The global category with the given ID, never null.
    • category

      de.xima.bpmn_model.api.element.bpmn.artifacts.Category category(Object... id)
      Gets a global Category with the given ID. If no category with the given ID exists, creates a new category. If a category with the given ID already exists, returns that category.
      Parameters:
      id - The ID of the category. When multiple values are given, this is considered a compound ID, and the order is important. This is NOT the ID of the BPMN element.
      Returns:
      The global category with the given ID, never null.
    • categoryValue

      de.xima.bpmn_model.api.element.bpmn.artifacts.CategoryValue categoryValue(de.xima.bpmn_model.api.element.bpmn.artifacts.Category category, Object id)
    • categoryValue

      de.xima.bpmn_model.api.element.bpmn.artifacts.CategoryValue categoryValue(de.xima.bpmn_model.api.element.bpmn.artifacts.Category category, Object... id)
    • continueEscalation

      de.xima.bpmn_model.api.element.bpmn.common.Escalation continueEscalation(WorkflowNode target)
      A BPMN Escalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeTransferredControlException that have a target and where the control transfer type is CONTINUE.

      In other words, this is used for continue statements that target the configured loop.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      If the given target is null, this method returns null.

      Parameters:
      target - The target node of the continue statement.
      Returns:
      The global continue escalation instance for the given target, never null.
    • continueEscalationCode

      String continueEscalationCode(WorkflowNode target)
      The code of a BPMN Escalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeTransferredControlException that have a target and where the control transfer type is CONTINUE.

      In other words, this is used for continue statements that target the configured loop.

      If the given target is null, this returns null.

      Parameters:
      target - The target node of the continue statement.
      Returns:
      The code of the global continue escalation instance for the given target, never null.
    • continueEscalationEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.EscalationEventDefinition continueEscalationEventDefinition(WorkflowNode target)
      The global EventDefinition corresponding to the continueEscalation(WorkflowNode). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Parameters:
      target - The target node of the continue statement.
      Returns:
      The global continue escalation event definition for the given target, never null.
    • continueEscalationRaisable

      BpmnRaisableEscalation continueEscalationRaisable(WorkflowNode target)
      A BpmnRaisableEscalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeTransferredControlException that have a target and where the control transfer type is CONTINUE.

      In other words, this is used for continue statements that target the configured loop.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      If the given target is null, this method returns null.

      Parameters:
      target - The target node of the continue statement.
      Returns:
      The global continue escalation instance for the given target, never null.
    • dataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore dataStore(Object id)
      Gets a global DataStore with the given ID. If no data store with the given ID exists, creates a new data store. If a data store with the given ID already exists, returns that data store.
      Parameters:
      id - The ID of the data store. This is NOT the ID of the BPMN element.
      Returns:
      The global data store with the given ID, never null.
    • dataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore dataStore(Object... id)
      Gets a global DataStore with the given ID. If no data store with the given ID exists, creates a new data store. If a data store with the given ID already exists, returns that data store.
      Parameters:
      id - The ID of the data store. When multiple values are given, this is considered a compound ID, and the order is important. This is NOT the ID of the BPMN element.
      Returns:
      The global data store with the given ID, never null.
    • databaseConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore databaseConnectionDataStore(DatenbankZugriff dbConnection)
      Gets the global DataStore for the given database connection.
      Parameters:
      dbConnection - The database connection to get the data store for.
      Returns:
      The global data store for the given database connection, never null.
    • databaseConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore databaseConnectionDataStore(UuidEntityRef dbConnection)
      Gets the global DataStore for the given database connection.
      Parameters:
      dbConnection - The database connection to get the data store for.
      Returns:
      The global data store for the given database connection, never null.
    • databaseConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore databaseConnectionDataStore(UUID dbConnectionUuid)
      Gets the global DataStore for the given database connection UUID.
      Parameters:
      dbConnectionUuid - The UUID of the database connection to get the data store for.
      Returns:
      The global data store for the given database connection, never null.
    • error

      de.xima.bpmn_model.api.element.bpmn.common.Error error(String code, OnRaisableMissing onMissing)
      Gets the global BPMN Error with the given error code.

      Only the error code matters. You can either use a reference to this global error (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Error with the same error code. But prefer using a reference to keep the model small and clean.

      Parameters:
      code - The code of the error to get. This is NOT the ID of the BPMN element.
      onMissing - How to proceed when no error with the given code exists yet.
      Returns:
      The error instance for the given code, never null.
    • errorEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.ErrorEventDefinition errorEventDefinition(String code, OnRaisableMissing onMissing)
      The global EventDefinition corresponding to the error(String, OnRaisableMissing). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Parameters:
      code - The code of the error event definition to get. This is NOT the ID of the BPMN element.
      onMissing - How to proceed when no error with the given code exists yet.
      Returns:
      The global error event definition with the given code, never null.
    • errorRaisable

      BpmnRaisableError errorRaisable(String code, OnRaisableMissing onMissing)
      Gets the global BpmnRaisableSignal with the given error code.

      Only the error code matters. You can either use a reference to this global error (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Error with the same error code. But prefer using a reference to keep the model small and clean.

      Parameters:
      code - The code of the error to get. This is NOT the ID of the BPMN element.
      onMissing - How to proceed when no error with the given code exists yet.
      Returns:
      The error instance for the given code, never null.
    • escalation

      de.xima.bpmn_model.api.element.bpmn.common.Escalation escalation(String code, OnRaisableMissing onMissing)
      Gets the global BPMN Escalation with the given escalation code.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      Parameters:
      code - The escalation code of the escalation to get. This is NOT the ID of the BPMN element.
      onMissing - How to proceed when no signal with the given name exists yet.
      Returns:
      The escalation instance for the given code, never null.
    • escalationEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.EscalationEventDefinition escalationEventDefinition(String code, OnRaisableMissing onMissing)
      The global EventDefinition corresponding to the escalation(String, OnRaisableMissing). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Parameters:
      code - The escalation code of the escalation event definition to get. This is NOT the ID of the BPMN element.
      onMissing - How to proceed when no signal with the given name exists yet.
      Returns:
      The global escalation event definition with the given code, never null.
    • escalationRaisable

      BpmnRaisableEscalation escalationRaisable(String code, OnRaisableMissing onMissing)
      Gets the global BpmnRaisableEscalation with the given escalation code.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      Parameters:
      code - The escalation code of the escalation to get. This is NOT the ID of the BPMN element.
      onMissing - How to proceed when no signal with the given name exists yet.
      Returns:
      The escalation instance for the given code, never null.
    • generalError

      de.xima.bpmn_model.api.element.bpmn.common.Error generalError()
      A BPMN Error that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with an NodeThrewException. Other errors can be used, but implementations are strongly recommended to use this generic general error.

      Only the error code matters. You can either use a reference to this global error (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Error with the same error code. But prefer using a reference to keep the model small and clean.

      Returns:
      The global general error instance, never null.
    • generalErrorCode

      String generalErrorCode()
      The code of a BPMN Error that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with an NodeThrewException. Other errors can be used, but implementations are strongly recommended to use this generic general error.
      Returns:
      The code of a global general error instance, never null.
    • generalErrorEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.ErrorEventDefinition generalErrorEventDefinition()
      The global EventDefinition corresponding to the generalError(). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Returns:
      The global general error event definition, never null.
    • generalErrorRaisable

      BpmnRaisableError generalErrorRaisable()
      A BpmnRaisableEscalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with an NodeThrewException. Other errors can be used, but implementations are strongly recommended to use this generic general error.

      Only the error code matters. You can either use a reference to this global error (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Error with the same error code. But prefer using a reference to keep the model small and clean.

      Returns:
      The global general error instance, never null.
    • item

      de.xima.bpmn_model.api.element.bpmn.common.ItemDefinition item(Object id)
      Gets a global ItemDefinition with the given ID. If no item definition with the given ID exists, creates a new item definition. If an item definition with the given ID already exists, returns that item definition.
      Parameters:
      id - The unique ID of the item definition. This is NOT the ID of the BPMN element.
      Returns:
      The global item definition with the given ID, never null.
    • item

      de.xima.bpmn_model.api.element.bpmn.common.ItemDefinition item(Object... id)
      Gets a global ItemDefinition with the given ID. If no item definition with the given ID exists, creates a new item definition. If an item definition with the given ID already exists, returns that item definition.
      Parameters:
      id - The unique ID of the item definition. When multiple values are given, this is considered a compound ID, and the order is important. This is NOT the ID of the BPMN element.
      Returns:
      The global item definition with the given ID, never null.
    • item

      de.xima.bpmn_model.api.element.bpmn.common.ItemDefinition item(de.xima.bpmn_model.api.element.bpmn.common.ItemKind itemKind, QName structure, boolean collection)
      Gets a global ItemDefinition for the given item kind, qualified name and collection flag. If no item definition with the given data exists, creates a new item definition. If an item definition with the given data already exists, returns that item definition.
      Returns:
      The global item definition with the given ID, never null.
    • labelStyle

      de.xima.bpmn_model.api.element.bpmndi.BpmnLabelStyle labelStyle(WorkflowBpmnLabelStyleDefinition style)
      Gets the global BpmnLabelStyle for the given style definition. Multiple calls to this method with the same (or equivalent) style definition will return the same instance. The BPMN label style will be added to the appropriate BpmnDiagram and can be used in the BPMN model, you do not have to add it manually.
      Parameters:
      style - The style definition to get the label style for. This should be a
      Returns:
      The global BPMN label style for the given style definition, never null.
    • ldapConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore ldapConnectionDataStore(LDAPZugriff ldapConnection)
      Gets the global DataStore for the given LDAP connection.
      Parameters:
      ldapConnection - The LDAP connection to get the data store for.
      Returns:
      The global data store for the given LDAP connection, never null.
    • ldapConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore ldapConnectionDataStore(UuidEntityRef ldapConnection)
      Gets the global DataStore for the given LDAP connection.
      Parameters:
      ldapConnection - The LDAP connection to get the data store for.
      Returns:
      The global data store for the given LDAP connection, never null.
    • ldapConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore ldapConnectionDataStore(UUID ldapConnectionUuid)
      Gets the global DataStore for the given LDAP connection UUID.
      Parameters:
      ldapConnectionUuid - The UUID of the LDAP connection to get the data store for.
      Returns:
      The global data store for the given LDAP connection, never null.
    • mainCollaboration

      de.xima.bpmn_model.api.element.bpmn.collaboration.Collaboration<?> mainCollaboration()
      The main Collaboration containing the Participant representing the formcycle workflow engine.
      Returns:
      The main collaboration, never null.
    • mainDiagram

      de.xima.bpmn_model.api.element.bpmndi.BpmnDiagram mainDiagram()
      The main BpmnDiagram which contains all diagram elements.
      Returns:
      The main diagram, never null.
    • mainPlane

      de.xima.bpmn_model.api.element.bpmndi.BpmnPlane mainPlane()
      The main BpmnPlane of the mainDiagram() that contains all diagram elements.
      Returns:
      The main plane, never null.
    • message

      de.xima.bpmn_model.api.element.bpmn.common.Message message(Object id)
      Gets a global Message with the given ID. If no message with the given ID exists, creates a new message. If a message with the given ID already exists, returns that message.
      Parameters:
      id - The ID of the message. This is NOT the ID of the BPMN element.
      Returns:
      The global message with the given ID, never null.
    • message

      de.xima.bpmn_model.api.element.bpmn.common.Message message(Object... id)
      Gets a global Message with the given ID. If no message with the given ID exists, creates a new message. If a message with the given ID already exists, returns that message.
      Parameters:
      id - The ID of the message. When multiple values are given, this is considered a compound ID, and the order is important. This is NOT the ID of the BPMN element.
      Returns:
      The global message with the given ID, never null.
    • messageDefinition

      de.xima.bpmn_model.api.element.bpmn.events.MessageEventDefinition messageDefinition(Object id)
      Gets a global MessageEventDefinition with the given ID. If no message event definition with the given ID exists, creates a new definition. If a definition with the given ID already exists, returns that definition.
      Parameters:
      id - The ID of the message event definition. This is NOT the ID of the BPMN element.
      Returns:
      The global message event definition with the given ID, never null.
    • messageDefinition

      de.xima.bpmn_model.api.element.bpmn.events.MessageEventDefinition messageDefinition(Object... id)
      Gets a global MessageEventDefinition with the given ID. If no message event definition with the given ID exists, creates a new definition. If a definition with the given ID already exists, returns that definition.
      Parameters:
      id - The ID of the message event definition. When multiple values are given, this is considered a compound ID, and the order is important. This is NOT the ID of the BPMN element.
      Returns:
      The global message event definition with the given ID, never null.
    • operation

      de.xima.bpmn_model.api.element.bpmn.service.Operation operation(de.xima.bpmn_model.api.element.bpmn.service.Interface _interface, Object id)
      Gets the operation with the given ID from the given Interface. If no operation with the given ID exists, creates a new operation and returns it.
      Parameters:
      _interface - The interface to get the operation from.
      id - The ID of the operation to get. This is NOT the ID of the BPMN element. Must be unique within the scope of the given interface.
      Returns:
      The operation, never null.
    • operation

      de.xima.bpmn_model.api.element.bpmn.service.Operation operation(de.xima.bpmn_model.api.element.bpmn.service.Interface _interface, Object... id)
      Gets the operation with the given ID from the given Interface. If no operation with the given ID exists, creates a new operation and returns it.
      Parameters:
      _interface - The interface to get the operation from.
      id - The ID of the operation to get. When multiple values are given, this is considered a compound ID, and the order is important. Must be unique within the scope of the given interface. This is NOT the ID of the BPMN element.
      Returns:
      The operation, never null.
    • signal

      de.xima.bpmn_model.api.element.bpmn.events.Signal signal(String signalName, OnRaisableMissing onMissing)
      Gets the global BPMN Signal with the given ID.

      Unlike errors and escalations, signals do not have a code. They are referenced directly by events, i.e. each new signal instance constitutes a new signal, even if they have the same name. However, since some BPMN tools rely on the name of the signal for identification, we also treat the name as a unique identifier for signals. Passing the same signal name multiple times will return the same signal instance.

      Parameters:
      signalName - The name of the signal to get.
      onMissing - How to proceed when no signal with the given name exists yet.
      Returns:
      The global signal instance for the given ID, never null.
    • signalEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.SignalEventDefinition signalEventDefinition(String signalName, OnRaisableMissing onMissing)
      The global EventDefinition corresponding to the signal(String, OnRaisableMissing). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Parameters:
      signalName - The name of the signal to get.
      onMissing - How to proceed when no signal with the given name exists yet.
      Returns:
      The global signal event definition with the given ID, never null.
    • signalRaisable

      BpmnRaisableSignal signalRaisable(String signalName, OnRaisableMissing onMissing)
      Gets the global BpmnRaisableSignal with the given ID.

      Unlike errors and escalations, signals do not have a code. They are referenced directly by events, i.e. each new signal instance constitutes a new signal, even if they have the same name. However, since some BPMN tools rely on the name of the signal for identification, we also treat the name as a unique identifier for signals. Passing the same signal name multiple times will return the same signal instance.

      Parameters:
      signalName - The name of the signal to get.
      onMissing - How to proceed when no signal with the given name exists yet.
      Returns:
      The global signal instance for the given ID, never null.
    • terminateEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.TerminateEventDefinition terminateEventDefinition()
      The global EventDefinition for terminating a Process or SubProcess. Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().

      Note: A terminate event inside a SubProcess only terminates the sub process, not the entire process. If you wish to terminate the entire process, use terminationEscalation() or terminationEscalationEventDefinition() instead.

      Returns:
      The global terminate event definition, never null.
    • terminationEscalation

      de.xima.bpmn_model.api.element.bpmn.common.Escalation terminationEscalation()
      A BPMN Escalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeReturnedException.

      BPMN does not allow sub processes to terminate the execution of their parent process. As such, it is hard to model workflows with return statements inside e.g. a block that requires a sub processes, such as a try-catch block. As a workaround, we throw an Escalation instead, which we can catch at the top-level Process and treat accordingly.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      Returns:
      The global termination escalation instance, never null.
    • terminationEscalationCode

      String terminationEscalationCode()
      A BPMN Escalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeReturnedException.

      BPMN does not allow sub processes to terminate the execution of their parent process. As such, it is hard to model workflows with return statements inside e.g. a block that requires a sub processes, such as a try-catch block. As a workaround, we throw an Escalation instead, which we can catch at the top-level Process and treat accordingly.

      This returns the escalation code for the termination escalation.

      Returns:
      The global termination escalation code, never null.
    • terminationEscalationEventDefinition

      de.xima.bpmn_model.api.element.bpmn.events.EscalationEventDefinition terminationEscalationEventDefinition()
      The global EventDefinition corresponding to the terminationEscalation(). Can be used when creating new events, via EventDefinitionContaining.eventDefinitionReferences().
      Returns:
      The global termination escalation event definition, never null.
    • terminationEscalationRaisable

      BpmnRaisableEscalation terminationEscalationRaisable()
      A BpmnRaisableEscalation that can be thrown by BPMN parts corresponding to a WorkflowNode whose execution can end abruptly with a NodeReturnedException.

      BPMN does not allow sub processes to terminate the execution of their parent process. As such, it is hard to model workflows with return statements inside e.g. a block that requires a sub processes, such as a try-catch block. As a workaround, we throw an Escalation instead, which we can catch at the top-level Process and treat accordingly.

      Only the escalation code matters. You can either use a reference to this global escalation (e.g. via EventDefinitionContaining.eventDefinitionReferences()), or create a new Escalation with the same escalation code. But prefer using a reference to keep the model small and clean.

      Returns:
      The global termination escalation instance, never null.
    • webDavConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore webDavConnectionDataStore(WebDavAccess webDavConnection)
      Gets the global DataStore for the given WebDAV.
      Parameters:
      webDavConnection - The WebDAV connection to get the data store for.
      Returns:
      The global data store for the given WebDAV connection, never null.
    • webDavConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore webDavConnectionDataStore(UuidEntityRef webDavConnection)
      Gets the global DataStore for the given WebDAV.
      Parameters:
      webDavConnection - The WebDAV connection to get the data store for.
      Returns:
      The global data store for the given WebDAV connection, never null.
    • webDavConnectionDataStore

      de.xima.bpmn_model.api.element.bpmn.data.DataStore webDavConnectionDataStore(UUID webDavConnectionUuid)
      Gets the global DataStore for the given LDAP connection UUID.
      Parameters:
      webDavConnectionUuid - The UUID of the WebDAV connection to get the data store for.
      Returns:
      The global data store for the given WebDAV connection, never null.