Package org.flowable.engine.repository

# Interface ProcessDefinition

public interface ProcessDefinition
An object structure representing an executable process composed of activities and transitions. Business processes are often created with graphical editors that store the process definition in certain file format. These files can be added to a `Deployment` artifact, such as for example a Business Archive (.bar) file. At deploy time, the engine will then parse the process definition files to an executable instance of this class, that can be used to start a `ProcessInstance`.

Author:
  Tom Baeyens, Joram Barez, Daniel Meyer

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getCategory()`
  category name which is derived from the targetNamespace attribute in the definitions element
  `String`
  `getDeploymentId()`
  The deployment in which this process definition is contained.
  `String`
  `getDerivedFrom()`
  The derived from process definition value when this is a dynamic process definition
  `String`
  `getDerivedFromRoot()`
  The root derived from process definition value when this is a dynamic process definition
  `int`
  `getDerivedVersion()`
  The derived version of the process definition
  `String`
  `getDescription()`
  description of this process
  `String`
  `getDiagramResourceName()`
  The resource name in the deployment of the diagram image (if any).
  `String`
  `getEngineVersion()`
  The engine version for this process definition (5 or 6)
  `String`
  `getId()`
  unique identifier
  `String`
  `getKey()`
  unique name for all versions this process definitions
  `String`
  `getName()`
  label used for display purposes
  `String`
  `getResourceName()`
  name of `the resource` of this process definition.
  `String`
  `getTenantId()`
  The tenant identifier of this process definition
  `int`
  `getVersion()`
  version of this process definition
  `boolean`
  `hasGraphicalNotation()`
  Does this process definition has a graphical notation defined (such that a diagram can be generated)?
  `boolean`
  `hasStartFormKey()`
  Does this process definition has a `start form key`.
  `boolean`
  `isSuspended()`
  Returns true if the process definition is in suspended state.

- ## Method Details

  - ### getId

    String getId()
    unique identifier

  - ### getCategory

    String getCategory()
    category name which is derived from the targetNamespace attribute in the definitions element

  - ### getName

    String getName()
    label used for display purposes

  - ### getKey

    String getKey()
    unique name for all versions this process definitions

  - ### getDescription

    String getDescription()
    description of this process

  - ### getVersion

    int getVersion()
    version of this process definition

  - ### getResourceName

    String getResourceName()
    name of `the resource` of this process definition.

  - ### getDeploymentId

    String getDeploymentId()
    The deployment in which this process definition is contained.

  - ### getDiagramResourceName

    String getDiagramResourceName()
    The resource name in the deployment of the diagram image (if any).

  - ### hasStartFormKey

    boolean hasStartFormKey()
    Does this process definition has a `start form key`.

  - ### hasGraphicalNotation

    boolean hasGraphicalNotation()
    Does this process definition has a graphical notation defined (such that a diagram can be generated)?

  - ### isSuspended

    boolean isSuspended()
    Returns true if the process definition is in suspended state.

  - ### getTenantId

    String getTenantId()
    The tenant identifier of this process definition

  - ### getDerivedFrom

    String getDerivedFrom()
    The derived from process definition value when this is a dynamic process definition

  - ### getDerivedFromRoot

    String getDerivedFromRoot()
    The root derived from process definition value when this is a dynamic process definition

  - ### getDerivedVersion

    int getDerivedVersion()
    The derived version of the process definition

  - ### getEngineVersion

    String getEngineVersion()
    The engine version for this process definition (5 or 6)