Event Condition Action
ECA: Business Process Modeling in Drupal 9+
Richard Papp (@boromino) and Jürgen Haas (@jurgenhaas)
16 September 2021
Agenda
- Introduction
- Demo
- ECA Architecture
- Modeler
- Roadmap
- Discussion
Introduction
The Rules module for Drupal 8 is still in its alpha release stage … still needs significant work. (Excerpt description tr_rulez)
Previously
ECA Architecture
- ECA is a processor - Period. No more, no less
- An event subscriber listens to all Drupal events and triggers the processor
- This processes all available ECA models - all models for the current event
- The ECA models are config entities
Where does the config come from?
ECA doesn’t care!
What components does the processor support?
- Events: all Drupal events - you can add custom events
- Conditions: ECA provides a plugin manager
- Actions: all Drupal actions - you can add custom events
What is already included in ECA?
- ECA Core:
- Dozens of events for kernel, Drupal core, Drupal config, routing, forms, etc.
- Conditions for routing and forms
- Integration of all Drupal actions from Drupal core actions module
- Token support
- 2 Submodules:
What is included in ECA Content?
- Dozens of events for every content entity type and all bundles
- Conditions for content entities and their fields
- Plenty of actions for content entities and their fields
What is included in ECA User?
- Events for all relevant user activities
- Conditions for current user and user roles
- A few user actions, more to come
Chainable Actions
class_alias('Drupal\eca_content\Plugin\Action\FieldUpdateActionBase', 'Drupal\Core\Field\FieldUpdateActionBase');
Structure: Events
Structure: Conditions
Structure: Actions
Modeler
- A modeler is the user interface for ECA config entities.
- It can be integrated as a @EcaModeler plugin, that stores models as config entities. The plugin manager is provided by the ECA module.
- May be BPMN but not necessarily. Only the structure Event - Condition - Action matters.
- Two modelers are already integrated:
BPMN.iO
Integrated in Drupal UI. Everything is provided by BPMN.iO module.
Mehr Info
Structure: Modeler
Roadmap
Stable Release 1.0.0 by the end of 2021
Any help is highly appreciated
- Development
- ECA and plugins
- Optimization of the integrated BPMN.iO clients
- Tests
- Review and feedback
- Support (Issue queue and in chats)
- Documentation
- Translations
- Descriptions on the drupal.org project pages
- Spread the word