Download the PHP package amine-lejmi/messenger-maker without Composer
On this page you can find all versions of the php package amine-lejmi/messenger-maker. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package messenger-maker
AmineLejmi/MessengerMaker
The MessengerMaker is a Symfony bundle that simplifies the creation and registration of messages, distinctly separating queries, commands, and events.
Key Features:
- Automated Message Creation: Effortlessly creates and segregates queries, events, and commands.
- Input and Getter Generation: Automatically generates inputs and getter methods for messages.
- Bus Registration: Seamlessly registers messages in the specified message transport.
This bundle adds a layer on top of Symfony/Messenger, leveraging its configuration. For more details, please refer to the Symfony Messenger Component documentation.
Installation
Make sure Composer is installed globally, as explained in the installation chapter of the Composer documentation.
Applications that use Symfony Flex
Open a command console, enter your project directory and execute:
Applications that don't use Symfony Flex
Step 1: Download the Bundle
Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:
Step 2: Enable the Bundle
Then, enable the bundle by adding it to the list of registered bundles
in the config/bundles.php
file of your project:
After Installation
To use the provided interfaces for automatically registering messages in their corresponding buses, add the following lines to your config/services.yaml file:
Note : You can only add the interfaces you need in your project.
Usage
The bundle provides three different console commands for creating commands, queries, and events:
1- Creating a new command
Note: The <command-name>
must end with "Command".
2- Creating a new query
Note: The <query-name>
must end with "Query".
3- Creating a new event
Note: The <event-name>
must end with "Event".
How It Works
Executing the command
For each of these commands, the console will prompt you:
- to choose the corresponding transport if configured in
config/messenger.yaml
:
Note: After choosing a transport, the bundle will automatically
register the message in routing section inside
config/packages/messenger.yaml
- To add Any additional inputs required for the specific message
Follow the prompts to complete the creation of the command, query, or event.
Creation of the files
Depending on which command you executed, those folders will be created containing the corresponding files:
Note: : Handlers implement interfaces to allow them to be dispatched to the corresponding bus:
- query.bus
- event.bus
- command.bus
Examples
All versions of messenger-maker with dependencies
symfony/messenger Version >=5.0
symfony/maker-bundle Version >=1.40
symfony/console Version >=5.4
symfony/yaml Version >=5.4