bpmn-server / AdHocSubProcess
Class: AdHocSubProcess#
ad hoc behaviour:
on start of subprocess:
all nodes without in-flow will be started; user-tasks, timers, script/service tasks etc.
on end of subprocess:
all nodes that didn't finish, will be terminated
To end subprocess:
1. any node can have flow to end-event
2. model can have an Exclusive-Gateway to terminate the subprocess at particular point
3 a signal or message can be sent by a script
Hierarchy#
↳ AdHocSubProcess
Table of contents#
Constructors#
Properties#
- id
- type
- subType
- behaviours
- isFlow
- lane
- name
- process
- def
- outbounds
- inbounds
- attachments
- attachedTo
- messageId
- signalId
- initiator
- assignee
- candidateGroups
- candidateUsers
- scripts
- childProcess
Accessors#
Methods#
- restored
- hasBehaviour
- getBehaviour
- addBehaviour
- validate
- doEvent
- setInput
- getInput
- getOutput
- enter
- loadDataObjects
- execute
- perform
- failed
- continue
- cancelEBG
- cancelBoundaryEvents
- getBoundaryEventItems
- resume
- init
- getOutbounds
- startBoundaryEvents
- describe
- start
- adHocTokenEnded
- end
- getAdHocNodes
- run
Constructors#
constructor#
• new AdHocSubProcess(id, process, type, def): AdHocSubProcess
Parameters#
| Name | Type |
|---|---|
id |
any |
process |
any |
type |
any |
def |
any |
Returns#
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:34
Properties#
id#
• id: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:13
type#
• type: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:14
subType#
• subType: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:15
behaviours#
• behaviours: Map\<any, any>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:17
isFlow#
• isFlow: boolean = false
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:18
lane#
• lane: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:19
name#
• name: string = ''
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:15
process#
• process: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:16
def#
• def: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:17
outbounds#
• outbounds: Flow[]
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:18
inbounds#
• inbounds: Flow[]
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:19
attachments#
• attachments: Node[]
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:20
attachedTo#
• attachedTo: Node
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:21
messageId#
• messageId: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:22
signalId#
• signalId: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:23
initiator#
• initiator: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:24
assignee#
• assignee: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:25
candidateGroups#
• candidateGroups: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:26
candidateUsers#
• candidateUsers: any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:27
scripts#
• scripts: Map\<any, any>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:28
childProcess#
• childProcess: Process
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:412
Accessors#
processId#
• get processId(): any
Returns#
any
Inherited from#
Node.processId
Defined in#
packages/bpmn-server/src/elements/Node.ts:29
loopDefinition#
• get loopDefinition(): any
Returns#
any
Inherited from#
Node.loopDefinition
Defined in#
packages/bpmn-server/src/elements/Node.ts:143
isCatching#
• get isCatching(): boolean
Returns#
boolean
Inherited from#
Node.isCatching
Defined in#
packages/bpmn-server/src/elements/Node.ts:147
dataObjectNames#
• get dataObjectNames(): string[]
The data objects connected to this element by a data association, either way: their names, as the diagram shows them (the reference's name, else the data object's or data store's, else its id).
Returns#
string[]
Inherited from#
Node.dataObjectNames
Defined in#
packages/bpmn-server/src/elements/Node.ts:161
exceptionsAsErrors#
• get exceptionsAsErrors(): boolean
camunda:exceptionsAsErrors="true": an exception of the task's work is raised as a BPMN error.
Returns#
boolean
Inherited from#
Node.exceptionsAsErrors
Defined in#
packages/bpmn-server/src/elements/Node.ts:296
requiresWait#
• get requiresWait(): boolean
Returns#
boolean
Overrides#
Node.requiresWait
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:413
canBeInvoked#
• get canBeInvoked(): boolean
Returns#
boolean
Overrides#
Node.canBeInvoked
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:414
Methods#
restored#
▸ restored(item): void
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
void
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:24
hasBehaviour#
▸ hasBehaviour(name): boolean
respond by providing behaviour attributes beyond item and node information ex: timer due , input/outupt , fields
Parameters#
| Name | Type |
|---|---|
name |
any |
Returns#
boolean
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:34
getBehaviour#
▸ getBehaviour(name): any
Parameters#
| Name | Type |
|---|---|
name |
any |
Returns#
any
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:38
addBehaviour#
▸ addBehaviour(nane, behavriour): void
Parameters#
| Name | Type |
|---|---|
nane |
any |
behavriour |
any |
Returns#
void
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Element.ts:41
validate#
▸ validate(item): Promise\<void>
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:48
doEvent#
▸ doEvent(item, event, newStatus?, eventDetails?): Promise\<any[]>
Parameters#
| Name | Type | Default value |
|---|---|---|
item |
Item |
undefined |
event |
EXECUTION_EVENT |
undefined |
newStatus |
ITEM_STATUS |
null |
eventDetails |
Object |
{} |
Returns#
Promise\<any[]>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:61
setInput#
▸ setInput(item, input): Promise\<void>
is Called after execution transform data using input rules todo
Parameters#
| Name | Type |
|---|---|
item |
Item |
input |
any |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:99
getInput#
▸ getInput(item, input): Promise\<{}>
Parameters#
| Name | Type |
|---|---|
item |
Item |
input |
any |
Returns#
Promise\<{}>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:109
getOutput#
▸ getOutput(item): Promise\<{}>
transform data using output rules todo
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<{}>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:123
enter#
▸ enter(item): void
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
void
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:127
loadDataObjects#
▸ loadDataObjects(item): Promise\<void>
Load the element's data objects into the instance data (appDelegate.loadDataObject), where they are saved
with the instance: data.client for a data object 'client'. They load each time the element runs.
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:178
execute#
▸ execute(item): Promise\<any>
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<any>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:194
perform#
▸ perform(item): Promise\<any>
Steps 4 and 5 of execute: the work (run), then on. Also a failed item's retry (Token.retry): the work again.
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<any>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:260
failed#
▸ failed(item, error): Promise\<NODE_ACTION>
The task's work threw. With exceptionsAsErrors and an error event that catches it (by the exception's code,
else its name; an error event with no code catches any), it is raised there as a BPMN error and the task
ends. Otherwise the item's status is error, with the message, saved so the instance shows it and the item
can be retried (engine.retry), and the exception is thrown to the caller as before.
Parameters#
| Name | Type |
|---|---|
item |
Item |
error |
any |
Returns#
Promise\<NODE_ACTION>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:305
continue#
▸ continue(item): Promise\<void>
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:334
cancelEBG#
▸ cancelEBG(item): Promise\<void>
Parameters#
| Name | Type |
|---|---|
item |
any |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:353
cancelBoundaryEvents#
▸ cancelBoundaryEvents(item): Promise\<void>
Parameters#
| Name | Type |
|---|---|
item |
any |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:361
getBoundaryEventItems#
▸ getBoundaryEventItems(item): any[]
Parameters#
| Name | Type |
|---|---|
item |
any |
Returns#
any[]
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:399
resume#
▸ resume(item): void
is called by the token after an execution resume for every active (in wait) item different than init, which is called for all items
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
void
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:486
init#
▸ init(item): void
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
void
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:489
getOutbounds#
▸ getOutbounds(item): Promise\<Item[]>
Parameters#
| Name | Type |
|---|---|
item |
Item |
Returns#
Promise\<Item[]>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:494
startBoundaryEvents#
▸ startBoundaryEvents(item, token): Promise\<void>
Parameters#
| Name | Type |
|---|---|
item |
any |
token |
any |
Returns#
Promise\<void>
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:527
describe#
▸ describe(): any[]
Returns#
any[]
Inherited from#
Defined in#
packages/bpmn-server/src/elements/Node.ts:546
start#
▸ start(item): Promise\<NODE_ACTION>
Offers every activity without an incoming flow at once, each on its own token. The ad hoc sub-process completes when all of them are done, when one reaches an end event, or when its completionCondition holds after one is done (adHocTokenEnded).
Parameters#
| Name | Type |
|---|---|
item |
any |
Returns#
Promise\<NODE_ACTION>
Overrides#
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:421
adHocTokenEnded#
▸ adHocTokenEnded(item, ended): Promise\<void>
An activity's token ended (not cancelled): complete the ad hoc sub-process when it is done.
Parameters#
| Name | Type |
|---|---|
item |
Item |
ended |
Token |
Returns#
Promise\<void>
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:442
end#
▸ end(item, cancel): Promise\<void>
Parameters#
| Name | Type |
|---|---|
item |
any |
cancel |
any |
Returns#
Promise\<void>
Overrides#
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:462
getAdHocNodes#
▸ getAdHocNodes(): any[]
Returns#
any[]
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:465
run#
▸ run(item): Promise\<any>
Parameters#
| Name | Type |
|---|---|
item |
any |
Returns#
Promise\<any>
Overrides#
Defined in#
packages/bpmn-server/src/elements/Tasks.ts:483