lamoda / tactician-queue
This package is abandoned and no longer maintained.
No replacement package was suggested.
Middleware for Tactician to publish commands to lamoda/queue library
1.1.0
2020-02-05 16:30 UTC
Requires
- php: ^7.1
- lamoda/queue-bundle: ^1.0 || ^2.0
- league/tactician: ^1.0
- symfony/serializer: ^3.4 || ^4.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.14
- phpunit/phpunit: ^7.5.15
Suggests
- lamoda/tactician-queue-bundle: For integration with Symfony
This package is auto-updated.
Last update: 2023-06-05 23:07:33 UTC
README
Library provides middleware that gives you ability to execute commands via Tactician in async or delayed way.
Installation
Composer
composer require lamoda/tactician-queue
Configuration
Before usage, please documentation for lamoda/queue-bundle
Bundle provides special middleware for tactician integration. This middleware add supports of async command execution, event with scheduling.
To enable this feature do the following:
- Add extra configuration:
lamoda_tactician_queue: tactician_id: tactician.commandbus # Command bus service id
- Add at least one strategy, that will convert commands into jobs:
services: # ... several_domain_commands_strategy: class: Lamoda\TacticianQueue\Middleware\QueueProducerStrategy\CommandsListToCommandJobStrategy arguments: - async_command_queue - async_command_exchange - [ My\AsyncCommandInterface, My\SecondCommand ] - 15 # optional delay tags: - { name: tactician_queue.job_producing_strategy }
- Add queue middleware to the list of tactician middlewares:
tactician: commandbus: default: middleware: - tactician.middleware.locking - lamoda_tactician_queue.middleware # Here it is - tactician.middleware.command_handler
- Now every time you call
<?php $commandBus->handle(new My\SecondCommand());
this command will be published into the queue.