Skip to content

Latest commit

 

History

History
95 lines (65 loc) · 2.63 KB

File metadata and controls

95 lines (65 loc) · 2.63 KB

Environment

Shared environment.

new Environment([options])

Arguments:

  • options: optional options
    • variables: optional variables object
    • output: optional output object
    • services: optional named services object, key is name of service and value must be a function
    • settings: optional settings
      • step: boolean, true makes activity runs to go forward in steps, defaults to false
      • enableDummyService: boolean, true returns dummy service function for service task
      • strict: boolean, strict mode defaults to false
      • batchSize: optional positive integer to control parallel loop batch size, defaults to 50
      • disableTrackState: optional boolean to disable tracking of element counters between recover and resume. State of idle elements are not returned when getting state. Recommended if running and recovering really large flows
    • scripts: Scripts instance
    • timers: Timers instance
    • expressions: expressions handler, defaults to Expressions instance
    • Logger: optional Logger defaults to a dummy logger that does basically nothing but supply the required log functions
    • extensions: extensions object

Properties:

  • options: initial options
  • extensions: extensions
  • output: output object
  • scripts: Scripts instance
  • expressions: expressions handler
  • services: services
  • settings: settings object
  • variables: getter for variables object
  • Logger: passed logger initiator

addService(name, serviceFn)

assignVariables(vars)

clone([overrideOptions])

getScript(scriptType, activity)

getServiceByName(name)

Get service by name

getState()

registerScript(activity)

resolveExpression(expression[, message = {}, expressionFnContext])

Resolve expression.

Arguments:

  • expression: expression string
  • message: optional object from where to resolve expressions, the environment instance is added by default
  • expressionFnContext: optional call context (this)

recover(state)

Strict mode

If enabled Boundary event with error event definition only catches thrown Bpmn Errors.

Logger

Logger factory.

Logger(scope)

Create new logger for scope.

Must return the following logging functions:

  • debug
  • error
  • warn

Example implementation for nodejs

import Debug from 'debug';

export function Logger(scope) {
  return {
    debug: Debug('bpmn-elements:' + scope),
    error: Debug('bpmn-elements:error:' + scope),
    warn: Debug('bpmn-elements:warn:' + scope),
  };
}