Package org.camunda.bpm.engine.impl
Class TaskServiceImpl
- java.lang.Object
-
- org.camunda.bpm.engine.impl.ServiceImpl
-
- org.camunda.bpm.engine.impl.TaskServiceImpl
-
- All Implemented Interfaces:
TaskService
public class TaskServiceImpl extends ServiceImpl implements TaskService
- Author:
- Tom Baeyens, Joram Barrez
-
-
Field Summary
-
Fields inherited from class org.camunda.bpm.engine.impl.ServiceImpl
commandExecutor
-
-
Constructor Summary
Constructors Constructor Description TaskServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCandidateGroup(java.lang.String taskId, java.lang.String groupId)Convenience shorthand forTaskService.addGroupIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATEvoidaddCandidateUser(java.lang.String taskId, java.lang.String userId)Convenience shorthand forTaskService.addUserIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATEvoidaddComment(java.lang.String taskId, java.lang.String processInstance, java.lang.String message)Add a comment to a task and/or process instance.voidaddGroupIdentityLink(java.lang.String taskId, java.lang.String groupId, java.lang.String identityLinkType)Involves a group with a task.voidaddUserIdentityLink(java.lang.String taskId, java.lang.String userId, java.lang.String identityLinkType)Involves a user with a task.voidclaim(java.lang.String taskId, java.lang.String userId)Claim responsibility for a task: the given user is madeassigneefor the task.voidcomplete(java.lang.String taskId)Marks a task as done and continues process execution.voidcomplete(java.lang.String taskId, java.util.Map<java.lang.String,java.lang.Object> variables)Marks a task as done and continues process execution.VariableMapcompleteWithVariablesInReturn(java.lang.String taskId, java.util.Map<java.lang.String,java.lang.Object> variables, boolean deserializeValues)Marks a task as done and continues process execution.AttachmentcreateAttachment(java.lang.String attachmentType, java.lang.String taskId, java.lang.String processInstanceId, java.lang.String attachmentName, java.lang.String attachmentDescription, java.io.InputStream content)Add a new attachment to a task and/or a process instance and use an input stream to provide the content please use method in runtime service to operate on process instance.AttachmentcreateAttachment(java.lang.String attachmentType, java.lang.String taskId, java.lang.String processInstanceId, java.lang.String attachmentName, java.lang.String attachmentDescription, java.lang.String url)Add a new attachment to a task and/or a process instance and use an url as the content please use method in runtime service to operate on process instance Either taskId or processInstanceId has to be providedCommentcreateComment(java.lang.String taskId, java.lang.String processInstance, java.lang.String message)Creates a comment to a task and/or process instance and returns the comment.NativeTaskQuerycreateNativeTaskQuery()Returns a newTaskQuerycreateTaskQuery()Returns a newTaskQuerythat can be used to dynamically query tasks.TaskReportcreateTaskReport()Instantiate a task reportvoiddelegateTask(java.lang.String taskId, java.lang.String userId)Delegates the task to another user.voiddeleteAttachment(java.lang.String attachmentId)Delete an attachmentvoiddeleteCandidateGroup(java.lang.String taskId, java.lang.String groupId)Convenience shorthand forTaskService.deleteGroupIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATEvoiddeleteCandidateUser(java.lang.String taskId, java.lang.String userId)Convenience shorthand forTaskService.deleteUserIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATEvoiddeleteGroupIdentityLink(java.lang.String taskId, java.lang.String groupId, java.lang.String identityLinkType)Removes the association between a group and a task for the given identityLinkType.voiddeleteTask(java.lang.String taskId)Deletes the given task, not deleting historic information that is related to this task.voiddeleteTask(java.lang.String taskId, boolean cascade)Deletes the given task.voiddeleteTask(java.lang.String taskId, java.lang.String deleteReason)Deletes the given task, not deleting historic information that is related to this task.voiddeleteTaskAttachment(java.lang.String taskId, java.lang.String attachmentId)Delete an attachment to the given task id and attachment idvoiddeleteTasks(java.util.Collection<java.lang.String> taskIds)Deletes all tasks of the given collection, not deleting historic information that is related to these tasks.voiddeleteTasks(java.util.Collection<java.lang.String> taskIds, boolean cascade)Deletes all tasks of the given collection.voiddeleteTasks(java.util.Collection<java.lang.String> taskIds, java.lang.String deleteReason)Deletes all tasks of the given collection, not deleting historic information that is related to these tasks.voiddeleteUserIdentityLink(java.lang.String taskId, java.lang.String userId, java.lang.String identityLinkType)Removes the association between a user and a task for the given identityLinkType.AttachmentgetAttachment(java.lang.String attachmentId)Retrieve a particular attachmentjava.io.InputStreamgetAttachmentContent(java.lang.String attachmentId)Retrieve stream content of a particular attachmentjava.util.List<IdentityLink>getIdentityLinksForTask(java.lang.String taskId)Retrieves theIdentityLinks associated with the given task.java.util.List<Attachment>getProcessInstanceAttachments(java.lang.String processInstanceId)The list of attachments associated to a process instancejava.util.List<Comment>getProcessInstanceComments(java.lang.String processInstanceId)The comments related to the given process instance.java.util.List<Task>getSubTasks(java.lang.String parentTaskId)The list of subtasks for this parent taskAttachmentgetTaskAttachment(java.lang.String taskId, java.lang.String attachmentId)Retrieve a particular attachment to the given task id and attachment idjava.io.InputStreamgetTaskAttachmentContent(java.lang.String taskId, java.lang.String attachmentId)Retrieve stream content of a particular attachment to the given task id and attachment idjava.util.List<Attachment>getTaskAttachments(java.lang.String taskId)The list of attachments associated to a taskCommentgetTaskComment(java.lang.String taskId, java.lang.String commentId)Retrieve a particular task commentjava.util.List<Comment>getTaskComments(java.lang.String taskId)The comments related to the given task.java.util.List<Event>getTaskEvents(java.lang.String taskId)The all events related to the given task.java.lang.ObjectgetVariable(java.lang.String taskId, java.lang.String variableName)Get a variables and search in the task scope and if available also the execution scopes.java.lang.ObjectgetVariableLocal(java.lang.String taskId, java.lang.String variableName)Get a variables and only search in the task scope.<T extends TypedValue>
TgetVariableLocalTyped(java.lang.String taskId, java.lang.String variableName)Get a variables and only search in the task scope.<T extends TypedValue>
TgetVariableLocalTyped(java.lang.String taskId, java.lang.String variableName, boolean deserializeValue)Get a variables and only search in the task scope.VariableMapgetVariables(java.lang.String taskId)Get all variables and search in the task scope and if available also the execution scopes.VariableMapgetVariables(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)Get values for all given variableNamesVariableMapgetVariablesLocal(java.lang.String taskId)Get all variables and search only in the task scope.VariableMapgetVariablesLocal(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)Get a variable on a taskVariableMapgetVariablesLocalTyped(java.lang.String taskId)Get all variables and search only in the task scope.VariableMapgetVariablesLocalTyped(java.lang.String taskId, boolean deserializeValues)Get all variables and search only in the task scope.VariableMapgetVariablesLocalTyped(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames, boolean deserializeValues)Get values for all given variableName.VariableMapgetVariablesTyped(java.lang.String taskId)Get all variables and search in the task scope and if available also the execution scopes.VariableMapgetVariablesTyped(java.lang.String taskId, boolean deserializeValues)Get all variables and search in the task scope and if available also the execution scopes.VariableMapgetVariablesTyped(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames, boolean deserializeValues)Get values for all given variableName<T extends TypedValue>
TgetVariableTyped(java.lang.String taskId, java.lang.String variableName)Get a variables and search in the task scope and if available also the execution scopes.<T extends TypedValue>
TgetVariableTyped(java.lang.String taskId, java.lang.String variableName, boolean deserializeValue)Get a variables and search in the task scope and if available also the execution scopes.protected <T extends TypedValue>
TgetVariableTyped(java.lang.String taskId, java.lang.String variableName, boolean isLocal, boolean deserializeValue)voidhandleBpmnError(java.lang.String taskId, java.lang.String errorCode)Signals that a business error appears, which should be handled by the process engine.voidhandleBpmnError(java.lang.String taskId, java.lang.String errorCode, java.lang.String errorMessage)voidhandleBpmnError(java.lang.String taskId, java.lang.String errorCode, java.lang.String errorMessage, java.util.Map<java.lang.String,java.lang.Object> variables)voidhandleEscalation(java.lang.String taskId, java.lang.String escalationCode)Signals that an escalation appears, which should be handled by the process engine.voidhandleEscalation(java.lang.String taskId, java.lang.String escalationCode, java.util.Map<java.lang.String,java.lang.Object> variables)Signals that an escalation appears, which should be handled by the process engine.TasknewTask()Creates a new task that is not related to any process instance.TasknewTask(java.lang.String taskId)create a new task with a user defined task idvoidremoveVariable(java.lang.String taskId, java.lang.String variableName)Removes the variable from the task.voidremoveVariableLocal(java.lang.String taskId, java.lang.String variableName)Removes the variable from the task (not considering parent scopes).voidremoveVariables(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)Removes all variables in the given collection from the task.voidremoveVariablesLocal(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)Removes all variables in the given collection from the task (not considering parent scopes).voidresolveTask(java.lang.String taskId)voidresolveTask(java.lang.String taskId, java.util.Map<java.lang.String,java.lang.Object> variables)voidsaveAttachment(Attachment attachment)Update the name and decription of an attachmentvoidsaveTask(Task task)Saves the given task to the persistent data store.voidsetAssignee(java.lang.String taskId, java.lang.String userId)Changes the assignee of the given task to the given userId.voidsetOwner(java.lang.String taskId, java.lang.String userId)Transfers ownership of this task to another user.voidsetPriority(java.lang.String taskId, int priority)Changes the priority of the task.voidsetVariable(java.lang.String taskId, java.lang.String variableName, java.lang.Object value)Set variable on a task.voidsetVariableLocal(java.lang.String taskId, java.lang.String variableName, java.lang.Object value)Set variable on a task.voidsetVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> variables)Set variables on a task.protected voidsetVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> variables, boolean local)voidsetVariablesLocal(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> variables)Set variables on a task.voidupdateVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> modifications, java.util.Collection<java.lang.String> deletions)protected voidupdateVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> modifications, java.util.Collection<java.lang.String> deletions, boolean local)voidupdateVariablesLocal(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> modifications, java.util.Collection<java.lang.String> deletions)-
Methods inherited from class org.camunda.bpm.engine.impl.ServiceImpl
getCommandExecutor, setCommandExecutor
-
-
-
-
Method Detail
-
newTask
public Task newTask()
Description copied from interface:TaskServiceCreates a new task that is not related to any process instance. The returned task is transient and must be saved withTaskService.saveTask(Task)'manually'.- Specified by:
newTaskin interfaceTaskService
-
newTask
public Task newTask(java.lang.String taskId)
Description copied from interface:TaskServicecreate a new task with a user defined task id- Specified by:
newTaskin interfaceTaskService
-
saveTask
public void saveTask(Task task)
Description copied from interface:TaskServiceSaves the given task to the persistent data store. If the task is already present in the persistent store, it is updated. After a new task has been saved, the task instance passed into this method is updated with the id of the newly created task.- Specified by:
saveTaskin interfaceTaskService- Parameters:
task- the task, cannot be null.
-
deleteTask
public void deleteTask(java.lang.String taskId)
Description copied from interface:TaskServiceDeletes the given task, not deleting historic information that is related to this task.- Specified by:
deleteTaskin interfaceTaskService- Parameters:
taskId- The id of the task that will be deleted, cannot be null. If no task exists with the given taskId, the operation is ignored.
-
deleteTasks
public void deleteTasks(java.util.Collection<java.lang.String> taskIds)
Description copied from interface:TaskServiceDeletes all tasks of the given collection, not deleting historic information that is related to these tasks.- Specified by:
deleteTasksin interfaceTaskService- Parameters:
taskIds- The id's of the tasks that will be deleted, cannot be null. All id's in the list that don't have an existing task will be ignored.
-
deleteTask
public void deleteTask(java.lang.String taskId, boolean cascade)Description copied from interface:TaskServiceDeletes the given task.- Specified by:
deleteTaskin interfaceTaskService- Parameters:
taskId- The id of the task that will be deleted, cannot be null. If no task exists with the given taskId, the operation is ignored.cascade- If cascade is true, also the historic information related to this task is deleted.
-
deleteTasks
public void deleteTasks(java.util.Collection<java.lang.String> taskIds, boolean cascade)Description copied from interface:TaskServiceDeletes all tasks of the given collection.- Specified by:
deleteTasksin interfaceTaskService- Parameters:
taskIds- The id's of the tasks that will be deleted, cannot be null. All id's in the list that don't have an existing task will be ignored.cascade- If cascade is true, also the historic information related to this task is deleted.
-
deleteTask
public void deleteTask(java.lang.String taskId, java.lang.String deleteReason)Description copied from interface:TaskServiceDeletes the given task, not deleting historic information that is related to this task.- Specified by:
deleteTaskin interfaceTaskService- Parameters:
taskId- The id of the task that will be deleted, cannot be null. If no task exists with the given taskId, the operation is ignored.deleteReason- reason the task is deleted. Is recorded in history, if enabled.
-
deleteTasks
public void deleteTasks(java.util.Collection<java.lang.String> taskIds, java.lang.String deleteReason)Description copied from interface:TaskServiceDeletes all tasks of the given collection, not deleting historic information that is related to these tasks.- Specified by:
deleteTasksin interfaceTaskService- Parameters:
taskIds- The id's of the tasks that will be deleted, cannot be null. All id's in the list that don't have an existing task will be ignored.deleteReason- reason the task is deleted. Is recorded in history, if enabled.
-
setAssignee
public void setAssignee(java.lang.String taskId, java.lang.String userId)Description copied from interface:TaskServiceChanges the assignee of the given task to the given userId. No check is done whether the user is known by the identity component.- Specified by:
setAssigneein interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.userId- id of the user to use as assignee.
-
setOwner
public void setOwner(java.lang.String taskId, java.lang.String userId)Description copied from interface:TaskServiceTransfers ownership of this task to another user. No check is done whether the user is known by the identity component.- Specified by:
setOwnerin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.userId- of the person that is receiving ownership.
-
addCandidateUser
public void addCandidateUser(java.lang.String taskId, java.lang.String userId)Description copied from interface:TaskServiceConvenience shorthand forTaskService.addUserIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATE- Specified by:
addCandidateUserin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.userId- id of the user to use as candidate, cannot be null.
-
addCandidateGroup
public void addCandidateGroup(java.lang.String taskId, java.lang.String groupId)Description copied from interface:TaskServiceConvenience shorthand forTaskService.addGroupIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATE- Specified by:
addCandidateGroupin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.groupId- id of the group to use as candidate, cannot be null.
-
addUserIdentityLink
public void addUserIdentityLink(java.lang.String taskId, java.lang.String userId, java.lang.String identityLinkType)Description copied from interface:TaskServiceInvolves a user with a task. The type of identity link is defined by the given identityLinkType.- Specified by:
addUserIdentityLinkin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.userId- id of the user involve, cannot be null.identityLinkType- type of identityLink, cannot be null (@seeIdentityLinkType).
-
addGroupIdentityLink
public void addGroupIdentityLink(java.lang.String taskId, java.lang.String groupId, java.lang.String identityLinkType)Description copied from interface:TaskServiceInvolves a group with a task. The type of identityLink is defined by the given identityLink.- Specified by:
addGroupIdentityLinkin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.groupId- id of the group to involve, cannot be null.identityLinkType- type of identity, cannot be null (@seeIdentityLinkType).
-
deleteCandidateGroup
public void deleteCandidateGroup(java.lang.String taskId, java.lang.String groupId)Description copied from interface:TaskServiceConvenience shorthand forTaskService.deleteGroupIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATE- Specified by:
deleteCandidateGroupin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.groupId- id of the group to use as candidate, cannot be null.
-
deleteCandidateUser
public void deleteCandidateUser(java.lang.String taskId, java.lang.String userId)Description copied from interface:TaskServiceConvenience shorthand forTaskService.deleteUserIdentityLink(String, String, String); with typeIdentityLinkType.CANDIDATE- Specified by:
deleteCandidateUserin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.userId- id of the user to use as candidate, cannot be null.
-
deleteGroupIdentityLink
public void deleteGroupIdentityLink(java.lang.String taskId, java.lang.String groupId, java.lang.String identityLinkType)Description copied from interface:TaskServiceRemoves the association between a group and a task for the given identityLinkType.- Specified by:
deleteGroupIdentityLinkin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.groupId- id of the group to involve, cannot be null.identityLinkType- type of identity, cannot be null (@seeIdentityLinkType).
-
deleteUserIdentityLink
public void deleteUserIdentityLink(java.lang.String taskId, java.lang.String userId, java.lang.String identityLinkType)Description copied from interface:TaskServiceRemoves the association between a user and a task for the given identityLinkType.- Specified by:
deleteUserIdentityLinkin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.userId- id of the user involve, cannot be null.identityLinkType- type of identityLink, cannot be null (@seeIdentityLinkType).
-
getIdentityLinksForTask
public java.util.List<IdentityLink> getIdentityLinksForTask(java.lang.String taskId)
Description copied from interface:TaskServiceRetrieves theIdentityLinks associated with the given task. Such anIdentityLinkinforms how a certain identity (eg. group or user) is associated with a certain task (eg. as candidate, assignee, etc.)- Specified by:
getIdentityLinksForTaskin interfaceTaskService
-
claim
public void claim(java.lang.String taskId, java.lang.String userId)Description copied from interface:TaskServiceClaim responsibility for a task: the given user is madeassigneefor the task. The difference withTaskService.setAssignee(String, String)is that here a check is done if the task already has a user assigned to it. No check is done whether the user is known by the identity component.- Specified by:
claimin interfaceTaskService- Parameters:
taskId- task to claim, cannot be null.userId- user that claims the task. When userId is null the task is unclaimed, assigned to no one.
-
complete
public void complete(java.lang.String taskId)
Description copied from interface:TaskServiceMarks a task as done and continues process execution. This method is typically called by a task list user interface after a task form has been submitted by theassignee.- Specified by:
completein interfaceTaskService- Parameters:
taskId- the id of the task to complete, cannot be null.
-
complete
public void complete(java.lang.String taskId, java.util.Map<java.lang.String,java.lang.Object> variables)Description copied from interface:TaskServiceMarks a task as done and continues process execution. This method is typically called by a task list user interface after a task form has been submitted by theassigneeand the required task parameters have been provided.- Specified by:
completein interfaceTaskService- Parameters:
taskId- the id of the task to complete, cannot be null.variables- task parameters. May be null or empty.
-
completeWithVariablesInReturn
public VariableMap completeWithVariablesInReturn(java.lang.String taskId, java.util.Map<java.lang.String,java.lang.Object> variables, boolean deserializeValues)
Description copied from interface:TaskServiceMarks a task as done and continues process execution. This method is typically called by a task list user interface after a task form has been submitted by theassigneeand the required task parameters have been provided.- Specified by:
completeWithVariablesInReturnin interfaceTaskService- Parameters:
taskId- the id of the task to complete, cannot be null.variables- task parameters. May be null or empty.deserializeValues- if false, returnedSerializableValues will not be deserialized (unless they are passed into this method as a deserialized value or if the BPMN process triggers deserialization)- Returns:
- All task variables with their current value
-
delegateTask
public void delegateTask(java.lang.String taskId, java.lang.String userId)Description copied from interface:TaskServiceDelegates the task to another user. This means that theassigneeis set and thedelegation stateis set toDelegationState.PENDING. If no owner is set on the task, the owner is set to the currentassigneeof the task. The new assignee must useTaskService.resolveTask(String)to report back to the owner. Only the owner cancompletethe task.- Specified by:
delegateTaskin interfaceTaskService- Parameters:
taskId- The id of the task that will be delegated.userId- The id of the user that will be set as assignee.
-
resolveTask
public void resolveTask(java.lang.String taskId)
Description copied from interface:TaskServiceMarks that theassigneeis done with the taskdelegatedto her and that it can be sent back to theowner. Can only be called when this task isDelegationState.PENDINGdelegation. After this method returns, thedelegation stateis set toDelegationState.RESOLVEDand the task can becompleted.- Specified by:
resolveTaskin interfaceTaskService- Parameters:
taskId- the id of the task to resolve, cannot be null.
-
resolveTask
public void resolveTask(java.lang.String taskId, java.util.Map<java.lang.String,java.lang.Object> variables)Description copied from interface:TaskServiceMarks that theassigneeis done with the taskdelegatedto her and that it can be sent back to theownerwith the provided variables. Can only be called when this task isDelegationState.PENDINGdelegation. After this method returns, thedelegation stateis set toDelegationState.RESOLVEDand the task can becompleted.- Specified by:
resolveTaskin interfaceTaskService
-
setPriority
public void setPriority(java.lang.String taskId, int priority)Description copied from interface:TaskServiceChanges the priority of the task. Authorization: actual owner / business admin- Specified by:
setPriorityin interfaceTaskService- Parameters:
taskId- id of the task, cannot be null.priority- the new priority for the task.
-
createTaskQuery
public TaskQuery createTaskQuery()
Description copied from interface:TaskServiceReturns a newTaskQuerythat can be used to dynamically query tasks.- Specified by:
createTaskQueryin interfaceTaskService
-
createNativeTaskQuery
public NativeTaskQuery createNativeTaskQuery()
Description copied from interface:TaskServiceReturns a new- Specified by:
createNativeTaskQueryin interfaceTaskService
-
getVariables
public VariableMap getVariables(java.lang.String taskId)
Description copied from interface:TaskServiceGet all variables and search in the task scope and if available also the execution scopes. If you have many variables and you only need a few, consider usingTaskService.getVariables(String, Collection)for better performance.- Specified by:
getVariablesin interfaceTaskService
-
getVariablesTyped
public VariableMap getVariablesTyped(java.lang.String taskId)
Description copied from interface:TaskServiceGet all variables and search in the task scope and if available also the execution scopes. If you have many variables and you only need a few, consider usingTaskService.getVariables(String, Collection)for better performance.- Specified by:
getVariablesTypedin interfaceTaskService- Parameters:
taskId- the id of the task
-
getVariablesTyped
public VariableMap getVariablesTyped(java.lang.String taskId, boolean deserializeValues)
Description copied from interface:TaskServiceGet all variables and search in the task scope and if available also the execution scopes. If you have many variables and you only need a few, consider usingTaskService.getVariables(String, Collection)for better performance.- Specified by:
getVariablesTypedin interfaceTaskService- Parameters:
taskId- the id of the taskdeserializeValues- if false,SerializableValueswill not be deserialized.
-
getVariablesLocal
public VariableMap getVariablesLocal(java.lang.String taskId)
Description copied from interface:TaskServiceGet all variables and search only in the task scope. If you have many task local variables and you only need a few, consider usingTaskService.getVariablesLocal(String, Collection)for better performance.- Specified by:
getVariablesLocalin interfaceTaskService
-
getVariablesLocalTyped
public VariableMap getVariablesLocalTyped(java.lang.String taskId)
Description copied from interface:TaskServiceGet all variables and search only in the task scope. If you have many task local variables and you only need a few, consider usingTaskService.getVariablesLocal(String, Collection)for better performance.- Specified by:
getVariablesLocalTypedin interfaceTaskService- Parameters:
taskId- the id of the task
-
getVariablesLocalTyped
public VariableMap getVariablesLocalTyped(java.lang.String taskId, boolean deserializeValues)
Description copied from interface:TaskServiceGet all variables and search only in the task scope. If you have many task local variables and you only need a few, consider usingTaskService.getVariablesLocal(String, Collection)for better performance.- Specified by:
getVariablesLocalTypedin interfaceTaskService- Parameters:
taskId- the id of the taskdeserializeValues- if false,SerializableValueswill not be deserialized.
-
getVariables
public VariableMap getVariables(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)
Description copied from interface:TaskServiceGet values for all given variableNames- Specified by:
getVariablesin interfaceTaskService
-
getVariablesTyped
public VariableMap getVariablesTyped(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames, boolean deserializeValues)
Description copied from interface:TaskServiceGet values for all given variableName- Specified by:
getVariablesTypedin interfaceTaskService- Parameters:
taskId- the id of the taskvariableNames- only fetch variables whose names are in the collection.deserializeValues- if false,SerializableValueswill not be deserialized.
-
getVariablesLocal
public VariableMap getVariablesLocal(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)
Description copied from interface:TaskServiceGet a variable on a task- Specified by:
getVariablesLocalin interfaceTaskService
-
getVariablesLocalTyped
public VariableMap getVariablesLocalTyped(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames, boolean deserializeValues)
Description copied from interface:TaskServiceGet values for all given variableName. Only search in the local task scope.- Specified by:
getVariablesLocalTypedin interfaceTaskService- Parameters:
taskId- the id of the taskvariableNames- only fetch variables whose names are in the collection.deserializeValues- if false,SerializableValueswill not be deserialized.
-
getVariable
public java.lang.Object getVariable(java.lang.String taskId, java.lang.String variableName)Description copied from interface:TaskServiceGet a variables and search in the task scope and if available also the execution scopes.- Specified by:
getVariablein interfaceTaskService
-
getVariableLocal
public java.lang.Object getVariableLocal(java.lang.String taskId, java.lang.String variableName)Description copied from interface:TaskServiceGet a variables and only search in the task scope.- Specified by:
getVariableLocalin interfaceTaskService
-
getVariableTyped
public <T extends TypedValue> T getVariableTyped(java.lang.String taskId, java.lang.String variableName)
Description copied from interface:TaskServiceGet a variables and search in the task scope and if available also the execution scopes.- Specified by:
getVariableTypedin interfaceTaskService- Parameters:
taskId- the id of the taskvariableName- the name of the variable to fetch- Returns:
- the TypedValue for the variable or 'null' in case no such variable exists.
-
getVariableTyped
public <T extends TypedValue> T getVariableTyped(java.lang.String taskId, java.lang.String variableName, boolean deserializeValue)
Description copied from interface:TaskServiceGet a variables and search in the task scope and if available also the execution scopes.- Specified by:
getVariableTypedin interfaceTaskService- Parameters:
taskId- the id of the taskvariableName- the name of the variable to fetchdeserializeValue- if false a,SerializableValuewill not be deserialized.- Returns:
- the TypedValue for the variable or 'null' in case no such variable exists.
-
getVariableLocalTyped
public <T extends TypedValue> T getVariableLocalTyped(java.lang.String taskId, java.lang.String variableName)
Description copied from interface:TaskServiceGet a variables and only search in the task scope.- Specified by:
getVariableLocalTypedin interfaceTaskService- Parameters:
taskId- the id of the taskvariableName- the name of the variable to fetch- Returns:
- the TypedValue for the variable or 'null' in case no such variable exists.
-
getVariableLocalTyped
public <T extends TypedValue> T getVariableLocalTyped(java.lang.String taskId, java.lang.String variableName, boolean deserializeValue)
Description copied from interface:TaskServiceGet a variables and only search in the task scope.- Specified by:
getVariableLocalTypedin interfaceTaskService- Parameters:
taskId- the id of the taskvariableName- the name of the variable to fetchdeserializeValue- if false a,SerializableValuewill not be deserialized.- Returns:
- the TypedValue for the variable or 'null' in case no such variable exists.
-
getVariableTyped
protected <T extends TypedValue> T getVariableTyped(java.lang.String taskId, java.lang.String variableName, boolean isLocal, boolean deserializeValue)
-
setVariable
public void setVariable(java.lang.String taskId, java.lang.String variableName, java.lang.Object value)Description copied from interface:TaskServiceSet variable on a task. If the variable is not already existing, it will be created in the most outer scope. This means the process instance in case this task is related to an execution.- Specified by:
setVariablein interfaceTaskService
-
setVariableLocal
public void setVariableLocal(java.lang.String taskId, java.lang.String variableName, java.lang.Object value)Description copied from interface:TaskServiceSet variable on a task. If the variable is not already existing, it will be created in the task.- Specified by:
setVariableLocalin interfaceTaskService
-
setVariables
public void setVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> variables)Description copied from interface:TaskServiceSet variables on a task. If the variable is not already existing, it will be created in the most outer scope. This means the process instance in case this task is related to an execution.- Specified by:
setVariablesin interfaceTaskService
-
setVariablesLocal
public void setVariablesLocal(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> variables)Description copied from interface:TaskServiceSet variables on a task. If the variable is not already existing, it will be created in the task.- Specified by:
setVariablesLocalin interfaceTaskService
-
setVariables
protected void setVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> variables, boolean local)
-
updateVariablesLocal
public void updateVariablesLocal(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> modifications, java.util.Collection<java.lang.String> deletions)
-
updateVariables
public void updateVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> modifications, java.util.Collection<java.lang.String> deletions)
-
updateVariables
protected void updateVariables(java.lang.String taskId, java.util.Map<java.lang.String,? extends java.lang.Object> modifications, java.util.Collection<java.lang.String> deletions, boolean local)
-
removeVariable
public void removeVariable(java.lang.String taskId, java.lang.String variableName)Description copied from interface:TaskServiceRemoves the variable from the task. When the variable does not exist, nothing happens.- Specified by:
removeVariablein interfaceTaskService
-
removeVariableLocal
public void removeVariableLocal(java.lang.String taskId, java.lang.String variableName)Description copied from interface:TaskServiceRemoves the variable from the task (not considering parent scopes). When the variable does not exist, nothing happens.- Specified by:
removeVariableLocalin interfaceTaskService
-
removeVariables
public void removeVariables(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)Description copied from interface:TaskServiceRemoves all variables in the given collection from the task. Non existing variable names are simply ignored.- Specified by:
removeVariablesin interfaceTaskService
-
removeVariablesLocal
public void removeVariablesLocal(java.lang.String taskId, java.util.Collection<java.lang.String> variableNames)Description copied from interface:TaskServiceRemoves all variables in the given collection from the task (not considering parent scopes). Non existing variable names are simply ignored.- Specified by:
removeVariablesLocalin interfaceTaskService
-
addComment
public void addComment(java.lang.String taskId, java.lang.String processInstance, java.lang.String message)Description copied from interface:TaskServiceAdd a comment to a task and/or process instance.- Specified by:
addCommentin interfaceTaskService
-
createComment
public Comment createComment(java.lang.String taskId, java.lang.String processInstance, java.lang.String message)
Description copied from interface:TaskServiceCreates a comment to a task and/or process instance and returns the comment.- Specified by:
createCommentin interfaceTaskService
-
getTaskComments
public java.util.List<Comment> getTaskComments(java.lang.String taskId)
Description copied from interface:TaskServiceThe comments related to the given task.- Specified by:
getTaskCommentsin interfaceTaskService
-
getTaskComment
public Comment getTaskComment(java.lang.String taskId, java.lang.String commentId)
Description copied from interface:TaskServiceRetrieve a particular task comment- Specified by:
getTaskCommentin interfaceTaskService
-
getTaskEvents
public java.util.List<Event> getTaskEvents(java.lang.String taskId)
Description copied from interface:TaskServiceThe all events related to the given task.
As of Camunda Platform 7.4 task events are only written in context of a logged in user. This behavior can be toggled in the process engine configuration using the property
legacyUserOperationLog(default false). To restore the engine's previous behavior, set the flag totrue.- Specified by:
getTaskEventsin interfaceTaskService- See Also:
HistoryService.createUserOperationLogQuery()
-
getProcessInstanceComments
public java.util.List<Comment> getProcessInstanceComments(java.lang.String processInstanceId)
Description copied from interface:TaskServiceThe comments related to the given process instance.- Specified by:
getProcessInstanceCommentsin interfaceTaskService
-
createAttachment
public Attachment createAttachment(java.lang.String attachmentType, java.lang.String taskId, java.lang.String processInstanceId, java.lang.String attachmentName, java.lang.String attachmentDescription, java.io.InputStream content)
Description copied from interface:TaskServiceAdd a new attachment to a task and/or a process instance and use an input stream to provide the content please use method in runtime service to operate on process instance. Either taskId or processInstanceId has to be provided- Specified by:
createAttachmentin interfaceTaskService- Parameters:
attachmentType- - name of the attachment, can be nulltaskId- - task that should have an attachmentprocessInstanceId- - id of a process to use if task id is nullattachmentName- - name of the attachment, can be nullattachmentDescription- - full text description, can be nullcontent- - byte array with content of attachment
-
createAttachment
public Attachment createAttachment(java.lang.String attachmentType, java.lang.String taskId, java.lang.String processInstanceId, java.lang.String attachmentName, java.lang.String attachmentDescription, java.lang.String url)
Description copied from interface:TaskServiceAdd a new attachment to a task and/or a process instance and use an url as the content please use method in runtime service to operate on process instance Either taskId or processInstanceId has to be provided- Specified by:
createAttachmentin interfaceTaskService- Parameters:
attachmentType- - name of the attachment, can be nulltaskId- - task that should have an attachmentprocessInstanceId- - id of a process to use if task id is nullattachmentName- - name of the attachment, can be nullattachmentDescription- - full text description, can be nullurl- - url of the attachment, can be null
-
getAttachmentContent
public java.io.InputStream getAttachmentContent(java.lang.String attachmentId)
Description copied from interface:TaskServiceRetrieve stream content of a particular attachment- Specified by:
getAttachmentContentin interfaceTaskService
-
getTaskAttachmentContent
public java.io.InputStream getTaskAttachmentContent(java.lang.String taskId, java.lang.String attachmentId)Description copied from interface:TaskServiceRetrieve stream content of a particular attachment to the given task id and attachment id- Specified by:
getTaskAttachmentContentin interfaceTaskService
-
deleteAttachment
public void deleteAttachment(java.lang.String attachmentId)
Description copied from interface:TaskServiceDelete an attachment- Specified by:
deleteAttachmentin interfaceTaskService
-
deleteTaskAttachment
public void deleteTaskAttachment(java.lang.String taskId, java.lang.String attachmentId)Description copied from interface:TaskServiceDelete an attachment to the given task id and attachment id- Specified by:
deleteTaskAttachmentin interfaceTaskService
-
getAttachment
public Attachment getAttachment(java.lang.String attachmentId)
Description copied from interface:TaskServiceRetrieve a particular attachment- Specified by:
getAttachmentin interfaceTaskService
-
getTaskAttachment
public Attachment getTaskAttachment(java.lang.String taskId, java.lang.String attachmentId)
Description copied from interface:TaskServiceRetrieve a particular attachment to the given task id and attachment id- Specified by:
getTaskAttachmentin interfaceTaskService
-
getTaskAttachments
public java.util.List<Attachment> getTaskAttachments(java.lang.String taskId)
Description copied from interface:TaskServiceThe list of attachments associated to a task- Specified by:
getTaskAttachmentsin interfaceTaskService
-
getProcessInstanceAttachments
public java.util.List<Attachment> getProcessInstanceAttachments(java.lang.String processInstanceId)
Description copied from interface:TaskServiceThe list of attachments associated to a process instance- Specified by:
getProcessInstanceAttachmentsin interfaceTaskService
-
saveAttachment
public void saveAttachment(Attachment attachment)
Description copied from interface:TaskServiceUpdate the name and decription of an attachment- Specified by:
saveAttachmentin interfaceTaskService
-
getSubTasks
public java.util.List<Task> getSubTasks(java.lang.String parentTaskId)
Description copied from interface:TaskServiceThe list of subtasks for this parent task- Specified by:
getSubTasksin interfaceTaskService
-
createTaskReport
public TaskReport createTaskReport()
Description copied from interface:TaskServiceInstantiate a task report- Specified by:
createTaskReportin interfaceTaskService
-
handleBpmnError
public void handleBpmnError(java.lang.String taskId, java.lang.String errorCode)Description copied from interface:TaskServiceSignals that a business error appears, which should be handled by the process engine.- Specified by:
handleBpmnErrorin interfaceTaskService- Parameters:
taskId- the id of an existing active taskerrorCode- the error code of the corresponding bmpn error
-
handleBpmnError
public void handleBpmnError(java.lang.String taskId, java.lang.String errorCode, java.lang.String errorMessage)- Specified by:
handleBpmnErrorin interfaceTaskService- Parameters:
taskId- the id of an existing active taskerrorCode- the error code of the corresponding bmpn errorerrorMessage- the error message of the corresponding bmpn error- See Also:
TaskService.handleBpmnError(String, String)
-
handleBpmnError
public void handleBpmnError(java.lang.String taskId, java.lang.String errorCode, java.lang.String errorMessage, java.util.Map<java.lang.String,java.lang.Object> variables)- Specified by:
handleBpmnErrorin interfaceTaskService- Parameters:
taskId- the id of an existing active taskerrorCode- the error code of the corresponding bmpn errorerrorMessage- the error message of the corresponding bmpn errorvariables- the variables to pass to the execution- See Also:
TaskService.handleBpmnError(String, String)
-
handleEscalation
public void handleEscalation(java.lang.String taskId, java.lang.String escalationCode)Description copied from interface:TaskServiceSignals that an escalation appears, which should be handled by the process engine.- Specified by:
handleEscalationin interfaceTaskService- Parameters:
taskId- the id of an existing active taskescalationCode- the escalation code of the corresponding escalation
-
handleEscalation
public void handleEscalation(java.lang.String taskId, java.lang.String escalationCode, java.util.Map<java.lang.String,java.lang.Object> variables)Description copied from interface:TaskServiceSignals that an escalation appears, which should be handled by the process engine.- Specified by:
handleEscalationin interfaceTaskService- Parameters:
taskId- the id of an existing active taskescalationCode- the escalation code of the corresponding escalationvariables- the variables to pass to the execution
-
-