Package com.orchestranetworks.workflow

# Class ProcessExecutionContext.WorkflowPermission

java.lang.Object
com.orchestranetworks.workflow.ProcessExecutionContext.WorkflowPermission

Enclosing interface:
  ProcessExecutionContext

public static final class ProcessExecutionContext.WorkflowPermission extends Object
Represents the permissions associated with the workflow model.

These permissions are configured in the configuration of the workflow model.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final ProcessExecutionContext.WorkflowPermission`
  `ADMINISTRATE`
  The permission to administrate the workflow.
  `static final ProcessExecutionContext.WorkflowPermission`
  `ALLOCATE`
  The permission to allocate work items.
  `static final ProcessExecutionContext.WorkflowPermission`
  `CREATE_PROCESS`
  The permission to create workflows from the workflow publication.
  `static final ProcessExecutionContext.WorkflowPermission`
  `DEALLOCATE`
  The permission to deallocate work items.
  `static final ProcessExecutionContext.WorkflowPermission`
  `DISABLE`
  The permission to disable a publication.
  `static final ProcessExecutionContext.WorkflowPermission`
  `FORCE_RESUME_PROCESS`
  The permission to resume a waiting workflow.
  `static final ProcessExecutionContext.WorkflowPermission`
  `MANAGE_ALLOCATION`
  The permission to manage the allocation of work items.
  `static final ProcessExecutionContext.WorkflowPermission`
  `REALLOCATE`
  The permission to reallocate work items.
  `static final ProcessExecutionContext.WorkflowPermission`
  `RESTART_TOKEN`
  The permission to replay a step.
  `static final ProcessExecutionContext.WorkflowPermission`
  `TERMINATE_PROCESS`
  The permission to terminate workflows.
  `static final ProcessExecutionContext.WorkflowPermission`
  `UNPUBLISH`
  The permission to unpublish.
  `static final ProcessExecutionContext.WorkflowPermission`
  `VIEW`
  The permission to visualize workflows.
  `static final ProcessExecutionContext.WorkflowPermission`
  `VIEW_COMPLETED_WORKFLOW`
  The permission to view completed workflows.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getLabel()`

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### ADMINISTRATE

    public static final ProcessExecutionContext.WorkflowPermission ADMINISTRATE
    The permission to administrate the workflow.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - perform specific actions on publications and workflows: replay a step, (`RESTART_TOKEN`), unpublish ((`UNPUBLISH`), terminate a workflow (`TERMINATE_PROCESS`).

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### MANAGE_ALLOCATION

    public static final ProcessExecutionContext.WorkflowPermission MANAGE_ALLOCATION
    The permission to manage the allocation of work items.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - allocate a work item (`ALLOCATE`),
    - deallocate a work item (`DEALLOCATE`),
    - reallocate a work item (`REALLOCATE`).

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### CREATE_PROCESS

    public static final ProcessExecutionContext.WorkflowPermission CREATE_PROCESS
    The permission to create workflows from the workflow publication.

    This permission allows creating workflows from a publication associated with the workflow model.

    This permission can be resolved only for a publication context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### VIEW

    public static final ProcessExecutionContext.WorkflowPermission VIEW
    The permission to visualize workflows.

    Publications, workflows and work items are visible if at least one of the following actions is allowed:

    - `VIEW`
    - `ADMINISTRATE`
    - `MANAGE_ALLOCATION`
    - `RESTART_TOKEN`
    - `TERMINATE_PROCESS`
    - `DISABLE`
    - `UNPUBLISH`
    - `ALLOCATE`
    - `DEALLOCATE`
    - `REALLOCATE`

    So, if the `VIEW` permission is disabled, the permissions associated with these actions will be automatically evaluated until one of them is enabled, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.
    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### VIEW_COMPLETED_WORKFLOW

    public static final ProcessExecutionContext.WorkflowPermission VIEW_COMPLETED_WORKFLOW
    The permission to view completed workflows.

    This permission allows viewing completed workflows for the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `VIEW_COMPLETED_WORKFLOW`
    - `VIEW`

    So, if the `VIEW_COMPLETED_WORKFLOW` permission is disabled, the permission `VIEW` will be automatically evaluated, even if specific permissions are defined.

    This permission can only be resolved for a process instance context.

    Since:
      5.4.1
    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### ALLOCATE

    public static final ProcessExecutionContext.WorkflowPermission ALLOCATE
    The permission to allocate work items.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - allocate the work items of the workflows of the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `ALLOCATE`
    - `MANAGE_ALLOCATION`

    So, if the `ALLOCATE` permission is disabled, the permission `MANAGE_ALLOCATION` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### DEALLOCATE

    public static final ProcessExecutionContext.WorkflowPermission DEALLOCATE
    The permission to deallocate work items.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - deallocate the work items of the workflows of the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `DEALLOCATE`
    - `MANAGE_ALLOCATION`

    So, if the `DEALLOCATE` permission is disabled, the permission `MANAGE_ALLOCATION` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### REALLOCATE

    public static final ProcessExecutionContext.WorkflowPermission REALLOCATE
    The permission to reallocate work items.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - reallocate the work items of the workflows of the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `REALLOCATE`
    - `MANAGE_ALLOCATION`

    So, if the `REALLOCATE` permission is disabled, the permission `MANAGE_ALLOCATION` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### RESTART_TOKEN

    public static final ProcessExecutionContext.WorkflowPermission RESTART_TOKEN
    The permission to replay a step.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - replay the current step of a workflow of the workflow model.
    This action is allowed when at least one of the following actions is allowed:
    - `RESTART_TOKEN`
    - `ADMINISTRATE`

    So, if the `RESTART_TOKEN` permission is disabled, the permission `ADMINISTRATE` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### FORCE_RESUME_PROCESS

    public static final ProcessExecutionContext.WorkflowPermission FORCE_RESUME_PROCESS
    The permission to resume a waiting workflow.

    This permission allows:

    - visualizing the workflows associated with the workflow model (`VIEW`),
    - forcing resuming waiting workflows of the workflow model.
    This action is allowed when at least one of the following actions is allowed:
    - `FORCE_RESUME_PROCESS`
    - `ADMINISTRATE`

    So, if the `FORCE_RESUME_PROCESS` permission is disabled, the `ADMINISTRATE` permission will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### UNPUBLISH

    public static final ProcessExecutionContext.WorkflowPermission UNPUBLISH
    The permission to unpublish.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - unpublish a publication of the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `UNPUBLISH`
    - `ADMINISTRATE`

    So, if the `UNPUBLISH` permission is disabled, the permission `ADMINISTRATE` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### DISABLE

    public static final ProcessExecutionContext.WorkflowPermission DISABLE
    The permission to disable a publication.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - disable a publication of the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `DISABLE`
    - `ADMINISTRATE`

    So, if the `DISABLE` permission is disabled, the permission `ADMINISTRATE` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

  - ### TERMINATE_PROCESS

    public static final ProcessExecutionContext.WorkflowPermission TERMINATE_PROCESS
    The permission to terminate workflows.

    This permission allows to:

    - visualize the workflows associated with the workflow model (`VIEW`),
    - terminate and clean workflows of the workflow model.

    This action is allowed when at least one of the following actions is allowed:

    - `TERMINATE_PROCESS`
    - `ADMINISTRATE`

    So, if the `TERMINATE_PROCESS` permission is disabled, the permission `ADMINISTRATE` will be automatically evaluated, even if specific permissions are defined.

    This permission can be resolved for a publication or a process instance context: use `ActionPermissionsOnWorkflowContext.isOnProcessInstance()` to check the resolution context.

    See Also:
      - `ActionPermissionsOnWorkflow`

- ## Method Details

  - ### getLabel

    public String getLabel()