Creating and Running Workflows¶
from SpiffWorkflow.bpmn import BpmnWorkflow, BpmnEvent
from SpiffWorfkflow import TaskState
Parsing¶
Basic Parsing¶
from SpiffWorkflow.bpmn.parser import BpmnParser, BpmnValidator
Customized Parsing¶
from SpiffWorkflow.bpmn.parser import TaskParser, EventDefinitionParser
Examples¶
Script Engine¶
To modify the default execution environment¶
from SpiffWorkflow.bpmn.script_engine import TaskDataEnvironment
To control how the engine interacts with the workflow¶
from SpiffWorkflow.bpmn.script_engine import PythonScriptEngine
To implement custom exec/eval¶
from SpiffWorkflow.bpmn.script_engine import BasePythonScriptEngineEnvironment
Examples¶
Specs¶
Using a Spec¶
from SpiffWorkflow.bpmn.specs import <TaskSpec>
from SpiffWorkflow.bpmn.specs.event_definition import <EventDefinition>
Extending a Spec¶
from SpiffWorkflow.bpmn.specs import BpmnTaskSpec # Implements generic BPMN behavior
from SpiffWorkflow.bpmn.specs.mixins import <TaskSpecMixin> # Implements specific BPMN behavior
Implement a Datastore¶
from SpiffWorkflow.bpmn.spec import BpmnDataStoreSpecification
Examples¶
Serializer¶
Basic Usage¶
from SpiffWorkflow.bpmn.serializer import BpmnWorkflowSerializer
Custom Data¶
from SpiffWorkflow.bpmn.serializer import DefaultRegistry
Spec Customizations¶
from SpiffWorkflow.bpmn.serializer import DEFAULT_CONFIG
from SpiffWorkflow.bpmn.serializer.default import <TaskSpecConverter>
from SpiffWorkflow.bpmn.serializer.helpers import (
TaskSpecConverter,
EventDefinitionConverter,
BpmnDataSpecificationConverter,
)
Examples¶
DMN¶
from SpiffWorkflow.dmn.parser import BpmnDmnParser
from SpiffWorkflow.dmn.specs import BusinessRuleTaskMixin
from SpiffWorkflow.dmn.serializer import BaseBusinessRuleTaskConverter
Spiff¶
from SpiffWorkflow.spiff.parser import SpiffBpmnParser, VALIDATOR
from SpiffWorkflow.spiff.specs import <TaskSpec>
from SpiffWorkflow.spiff.serializer import DEFAULT_CONFIG
Camunda¶
from SpiffWorkflow.camunda.parser import CamundaParser
from SpiffWorkflow.camunda.specs import <TaskSpec>
from SpiffWorkfllw.camunda.serializer import DEFAULT_CONFIG