Download the PHP package ibrahimgunduz34/maria-bundle without Composer
On this page you can find all versions of the php package ibrahimgunduz34/maria-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package maria-bundle
MariaBundle
What is MariaBundle
Maria is a simple and flexible business rule engine that you can integrate easily into your Symfony applications through Bundle mechanism. It allows taking an action based on the rules when the input data matched. You can trigger Maria by a trigger event you defined. It checks the input argument which comes through the trigger event by the rules and invokes the action handler when matching occurred. Action handlers might be a class or a reference that points to a service definition in the dependency injection system. So you can communicate with other Symfony components easily through action handlers on Maria scenarios.
Installation
You can install Maria through composer
Add the bundle class to the bundle list by your Symfony version:
For Symfony 3.x users:
AppKernel.php
For Symfony >= 4 users:
config/bundles.php
Configuration Reference
See Also
- Iterable Matchers
- Arithmetic And Logic Operators
Example Usage
Define the following configuration into config/packages/maria.yaml
Create a handler class in order to take an action to give free shipment
Trigger Maria where you updated cart in the project.
Working In Asynchronous Way
Maria does not provide a way to invoke action handlers as asynchronous. However, you can make
action handlers asynchronous easily by using other third-parties like RabbitMqBundle
or
built-in Symfony components like Messenger
You can make your action handler asynchronous by
following the steps below:
Important Notice: We strongly recommend to follow the installation steps from rabbitmq-bundle
repository:
https://github.com/php-amqplib/RabbitMqBundle
Install RabbitMqBundle
Add the bundle class to bundle the bundle list in the project:
For Symfony 3.x users:
AppKernel.php
For Symfony >= 4 users:
config/bundles.php
Configure the RabbitMq bundle.
And.. say maria, use email_producer
as an action handler.
Enjoy!
TODO:
- Moving the scenario rules into different type of storage providers such as
in_memory
ordoctrine
- Validation improvement for configuration.
License:
You can access the license documentation here.
Credits:
Bundles structure, extension tests and the documentation partially inspired RabbitMqBundle
.
All versions of maria-bundle with dependencies
symfony/dependency-injection Version ^3.4|^4.0
symfony/framework-bundle Version ^3.4|^4.0
symfony/config Version ^3.4|^4.0
symfony/yaml Version ^3.4|^4.0
symfony/event-dispatcher Version ^3.4|^4.0
symfony/serializer Version ^3.4|^4.0
symfony/property-access Version ^3.4|^4.0