org.camunda.bpm.engine
Interface ManagementService

All Known Implementing Classes:
ManagementServiceImpl

public interface ManagementService

Service for admin and maintenance operations on the process engine. These operations will typically not be used in a workflow driven application, but are used in for example the operational console.

Author:
Tom Baeyens, Joram Barrez, Falko Menge, Thorben Lindhauer

Method Summary
 void activateJobById(String jobId)
          Activates the Job with the given id.
 void activateJobByJobDefinitionId(String jobDefinitionId)
          Activates all Jobs of the provided job definition id.
 void activateJobByProcessDefinitionId(String processDefinitionId)
          Activates all Jobs of the provided process definition id.
 void activateJobByProcessDefinitionKey(String processDefinitionKey)
          Activates Jobs of the provided process definition key.
 void activateJobByProcessInstanceId(String processInstanceId)
          Activates all Jobs of the provided process instance id.
 void activateJobDefinitionById(String jobDefinitionId)
          Activates the JobDefinition with the given id immediately.
 void activateJobDefinitionById(String jobDefinitionId, boolean activateJobs)
          Activates the JobDefinition with the given id immediately.
 void activateJobDefinitionById(String jobDefinitionId, boolean activateJobs, Date activationDate)
          Activates the JobDefinition with the given id.
 void activateJobDefinitionByProcessDefinitionId(String processDefinitionId)
          Activates all JobDefinitions of the provided process definition id immediately.
 void activateJobDefinitionByProcessDefinitionId(String processDefinitionId, boolean activateJobs)
          Activates all JobDefinitions of the provided process definition id immediately.
 void activateJobDefinitionByProcessDefinitionId(String processDefinitionId, boolean activateJobs, Date activationDate)
          Activates all JobDefinitions of the provided process definition id.
 void activateJobDefinitionByProcessDefinitionKey(String processDefinitionKey)
          Activates all JobDefinitions of the provided process definition key immediately.
 void activateJobDefinitionByProcessDefinitionKey(String processDefinitionKey, boolean activateJobs)
          Activates all JobDefinitions of the provided process definition key immediately.
 void activateJobDefinitionByProcessDefinitionKey(String processDefinitionKey, boolean activateJobs, Date activationDate)
          Activates all JobDefinitions of the provided process definition key.
 ActivityStatisticsQuery createActivityStatisticsQuery(String processDefinitionId)
          Query for the number of activity instances aggregated by activities of a single process definition.
 DeploymentStatisticsQuery createDeploymentStatisticsQuery()
          Query for the number of process instances aggregated by deployments.
 JobDefinitionQuery createJobDefinitionQuery()
          Returns a new JobDefinitionQuery implementation, that can be used to dynamically query the job definitions.
 JobQuery createJobQuery()
          Returns a new JobQuery implementation, that can be used to dynamically query the jobs.
 ProcessDefinitionStatisticsQuery createProcessDefinitionStatisticsQuery()
          Query for the number of process instances aggregated by process definitions.
 TablePageQuery createTablePageQuery()
          Creates a TablePageQuery that can be used to fetch TablePage containing specific sections of table row data.
 String databaseSchemaUpgrade(Connection connection, String catalog, String schema)
          programmatic schema update on a given connection returning feedback about what happened
 void deleteJob(String jobId)
          Delete the job with the provided id.
 void deleteProperty(String name)
          Deletes a property by name.
 void executeJob(String jobId)
          Forced synchronous execution of a job (eg.
 int getHistoryLevel()
          Get the configured history level for the process engine.
 String getJobExceptionStacktrace(String jobId)
          Returns the full stacktrace of the exception that occurs when the job with the given id was last executed.
 String getProcessApplicationForDeployment(String deploymentId)
           
 Map<String,String> getProperties()
          get the list of properties.
 Set<String> getRegisteredDeployments()
          Get the deployments that are registered the engine's job executor.
 Map<String,Long> getTableCount()
          Get the mapping containing {table name, row count} entries of the Activiti database schema.
 TableMetaData getTableMetaData(String tableName)
          Gets the metadata (column names, column types, etc.) of a certain table.
 String getTableName(Class<?> activitiEntityClass)
          Gets the table name (including any configured prefix) for an Activiti entity like Task, Execution or the like.
 void registerDeploymentForJobExecutor(String deploymentId)
          Register a deployment for the engine's job executor.
 ProcessApplicationRegistration registerProcessApplication(String deploymentId, ProcessApplicationReference reference)
          Activate a deployment for a given ProcessApplication.
 void setJobDuedate(String jobId, Date newDuedate)
          Sets a new due date for the provided id.
 void setJobRetries(String jobId, int retries)
          Sets the number of retries that a job has left.
 void setJobRetriesByJobDefinitionId(String jobDefinitionId, int retries)
           Set the number of retries of all failed jobs of the provided job definition id.
 void setProperty(String name, String value)
          Set the value for a property.
 void suspendJobById(String jobId)
          Suspends the Job with the given id.
 void suspendJobByJobDefinitionId(String jobDefinitionId)
          Suspends all Jobs of the provided job definition id.
 void suspendJobByProcessDefinitionId(String processDefinitionId)
          Suspends all Jobs of the provided process definition id.
 void suspendJobByProcessDefinitionKey(String processDefinitionKey)
          Activates Jobs of the provided process definition key.
 void suspendJobByProcessInstanceId(String processInstanceId)
          Suspends all Jobs of the provided process instance id.
 void suspendJobDefinitionById(String jobDefinitionId)
          Suspends the JobDefinition with the given id immediately.
 void suspendJobDefinitionById(String jobDefinitionId, boolean suspendJobs)
          Suspends the JobDefinition with the given id immediately.
 void suspendJobDefinitionById(String jobDefinitionId, boolean suspendJobs, Date suspensionDate)
          Suspends the JobDefinition with the given id.
 void suspendJobDefinitionByProcessDefinitionId(String processDefinitionId)
          Suspends all JobDefinition of the provided process definition id immediately.
 void suspendJobDefinitionByProcessDefinitionId(String processDefinitionId, boolean suspendJobs)
          Suspends all JobDefinitions of the provided process definition id immediately.
 void suspendJobDefinitionByProcessDefinitionId(String processDefinitionId, boolean suspendJobs, Date suspensionDate)
          Suspends all JobDefinitions of the provided process definition id.
 void suspendJobDefinitionByProcessDefinitionKey(String processDefinitionKey)
          Suspends all JobDefinition of the provided process definition key immediately.
 void suspendJobDefinitionByProcessDefinitionKey(String processDefinitionKey, boolean suspendJobs)
          Suspends all JobDefinitions of the provided process definition key immediately.
 void suspendJobDefinitionByProcessDefinitionKey(String processDefinitionKey, boolean suspendJobs, Date suspensionDate)
          Suspends all JobDefinitions of the provided process definition key.
 void unregisterDeploymentForJobExecutor(String deploymentId)
          Unregister a deployment for the engine's job executor.
 void unregisterProcessApplication(Set<String> deploymentIds, boolean removeProcessDefinitionsFromCache)
          Deactivate a deployment for a given ProcessApplication.
 void unregisterProcessApplication(String deploymentId, boolean removeProcessDefinitionsFromCache)
          Deactivate a deployment for a given ProcessApplication.
 

Method Detail

registerProcessApplication

ProcessApplicationRegistration registerProcessApplication(String deploymentId,
                                                          ProcessApplicationReference reference)
Activate a deployment for a given ProcessApplication. The effect of this method is twofold:
  1. The process engine will execute atomic operations within the context of that ProcessApplication
  2. The job executor will start acquiring jobs from that deployment

Parameters:
deploymentId - the Id of the deployment to activate
reference - the reference to the process application
Returns:
a new ProcessApplicationRegistration

unregisterProcessApplication

void unregisterProcessApplication(String deploymentId,
                                  boolean removeProcessDefinitionsFromCache)
Deactivate a deployment for a given ProcessApplication. This removes the association between the process engine and the process application and optionally removes the associated process definitions from the cache.

Parameters:
deploymentId - the Id of the deployment to deactivate
removeProcessDefinitionsFromCache - indicates whether the process definitions should be removed from the deployment cache

unregisterProcessApplication

void unregisterProcessApplication(Set<String> deploymentIds,
                                  boolean removeProcessDefinitionsFromCache)
Deactivate a deployment for a given ProcessApplication. This removes the association between the process engine and the process application and optionally removes the associated process definitions from the cache.

Parameters:
deploymentIds - the Ids of the deployments to deactivate
removeProcessDefinitionsFromCache - indicates whether the process definitions should be removed from the deployment cache

getProcessApplicationForDeployment

String getProcessApplicationForDeployment(String deploymentId)
Returns:
the name of the process application that is currently registered for the given deployment or 'null' if no process application is currently registered.

getTableCount

Map<String,Long> getTableCount()
Get the mapping containing {table name, row count} entries of the Activiti database schema.


getTableName

String getTableName(Class<?> activitiEntityClass)
Gets the table name (including any configured prefix) for an Activiti entity like Task, Execution or the like.


getTableMetaData

TableMetaData getTableMetaData(String tableName)
Gets the metadata (column names, column types, etc.) of a certain table. Returns null when no table exists with the given name.


createTablePageQuery

TablePageQuery createTablePageQuery()
Creates a TablePageQuery that can be used to fetch TablePage containing specific sections of table row data.


createJobQuery

JobQuery createJobQuery()
Returns a new JobQuery implementation, that can be used to dynamically query the jobs.


createJobDefinitionQuery

JobDefinitionQuery createJobDefinitionQuery()
Returns a new JobDefinitionQuery implementation, that can be used to dynamically query the job definitions.


executeJob

void executeJob(String jobId)
Forced synchronous execution of a job (eg. for administration or testing) The job will be executed, even if the process definition and/or the process instance is in suspended state.

Parameters:
jobId - id of the job to execute, cannot be null.
Throws:
ProcessEngineException - when there is no job with the given id.

deleteJob

void deleteJob(String jobId)
Delete the job with the provided id.

Parameters:
jobId - id of the job to execute, cannot be null.
Throws:
ProcessEngineException - when there is no job with the given id.

activateJobDefinitionById

void activateJobDefinitionById(String jobDefinitionId)

Activates the JobDefinition with the given id immediately.

Note: All Jobs of the provided job definition will be not activated.

Throws:
ProcessEngineException - if the job definition id is equal null.
See Also:
activateJobById(String), activateJobByJobDefinitionId(String)

activateJobDefinitionByProcessDefinitionId

void activateJobDefinitionByProcessDefinitionId(String processDefinitionId)

Activates all JobDefinitions of the provided process definition id immediately.

Note: All Jobs of the provided job definition will be not activated.

Throws:
ProcessEngineException - if the process definition id is equal null.
See Also:
activateJobByProcessDefinitionId(String)

activateJobDefinitionByProcessDefinitionKey

void activateJobDefinitionByProcessDefinitionKey(String processDefinitionKey)

Activates all JobDefinitions of the provided process definition key immediately.

Note: All Jobs of the provided job definition will be not activated.

Throws:
ProcessEngineException - if the process definition key is equal null.
See Also:
activateJobByProcessDefinitionKey(String)

activateJobDefinitionById

void activateJobDefinitionById(String jobDefinitionId,
                               boolean activateJobs)

Activates the JobDefinition with the given id immediately.

Parameters:
activateJobs - If true, all the Jobs of the provided job definition will be activated too.
Throws:
ProcessEngineException - if the job definition id is equal null.
See Also:
activateJobById(String), activateJobByJobDefinitionId(String)

activateJobDefinitionByProcessDefinitionId

void activateJobDefinitionByProcessDefinitionId(String processDefinitionId,
                                                boolean activateJobs)

Activates all JobDefinitions of the provided process definition id immediately.

Parameters:
activateJobs - If true, all the Jobs of the provided job definition will be activated too.
Throws:
ProcessEngineException - if the process definition id is equal null.
See Also:
activateJobByProcessDefinitionId(String)

activateJobDefinitionByProcessDefinitionKey

void activateJobDefinitionByProcessDefinitionKey(String processDefinitionKey,
                                                 boolean activateJobs)

Activates all JobDefinitions of the provided process definition key immediately.

Parameters:
activateJobs - If true, all the Jobs of the provided job definition will be activated too.
Throws:
ProcessEngineException - if the process definition key is equal null.
See Also:
activateJobByProcessDefinitionKey(String)

activateJobDefinitionById

void activateJobDefinitionById(String jobDefinitionId,
                               boolean activateJobs,
                               Date activationDate)
Activates the JobDefinition with the given id.

Parameters:
activateJobs - If true, all the Jobs of the provided job definition will be activated too.
activationDate - The date on which the job definition will be activated. If null, the job definition is activated immediately. Note: The JobExecutor needs to be active to use this!
Throws:
ProcessEngineException - if the job definition id is equal null.
See Also:
activateJobById(String), activateJobByJobDefinitionId(String)

activateJobDefinitionByProcessDefinitionId

void activateJobDefinitionByProcessDefinitionId(String processDefinitionId,
                                                boolean activateJobs,
                                                Date activationDate)

Activates all JobDefinitions of the provided process definition id.

Parameters:
activateJobs - If true, all the Jobs of the provided job definition will be activated too.
activationDate - The date on which the job definition will be activated. If null, the job definition is activated immediately. Note: The JobExecutor needs to be active to use this!
Throws:
ProcessEngineException - if the process definition id is equal null.
See Also:
activateJobByProcessDefinitionId(String)

activateJobDefinitionByProcessDefinitionKey

void activateJobDefinitionByProcessDefinitionKey(String processDefinitionKey,
                                                 boolean activateJobs,
                                                 Date activationDate)

Activates all JobDefinitions of the provided process definition key.

Parameters:
activateJobs - If true, all the Jobs of the provided job definition will be activated too.
activationDate - The date on which the job definition will be activated. If null, the job definition is activated immediately. Note: The JobExecutor needs to be active to use this!
Throws:
ProcessEngineException - if the process definition key is equal null.
See Also:
activateJobByProcessDefinitionKey(String)

suspendJobDefinitionById

void suspendJobDefinitionById(String jobDefinitionId)

Suspends the JobDefinition with the given id immediately.

Note: All Jobs of the provided job definition will be not suspended.

Throws:
ProcessEngineException - if no such job definition can be found.
See Also:
suspendJobById(String), suspendJobByJobDefinitionId(String)

suspendJobDefinitionByProcessDefinitionId

void suspendJobDefinitionByProcessDefinitionId(String processDefinitionId)

Suspends all JobDefinition of the provided process definition id immediately.

Note: All Jobs of the provided job definition will be not suspended.

Throws:
ProcessEngineException - if the process definition id is equal null.
See Also:
suspendJobByProcessDefinitionId(String)

suspendJobDefinitionByProcessDefinitionKey

void suspendJobDefinitionByProcessDefinitionKey(String processDefinitionKey)

Suspends all JobDefinition of the provided process definition key immediately.

Note: All Jobs of the provided job definition will be not suspended.

Throws:
ProcessEngineException - if the process definition key is equal null.
See Also:
suspendJobByProcessDefinitionKey(String)

suspendJobDefinitionById

void suspendJobDefinitionById(String jobDefinitionId,
                              boolean suspendJobs)
Suspends the JobDefinition with the given id immediately.

Parameters:
suspendJobs - If true, all the Jobs of the provided job definition will be suspended too.
Throws:
ProcessEngineException - if the job definition id is equal null.
See Also:
suspendJobById(String), suspendJobByJobDefinitionId(String)

suspendJobDefinitionByProcessDefinitionId

void suspendJobDefinitionByProcessDefinitionId(String processDefinitionId,
                                               boolean suspendJobs)
Suspends all JobDefinitions of the provided process definition id immediately.

Parameters:
suspendJobs - If true, all the Jobs of the provided job definition will be suspended too.
Throws:
ProcessEngineException - if the process definition id is equal null.
See Also:
suspendJobByProcessDefinitionId(String)

suspendJobDefinitionByProcessDefinitionKey

void suspendJobDefinitionByProcessDefinitionKey(String processDefinitionKey,
                                                boolean suspendJobs)
Suspends all JobDefinitions of the provided process definition key immediately.

Parameters:
suspendJobs - If true, all the Jobs of the provided job definition will be suspended too.
Throws:
ProcessEngineException - if the process definition key is equal null.
See Also:
suspendJobByProcessDefinitionKey(String)

suspendJobDefinitionById

void suspendJobDefinitionById(String jobDefinitionId,
                              boolean suspendJobs,
                              Date suspensionDate)
Suspends the JobDefinition with the given id.

Parameters:
suspendJobs - If true, all the Jobs of the provided job definition will be suspended too.
suspensionDate - The date on which the job definition will be suspended. If null, the job definition is suspended immediately. Note: The JobExecutor needs to be active to use this!
Throws:
ProcessEngineException - if the job definition id is equal null.
See Also:
suspendJobById(String), suspendJobByJobDefinitionId(String)

suspendJobDefinitionByProcessDefinitionId

void suspendJobDefinitionByProcessDefinitionId(String processDefinitionId,
                                               boolean suspendJobs,
                                               Date suspensionDate)
Suspends all JobDefinitions of the provided process definition id.

Parameters:
suspendJobs - If true, all the Jobs of the provided job definition will be suspended too.
suspensionDate - The date on which the job definition will be suspended. If null, the job definition is suspended immediately. Note: The JobExecutor needs to be active to use this!
Throws:
ProcessEngineException - if the process definition id is equal null.
See Also:
suspendJobByProcessDefinitionId(String)

suspendJobDefinitionByProcessDefinitionKey

void suspendJobDefinitionByProcessDefinitionKey(String processDefinitionKey,
                                                boolean suspendJobs,
                                                Date suspensionDate)
Suspends all JobDefinitions of the provided process definition key.

Parameters:
suspendJobs - If true, all the Jobs of the provided job definition will be suspended too.
suspensionDate - The date on which the job definition will be suspended. If null, the job definition is suspended immediately. Note: The JobExecutor needs to be active to use this!
Throws:
ProcessEngineException - if the process definition key is equal null.
See Also:
suspendJobByProcessDefinitionKey(String)

activateJobById

void activateJobById(String jobId)

Activates the Job with the given id.

Throws:
ProcessEngineException - if the job id is equal null.

activateJobByJobDefinitionId

void activateJobByJobDefinitionId(String jobDefinitionId)

Activates all Jobs of the provided job definition id.

Throws:
ProcessEngineException - if the job definition id is equal null.

activateJobByProcessInstanceId

void activateJobByProcessInstanceId(String processInstanceId)

Activates all Jobs of the provided process instance id.

Throws:
ProcessEngineException - if the process instance id is equal null.

activateJobByProcessDefinitionId

void activateJobByProcessDefinitionId(String processDefinitionId)

Activates all Jobs of the provided process definition id.

Throws:
ProcessEngineException - if the process definition id is equal null.

activateJobByProcessDefinitionKey

void activateJobByProcessDefinitionKey(String processDefinitionKey)

Activates Jobs of the provided process definition key.

Throws:
ProcessEngineException - if the process definition key is equal null.

suspendJobById

void suspendJobById(String jobId)

Suspends the Job with the given id.

Throws:
ProcessEngineException - if the job id is equal null.

suspendJobByJobDefinitionId

void suspendJobByJobDefinitionId(String jobDefinitionId)

Suspends all Jobs of the provided job definition id.

Throws:
ProcessEngineException - if the job definition id is equal null.

suspendJobByProcessInstanceId

void suspendJobByProcessInstanceId(String processInstanceId)

Suspends all Jobs of the provided process instance id.

Throws:
ProcessEngineException - if the process instance id is equal null.

suspendJobByProcessDefinitionId

void suspendJobByProcessDefinitionId(String processDefinitionId)

Suspends all Jobs of the provided process definition id.

Throws:
ProcessEngineException - if the process definition id is equal null.

suspendJobByProcessDefinitionKey

void suspendJobByProcessDefinitionKey(String processDefinitionKey)

Activates Jobs of the provided process definition key.

Throws:
ProcessEngineException - if the process definition key is equal null.

setJobRetries

void setJobRetries(String jobId,
                   int retries)
Sets the number of retries that a job has left. Whenever the JobExecutor fails to execute a job, this value is decremented. When it hits zero, the job is supposed to be dead and not retried again. In that case, this method can be used to increase the number of retries.

Parameters:
jobId - id of the job to modify, cannot be null.
retries - number of retries.

setJobRetriesByJobDefinitionId

void setJobRetriesByJobDefinitionId(String jobDefinitionId,
                                    int retries)

Set the number of retries of all failed jobs of the provided job definition id.

Whenever the JobExecutor fails to execute a job, this value is decremented. When it hits zero, the job is supposed to be failed and not retried again. In that case, this method can be used to increase the number of retries.

Incidents of the involved failed jobs will not be resolved using this method! When the execution of a job was successful the corresponding incident will be resolved.

Parameters:
jobdefinitionId - id of the job definition, cannot be null.
retries - number of retries.

setJobDuedate

void setJobDuedate(String jobId,
                   Date newDuedate)
Sets a new due date for the provided id. When newDuedate is null, the job is executed with the next job executor run.

Parameters:
jobId - id of job to modify, cannot be null.
newDuedate - new date for job execution

getJobExceptionStacktrace

String getJobExceptionStacktrace(String jobId)
Returns the full stacktrace of the exception that occurs when the job with the given id was last executed. Returns null when the job has no exception stacktrace.

Parameters:
jobId - id of the job, cannot be null.
Throws:
ProcessEngineException - when no job exists with the given id.

getProperties

Map<String,String> getProperties()
get the list of properties.


setProperty

void setProperty(String name,
                 String value)
Set the value for a property.

Parameters:
name - the name of the property.
value - the new value for the property.

deleteProperty

void deleteProperty(String name)
Deletes a property by name. If the property does not exist, the request is ignored.

Parameters:
name - the name of the property to delete

databaseSchemaUpgrade

String databaseSchemaUpgrade(Connection connection,
                             String catalog,
                             String schema)
programmatic schema update on a given connection returning feedback about what happened


createProcessDefinitionStatisticsQuery

ProcessDefinitionStatisticsQuery createProcessDefinitionStatisticsQuery()
Query for the number of process instances aggregated by process definitions.


createDeploymentStatisticsQuery

DeploymentStatisticsQuery createDeploymentStatisticsQuery()
Query for the number of process instances aggregated by deployments.


createActivityStatisticsQuery

ActivityStatisticsQuery createActivityStatisticsQuery(String processDefinitionId)
Query for the number of activity instances aggregated by activities of a single process definition.


getRegisteredDeployments

Set<String> getRegisteredDeployments()
Get the deployments that are registered the engine's job executor. This set is only relevant, if the engine configuration property jobExecutorDeploymentAware is set.


registerDeploymentForJobExecutor

void registerDeploymentForJobExecutor(String deploymentId)
Register a deployment for the engine's job executor. This is required, if the engine configuration property jobExecutorDeploymentAware is set. If set to false, the job executor will execute any job.


unregisterDeploymentForJobExecutor

void unregisterDeploymentForJobExecutor(String deploymentId)
Unregister a deployment for the engine's job executor. If the engine configuration property jobExecutorDeploymentAware is set, jobs for the given deployment will no longer get acquired.


getHistoryLevel

int getHistoryLevel()
Get the configured history level for the process engine.

Returns:
the history level


Copyright © 2014 camunda services GmbH. All Rights Reserved.