## Uses of Interface
org.jbpm.casemgmt.api.dynamic.TaskSpecification

- Packages that use TaskSpecification
  Package | Description
  --- | ---
  org.jbpm.casemgmt.api |
  org.jbpm.casemgmt.impl |
  org.jbpm.casemgmt.impl.dynamic |

- - ### Uses of TaskSpecification in org.jbpm.casemgmt.api

    Methods in org.jbpm.casemgmt.api that return TaskSpecification
    Modifier and Type | Method | Description
    --- | --- | ---
    `TaskSpecification` | CaseService.`newHumanTaskSpec​(String taskName, String description, String actorIds, String groupIds, Map<String,​Object> parameters)` | Returns new TaskSpecification describing user task so it can be created as dynamic task.
    `TaskSpecification` | CaseService.`newTaskSpec​(String nodeType, String nodeName, Map<String,​Object> parameters)` | Returns new TaskSpecification describing generic (work item based) task so it can be added as dynamic task.

    Methods in org.jbpm.casemgmt.api with parameters of type TaskSpecification
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | CaseService.`addDynamicTask​(Long processInstanceId, TaskSpecification taskSpecification)` | Adds new user task to specified process instance.
    `void` | CaseService.`addDynamicTask​(String caseId, TaskSpecification taskSpecification)` | Adds new user task to specified case.
    `void` | CaseService.`addDynamicTaskToStage​(Long processInstanceId, String stage, TaskSpecification taskSpecification)` | Adds new user task to specified case and stage on given process instance.
    `void` | CaseService.`addDynamicTaskToStage​(String caseId, String stage, TaskSpecification taskSpecification)` | Adds new user task to specified case and stage.

  - ### Uses of TaskSpecification in org.jbpm.casemgmt.impl

    Methods in org.jbpm.casemgmt.impl that return TaskSpecification
    Modifier and Type | Method | Description
    --- | --- | ---
    `TaskSpecification` | CaseServiceImpl.`newHumanTaskSpec​(String taskName, String description, String actorIds, String groupIds, Map<String,​Object> parameters)` |
    `TaskSpecification` | CaseServiceImpl.`newTaskSpec​(String nodeType, String nodeName, Map<String,​Object> parameters)` |

    Methods in org.jbpm.casemgmt.impl with parameters of type TaskSpecification
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | CaseServiceImpl.`addDynamicTask​(Long processInstanceId, TaskSpecification taskSpecification)` |
    `void` | CaseServiceImpl.`addDynamicTask​(String caseId, TaskSpecification taskSpecification)` |
    `void` | CaseServiceImpl.`addDynamicTaskToStage​(Long processInstanceId, String stage, TaskSpecification taskSpecification)` |
    `void` | CaseServiceImpl.`addDynamicTaskToStage​(String caseId, String stage, TaskSpecification taskSpecification)` |

  - ### Uses of TaskSpecification in org.jbpm.casemgmt.impl.dynamic

    Classes in org.jbpm.casemgmt.impl.dynamic that implement TaskSpecification
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `HumanTaskSpecification` | Defines human task specification to create new user task in ad hoc (dynamic) process instance Expected parameters are: NodeName - is a mandatory name of the task - accept variable expressions TaskName - is a optional look up name of the task's form - accept variable expressions ActorId - is an optional list of actors to be assigned - accept variable expressions GroupId - is an optional list of groups to be assigned - accept variable expressions Comment - is an optional comment/description of the task - accept variable expressions
    `class` | `WorkItemTaskSpecification` | Defines work item task specification to create new "service" task in ad hoc (dynamic) process instance