diff --git a/composer.json b/composer.json index 46e7369bc..6489f3737 100644 --- a/composer.json +++ b/composer.json @@ -11,8 +11,8 @@ "ext-mongodb": "^1.3", "ext-rdkafka": "^3.0.3", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7", "bunny/bunny": "^0.2.4|^0.3|^0.4", "php-amqplib/php-amqplib": "^2.7", "doctrine/dbal": "~2.5", @@ -38,7 +38,7 @@ "require-dev": { "phpunit/phpunit": "^5.5", "phpstan/phpstan": "^0.10", - "queue-interop/queue-spec": "0.6.x-dev", + "queue-interop/queue-spec": "^0.6", "symfony/browser-kit": "4.0.*", "symfony/config": "4.0.*", "symfony/process": "4.0.*", diff --git a/pkg/amqp-bunny/composer.json b/pkg/amqp-bunny/composer.json index 1097717c9..7bda3946e 100644 --- a/pkg/amqp-bunny/composer.json +++ b/pkg/amqp-bunny/composer.json @@ -7,8 +7,8 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7", "bunny/bunny": "^0.2.4|^0.3|^0.4", "enqueue/amqp-tools": "0.9.x-dev" }, @@ -16,7 +16,7 @@ "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/amqp-ext/composer.json b/pkg/amqp-ext/composer.json index 20c384e7f..5bedd525c 100644 --- a/pkg/amqp-ext/composer.json +++ b/pkg/amqp-ext/composer.json @@ -8,15 +8,15 @@ "require": { "php": "^7.1.3", "ext-amqp": "^1.9.3", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7", "enqueue/amqp-tools": "0.9.x-dev" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev", + "queue-interop/queue-spec": "^0.6", "empi89/php-amqp-stubs": "*@dev" }, "support": { diff --git a/pkg/amqp-lib/composer.json b/pkg/amqp-lib/composer.json index 470713c92..17b145a03 100644 --- a/pkg/amqp-lib/composer.json +++ b/pkg/amqp-lib/composer.json @@ -8,14 +8,14 @@ "require": { "php": "^7.1.3", "php-amqplib/php-amqplib": "^2.7", - "queue-interop/amqp-interop": "0.8.x-dev", + "queue-interop/amqp-interop": "^0.8", "enqueue/amqp-tools": "0.9.x-dev" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/amqp-tools/composer.json b/pkg/amqp-tools/composer.json index b250dbf8c..f0c70aa7f 100644 --- a/pkg/amqp-tools/composer.json +++ b/pkg/amqp-tools/composer.json @@ -7,8 +7,8 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev" + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7" }, "require-dev": { "phpunit/phpunit": "~5.4.0", diff --git a/pkg/async-command/composer.json b/pkg/async-command/composer.json index f56c0bf06..8e44fe39b 100644 --- a/pkg/async-command/composer.json +++ b/pkg/async-command/composer.json @@ -8,7 +8,7 @@ "require": { "php": ">=7.1", "enqueue/enqueue": "0.9.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "symfony/console": "^3.4|^4", "symfony/process": "^3.4|^4" }, diff --git a/pkg/async-event-dispatcher/DependencyInjection/AsyncEventsPass.php b/pkg/async-event-dispatcher/DependencyInjection/AsyncEventsPass.php index 702d23ac7..5371eb869 100644 --- a/pkg/async-event-dispatcher/DependencyInjection/AsyncEventsPass.php +++ b/pkg/async-event-dispatcher/DependencyInjection/AsyncEventsPass.php @@ -19,6 +19,8 @@ public function process(ContainerBuilder $container): void return; } + $defaultClient = $container->getParameter('enqueue.default_client'); + $registeredToEvent = []; foreach ($container->findTaggedServiceIds('kernel.event_listener') as $serviceId => $tagAttributes) { foreach ($tagAttributes as $tagAttribute) { @@ -44,7 +46,7 @@ public function process(ContainerBuilder $container): void $container->getDefinition('enqueue.events.async_processor') ->addTag('enqueue.processor', [ 'topic' => 'event.'.$event, - 'client' => 'default', + 'client' => $defaultClient, ]) ; @@ -78,7 +80,7 @@ public function process(ContainerBuilder $container): void $container->getDefinition('enqueue.events.async_processor') ->addTag('enqueue.processor', [ 'topicName' => 'event.'.$event, - 'client' => 'default', + 'client' => $defaultClient, ]) ; diff --git a/pkg/async-event-dispatcher/composer.json b/pkg/async-event-dispatcher/composer.json index 1d005f0ba..2c9d253e8 100644 --- a/pkg/async-event-dispatcher/composer.json +++ b/pkg/async-event-dispatcher/composer.json @@ -8,7 +8,7 @@ "require": { "php": "^7.1.3", "enqueue/enqueue": "0.9.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "symfony/event-dispatcher": "^3.4|^4" }, "require-dev": { diff --git a/pkg/dbal/composer.json b/pkg/dbal/composer.json index 5feb5dc99..a39b5c622 100644 --- a/pkg/dbal/composer.json +++ b/pkg/dbal/composer.json @@ -7,7 +7,7 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "doctrine/dbal": "~2.5", "ramsey/uuid": "^3" }, @@ -15,7 +15,7 @@ "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/enqueue-bundle/DependencyInjection/EnqueueExtension.php b/pkg/enqueue-bundle/DependencyInjection/EnqueueExtension.php index 043039fa9..b5ae10ab9 100644 --- a/pkg/enqueue-bundle/DependencyInjection/EnqueueExtension.php +++ b/pkg/enqueue-bundle/DependencyInjection/EnqueueExtension.php @@ -43,7 +43,7 @@ public function load(array $configs, ContainerBuilder $container): void } // or with name 'default' - if ('default' === $name) { + if (DiUtils::DEFAULT_CONFIG === $name) { $defaultName = $name; } } diff --git a/pkg/enqueue-bundle/composer.json b/pkg/enqueue-bundle/composer.json index efe06b027..4ca94b6ef 100644 --- a/pkg/enqueue-bundle/composer.json +++ b/pkg/enqueue-bundle/composer.json @@ -8,8 +8,8 @@ "require": { "php": "^7.1.3", "symfony/framework-bundle": "^3.4|^4", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7", "enqueue/enqueue": "0.9.x-dev", "enqueue/null": "0.9.x-dev" }, diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/AnalyzeRouteCollectionPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/AnalyzeRouteCollectionPass.php index 2613bcc3c..c541f4179 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/AnalyzeRouteCollectionPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/AnalyzeRouteCollectionPass.php @@ -3,15 +3,12 @@ namespace Enqueue\Symfony\Client\DependencyInjection; use Enqueue\Client\RouteCollection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; final class AnalyzeRouteCollectionPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -21,8 +18,9 @@ public function process(ContainerBuilder $container): void $names = $container->getParameter('enqueue.clients'); foreach ($names as $name) { - $this->name = $name; - $routeCollectionId = $this->format('route_collection'); + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); + + $routeCollectionId = $diUtils->format('route_collection'); if (false == $container->hasDefinition($routeCollectionId)) { throw new \LogicException(sprintf('Service "%s" not found', $routeCollectionId)); } @@ -36,11 +34,6 @@ public function process(ContainerBuilder $container): void } } - protected function getName(): string - { - return $this->name; - } - private function exclusiveCommandsCouldNotBeRunOnDefaultQueue(RouteCollection $collection): void { foreach ($collection->all() as $route) { diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildClientExtensionsPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildClientExtensionsPass.php index 3f97093d8..5ad45fd90 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildClientExtensionsPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildClientExtensionsPass.php @@ -2,16 +2,13 @@ namespace Enqueue\Symfony\Client\DependencyInjection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Reference; final class BuildClientExtensionsPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -19,10 +16,12 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.clients'); + $defaultName = $container->getParameter('enqueue.default_client'); foreach ($names as $name) { - $this->name = $name; - $extensionsId = $this->format('client_extensions'); + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); + + $extensionsId = $diUtils->format('client_extensions'); if (false == $container->hasDefinition($extensionsId)) { throw new \LogicException(sprintf('Service "%s" not found', $extensionsId)); } @@ -35,9 +34,9 @@ public function process(ContainerBuilder $container): void $groupByPriority = []; foreach ($tags as $serviceId => $tagAttributes) { foreach ($tagAttributes as $tagAttribute) { - $client = $tagAttribute['client'] ?? 'default'; + $client = $tagAttribute['client'] ?? $defaultName; - if ($client !== $this->name && 'all' !== $client) { + if ($client !== $name && 'all' !== $client) { continue; } @@ -61,9 +60,4 @@ public function process(ContainerBuilder $container): void )); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPass.php index 6cc9934b0..cee1343f5 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPass.php @@ -5,15 +5,12 @@ use Enqueue\Client\CommandSubscriberInterface; use Enqueue\Client\Route; use Enqueue\Client\RouteCollection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; final class BuildCommandSubscriberRoutesPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -21,10 +18,11 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.clients'); + $defaultName = $container->getParameter('enqueue.default_client'); foreach ($names as $name) { - $this->name = $name; - $routeCollectionId = sprintf('enqueue.client.%s.route_collection', $this->name); + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); + $routeCollectionId = $diUtils->format('route_collection'); if (false == $container->hasDefinition($routeCollectionId)) { throw new \LogicException(sprintf('Service "%s" not found', $routeCollectionId)); } @@ -47,9 +45,9 @@ public function process(ContainerBuilder $container): void } foreach ($tagAttributes as $tagAttribute) { - $client = $tagAttribute['client'] ?? 'default'; + $client = $tagAttribute['client'] ?? $defaultName; - if ($client !== $this->name && 'all' !== $client) { + if ($client !== $name && 'all' !== $client) { continue; } @@ -103,9 +101,4 @@ public function process(ContainerBuilder $container): void )); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPass.php index d05f6f09e..c1f1ce970 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPass.php @@ -2,16 +2,13 @@ namespace Enqueue\Symfony\Client\DependencyInjection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Reference; final class BuildConsumptionExtensionsPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -19,11 +16,12 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.clients'); + $defaultName = $container->getParameter('enqueue.default_client'); foreach ($names as $name) { - $this->name = $name; + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); - $extensionsId = $this->format('consumption_extensions'); + $extensionsId = $diUtils->format('consumption_extensions'); if (false == $container->hasDefinition($extensionsId)) { throw new \LogicException(sprintf('Service "%s" not found', $extensionsId)); } @@ -36,9 +34,9 @@ public function process(ContainerBuilder $container): void $groupByPriority = []; foreach ($tags as $serviceId => $tagAttributes) { foreach ($tagAttributes as $tagAttribute) { - $client = $tagAttribute['client'] ?? 'default'; + $client = $tagAttribute['client'] ?? $defaultName; - if ($client !== $this->name && 'all' !== $client) { + if ($client !== $name && 'all' !== $client) { continue; } @@ -62,9 +60,4 @@ public function process(ContainerBuilder $container): void )); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRegistryPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRegistryPass.php index cdf40a832..3759dd209 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRegistryPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRegistryPass.php @@ -3,6 +3,7 @@ namespace Enqueue\Symfony\Client\DependencyInjection; use Enqueue\Client\RouteCollection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\Compiler\ServiceLocatorTagPass; use Symfony\Component\DependencyInjection\ContainerBuilder; @@ -10,10 +11,6 @@ final class BuildProcessorRegistryPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -23,19 +20,19 @@ public function process(ContainerBuilder $container): void $names = $container->getParameter('enqueue.clients'); foreach ($names as $name) { - $this->name = $name; + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); - $processorRegistryId = $this->format('processor_registry'); + $processorRegistryId = $diUtils->format('processor_registry'); if (false == $container->hasDefinition($processorRegistryId)) { throw new \LogicException(sprintf('Service "%s" not found', $processorRegistryId)); } - $routeCollectionId = $this->format('route_collection'); + $routeCollectionId = $diUtils->format('route_collection'); if (false == $container->hasDefinition($routeCollectionId)) { throw new \LogicException(sprintf('Service "%s" not found', $routeCollectionId)); } - $routerProcessorId = $this->format('router_processor'); + $routerProcessorId = $diUtils->format('router_processor'); if (false == $container->hasDefinition($routerProcessorId)) { throw new \LogicException(sprintf('Service "%s" not found', $routerProcessorId)); } @@ -51,15 +48,10 @@ public function process(ContainerBuilder $container): void $map[$route->getProcessor()] = new Reference($processorServiceId); } - $map[$this->parameter('router_processor')] = new Reference($routerProcessorId); + $map[$diUtils->parameter('router_processor')] = new Reference($routerProcessorId); $registry = $container->getDefinition($processorRegistryId); $registry->setArgument(0, ServiceLocatorTagPass::register($container, $map, $processorRegistryId)); } } - - private function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRoutesPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRoutesPass.php index c89f37427..e88cb1f83 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRoutesPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildProcessorRoutesPass.php @@ -4,15 +4,12 @@ use Enqueue\Client\Route; use Enqueue\Client\RouteCollection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; final class BuildProcessorRoutesPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -20,10 +17,11 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.clients'); + $defaultName = $container->getParameter('enqueue.default_client'); foreach ($names as $name) { - $this->name = $name; - $routeCollectionId = $this->format('route_collection'); + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); + $routeCollectionId = $diUtils->format('route_collection'); if (false == $container->hasDefinition($routeCollectionId)) { throw new \LogicException(sprintf('Service "%s" not found', $routeCollectionId)); } @@ -32,9 +30,9 @@ public function process(ContainerBuilder $container): void $routeCollection = new RouteCollection([]); foreach ($container->findTaggedServiceIds($tag) as $serviceId => $tagAttributes) { foreach ($tagAttributes as $tagAttribute) { - $client = $tagAttribute['client'] ?? 'default'; + $client = $tagAttribute['client'] ?? $defaultName; - if ($client !== $this->name && 'all' !== $client) { + if ($client !== $name && 'all' !== $client) { continue; } @@ -76,9 +74,4 @@ public function process(ContainerBuilder $container): void )); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPass.php b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPass.php index f1b9ecc1c..3414d4918 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPass.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPass.php @@ -5,15 +5,12 @@ use Enqueue\Client\Route; use Enqueue\Client\RouteCollection; use Enqueue\Client\TopicSubscriberInterface; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; final class BuildTopicSubscriberRoutesPass implements CompilerPassInterface { - use FormatClientNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.clients')) { @@ -21,10 +18,11 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.clients'); + $defaultName = $container->getParameter('enqueue.default_client'); foreach ($names as $name) { - $this->name = $name; - $routeCollectionId = $this->format('route_collection'); + $diUtils = DiUtils::create(ClientFactory::MODULE, $name); + $routeCollectionId = $diUtils->format('route_collection'); if (false == $container->hasDefinition($routeCollectionId)) { throw new \LogicException(sprintf('Service "%s" not found', $routeCollectionId)); } @@ -47,9 +45,9 @@ public function process(ContainerBuilder $container): void } foreach ($tagAttributes as $tagAttribute) { - $client = $tagAttribute['client'] ?? 'default'; + $client = $tagAttribute['client'] ?? $defaultName; - if ($client !== $this->name && 'all' !== $client) { + if ($client !== $name && 'all' !== $client) { continue; } @@ -99,9 +97,4 @@ public function process(ContainerBuilder $container): void )); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/ClientFactory.php b/pkg/enqueue/Symfony/Client/DependencyInjection/ClientFactory.php index 47d8e8ee5..0acf659f7 100644 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/ClientFactory.php +++ b/pkg/enqueue/Symfony/Client/DependencyInjection/ClientFactory.php @@ -22,6 +22,8 @@ use Enqueue\Rpc\RpcFactory; use Enqueue\Symfony\Client\FlushSpoolProducerListener; use Enqueue\Symfony\ContainerProcessorRegistry; +use Enqueue\Symfony\DependencyInjection\TransportFactory; +use Enqueue\Symfony\DiUtils; use Interop\Queue\Context; use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition; use Symfony\Component\Config\Definition\Builder\NodeDefinition; @@ -34,17 +36,17 @@ */ final class ClientFactory { - use FormatClientNameTrait; + public const MODULE = 'client'; /** - * @var string + * @var bool */ - private $name; + private $default; /** - * @var bool + * @var DiUtils */ - private $default; + private $diUtils; public function __construct(string $name, bool $default = false) { @@ -52,8 +54,8 @@ public function __construct(string $name, bool $default = false) throw new \InvalidArgumentException('The name could not be empty.'); } - $this->name = $name; $this->default = $default; + $this->diUtils = DiUtils::create(self::MODULE, $name); } public static function getConfiguration(bool $debug, string $name = 'client'): NodeDefinition @@ -77,21 +79,21 @@ public static function getConfiguration(bool $debug, string $name = 'client'): N public function build(ContainerBuilder $container, array $config): void { - $container->register($this->format('context'), Context::class) - ->setFactory([$this->reference('driver'), 'getContext']) + $container->register($this->diUtils->format('context'), Context::class) + ->setFactory([$this->diUtils->reference('driver'), 'getContext']) ; - $container->register($this->format('driver_factory'), DriverFactory::class) - ->addArgument($this->reference('config')) - ->addArgument($this->reference('route_collection')) + $container->register($this->diUtils->format('driver_factory'), DriverFactory::class) + ->addArgument($this->diUtils->reference('config')) + ->addArgument($this->diUtils->reference('route_collection')) ; $routerProcessor = empty($config['router_processor']) - ? $this->format('router_processor') + ? $this->diUtils->format('router_processor') : $config['router_processor'] ; - $container->register($this->format('config'), Config::class) + $container->register($this->diUtils->format('config'), Config::class) ->setArguments([ $config['prefix'], $config['app_name'], @@ -103,86 +105,86 @@ public function build(ContainerBuilder $container, array $config): void $config['transport'], ]); - $container->setParameter($this->format('router_processor'), $routerProcessor); - $container->setParameter($this->format('router_queue_name'), $config['router_queue']); - $container->setParameter($this->format('default_queue_name'), $config['default_processor_queue']); + $container->setParameter($this->diUtils->format('router_processor'), $routerProcessor); + $container->setParameter($this->diUtils->format('router_queue_name'), $config['router_queue']); + $container->setParameter($this->diUtils->format('default_queue_name'), $config['default_processor_queue']); - $container->register($this->format('route_collection'), RouteCollection::class) + $container->register($this->diUtils->format('route_collection'), RouteCollection::class) ->addArgument([]) ->setFactory([RouteCollection::class, 'fromArray']) ; - $container->register($this->format('producer'), Producer::class) + $container->register($this->diUtils->format('producer'), Producer::class) ->setPublic(true) - ->addArgument($this->reference('driver')) - ->addArgument($this->reference('rpc_factory')) - ->addArgument($this->reference('client_extensions')) + ->addArgument($this->diUtils->reference('driver')) + ->addArgument($this->diUtils->reference('rpc_factory')) + ->addArgument($this->diUtils->reference('client_extensions')) ; - $container->register($this->format('spool_producer'), SpoolProducer::class) - ->addArgument($this->reference('producer')) + $container->register($this->diUtils->format('spool_producer'), SpoolProducer::class) + ->addArgument($this->diUtils->reference('producer')) ; - $container->register($this->format('client_extensions'), ChainExtension::class) + $container->register($this->diUtils->format('client_extensions'), ChainExtension::class) ->addArgument([]) ; - $container->register($this->format('rpc_factory'), RpcFactory::class) - ->addArgument($this->reference('context')) + $container->register($this->diUtils->format('rpc_factory'), RpcFactory::class) + ->addArgument($this->diUtils->reference('context')) ; - $container->register($this->format('router_processor'), RouterProcessor::class) - ->addArgument($this->reference('driver')) + $container->register($this->diUtils->format('router_processor'), RouterProcessor::class) + ->addArgument($this->diUtils->reference('driver')) ; - $container->register($this->format('processor_registry'), ContainerProcessorRegistry::class); + $container->register($this->diUtils->format('processor_registry'), ContainerProcessorRegistry::class); - $container->register($this->format('delegate_processor'), DelegateProcessor::class) - ->addArgument($this->reference('processor_registry')) + $container->register($this->diUtils->format('delegate_processor'), DelegateProcessor::class) + ->addArgument($this->diUtils->reference('processor_registry')) ; - $container->register($this->format('set_router_properties_extension'), SetRouterPropertiesExtension::class) - ->addArgument($this->reference('driver')) - ->addTag('enqueue.consumption_extension', ['priority' => 100, 'client' => $this->name]) + $container->register($this->diUtils->format('set_router_properties_extension'), SetRouterPropertiesExtension::class) + ->addArgument($this->diUtils->reference('driver')) + ->addTag('enqueue.consumption_extension', ['priority' => 100, 'client' => $this->diUtils->getConfigName()]) ; - $container->register($this->format('queue_consumer'), QueueConsumer::class) - ->addArgument($this->reference('context')) - ->addArgument($this->reference('consumption_extensions')) + $container->register($this->diUtils->format('queue_consumer'), QueueConsumer::class) + ->addArgument($this->diUtils->reference('context')) + ->addArgument($this->diUtils->reference('consumption_extensions')) ->addArgument([]) - ->addArgument($this->reference('logger', ContainerInterface::NULL_ON_INVALID_REFERENCE)) + ->addArgument($this->diUtils->reference('logger', ContainerInterface::NULL_ON_INVALID_REFERENCE)) ->addArgument($config['consumption']['receive_timeout']) ; - $container->register($this->format('consumption_extensions'), ConsumptionChainExtension::class) + $container->register($this->diUtils->format('consumption_extensions'), ConsumptionChainExtension::class) ->addArgument([]) ; - $container->register($this->format('flush_spool_producer_extension'), FlushSpoolProducerExtension::class) - ->addArgument($this->reference('spool_producer')) - ->addTag('enqueue.consumption.extension', ['priority' => -100, 'client' => $this->name]) + $container->register($this->diUtils->format('flush_spool_producer_extension'), FlushSpoolProducerExtension::class) + ->addArgument($this->diUtils->reference('spool_producer')) + ->addTag('enqueue.consumption.extension', ['priority' => -100, 'client' => $this->diUtils->getConfigName()]) ; - $container->register($this->format('exclusive_command_extension'), ExclusiveCommandExtension::class) - ->addArgument($this->reference('driver')) - ->addTag('enqueue.consumption.extension', ['priority' => 100, 'client' => $this->name]) + $container->register($this->diUtils->format('exclusive_command_extension'), ExclusiveCommandExtension::class) + ->addArgument($this->diUtils->reference('driver')) + ->addTag('enqueue.consumption.extension', ['priority' => 100, 'client' => $this->diUtils->getConfigName()]) ; if ($config['traceable_producer']) { - $container->register($this->format('traceable_producer'), TraceableProducer::class) - ->setDecoratedService($this->format('producer')) - ->addArgument($this->reference('traceable_producer.inner')) + $container->register($this->diUtils->format('traceable_producer'), TraceableProducer::class) + ->setDecoratedService($this->diUtils->format('producer')) + ->addArgument($this->diUtils->reference('traceable_producer.inner')) ; } if ($config['redelivered_delay_time']) { - $container->register($this->format('delay_redelivered_message_extension'), DelayRedeliveredMessageExtension::class) - ->addArgument($this->reference('driver')) + $container->register($this->diUtils->format('delay_redelivered_message_extension'), DelayRedeliveredMessageExtension::class) + ->addArgument($this->diUtils->reference('driver')) ->addArgument($config['redelivered_delay_time']) - ->addTag('enqueue.consumption_extension', ['priority' => 10, 'client' => $this->name]) + ->addTag('enqueue.consumption_extension', ['priority' => 10, 'client' => $this->diUtils->getConfigName()]) ; - $container->getDefinition($this->format('delay_redelivered_message_extension')) + $container->getDefinition($this->diUtils->format('delay_redelivered_message_extension')) ->replaceArgument(1, $config['redelivered_delay_time']) ; } @@ -191,24 +193,29 @@ public function build(ContainerBuilder $container, array $config): void if ($container->hasDefinition($locatorId)) { $locator = $container->getDefinition($locatorId); $locator->replaceArgument(0, array_replace($locator->getArgument(0), [ - $this->format('queue_consumer') => $this->reference('queue_consumer'), - $this->format('driver') => $this->reference('driver'), - $this->format('delegate_processor') => $this->reference('delegate_processor'), - $this->format('producer') => $this->reference('producer'), + $this->diUtils->format('queue_consumer') => $this->diUtils->reference('queue_consumer'), + $this->diUtils->format('driver') => $this->diUtils->reference('driver'), + $this->diUtils->format('delegate_processor') => $this->diUtils->reference('delegate_processor'), + $this->diUtils->format('producer') => $this->diUtils->reference('producer'), ])); } if ($this->default) { - $container->setAlias(ProducerInterface::class, $this->format('producer')); - $container->setAlias(SpoolProducer::class, $this->format('spool_producer')); + $container->setAlias(ProducerInterface::class, $this->diUtils->format('producer')); + $container->setAlias(SpoolProducer::class, $this->diUtils->format('spool_producer')); + + if (DiUtils::DEFAULT_CONFIG !== $this->diUtils->getConfigName()) { + $container->setAlias($this->diUtils->formatDefault('producer'), $this->diUtils->format('producer')); + $container->setAlias($this->diUtils->formatDefault('spool_producer'), $this->diUtils->format('spool_producer')); + } } } public function createDriver(ContainerBuilder $container, array $config): string { - $factoryId = sprintf('enqueue.transport.%s.connection_factory', $this->getName()); - $driverId = sprintf('enqueue.client.%s.driver', $this->getName()); - $driverFactoryId = sprintf('enqueue.client.%s.driver_factory', $this->getName()); + $factoryId = DiUtils::create(TransportFactory::MODULE, $this->diUtils->getConfigName())->format('connection_factory'); + $driverId = $this->diUtils->format('driver'); + $driverFactoryId = $this->diUtils->format('driver_factory'); $container->register($driverId, DriverInterface::class) ->setFactory([new Reference($driverFactoryId), 'create']) @@ -217,19 +224,22 @@ public function createDriver(ContainerBuilder $container, array $config): string ->addArgument($config) ; + if ($this->default) { + $container->setAlias(DriverInterface::class, $driverId); + + if (DiUtils::DEFAULT_CONFIG !== $this->diUtils->getConfigName()) { + $container->setAlias($this->diUtils->formatDefault('driver'), $driverId); + } + } + return $driverId; } public function createFlushSpoolProducerListener(ContainerBuilder $container): void { - $container->register($this->format('flush_spool_producer_listener'), FlushSpoolProducerListener::class) - ->addArgument($this->reference('spool_producer')) + $container->register($this->diUtils->format('flush_spool_producer_listener'), FlushSpoolProducerListener::class) + ->addArgument($this->diUtils->reference('spool_producer')) ->addTag('kernel.event_subscriber') ; } - - public function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/Client/DependencyInjection/FormatClientNameTrait.php b/pkg/enqueue/Symfony/Client/DependencyInjection/FormatClientNameTrait.php deleted file mode 100644 index 41dace8bb..000000000 --- a/pkg/enqueue/Symfony/Client/DependencyInjection/FormatClientNameTrait.php +++ /dev/null @@ -1,30 +0,0 @@ -<?php - -namespace Enqueue\Symfony\Client\DependencyInjection; - -use Symfony\Component\DependencyInjection\ContainerInterface; -use Symfony\Component\DependencyInjection\Reference; - -trait FormatClientNameTrait -{ - abstract protected function getName(): string; - - private function reference(string $serviceName, $invalidBehavior = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE): Reference - { - return new Reference($this->format($serviceName), $invalidBehavior); - } - - private function parameter(string $serviceName): string - { - $fullName = $this->format($serviceName); - - return "%$fullName%"; - } - - private function format(string $serviceName): string - { - $pattern = 'enqueue.client.%s.'.$serviceName; - - return sprintf($pattern, $this->getName()); - } -} diff --git a/pkg/enqueue/Symfony/DependencyInjection/BuildConsumptionExtensionsPass.php b/pkg/enqueue/Symfony/DependencyInjection/BuildConsumptionExtensionsPass.php index 857ddf278..352682b19 100644 --- a/pkg/enqueue/Symfony/DependencyInjection/BuildConsumptionExtensionsPass.php +++ b/pkg/enqueue/Symfony/DependencyInjection/BuildConsumptionExtensionsPass.php @@ -2,16 +2,13 @@ namespace Enqueue\Symfony\DependencyInjection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Reference; final class BuildConsumptionExtensionsPass implements CompilerPassInterface { - use FormatTransportNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.transports')) { @@ -19,11 +16,12 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.transports'); + $defaultName = $container->getParameter('enqueue.default_transport'); foreach ($names as $name) { - $this->name = $name; + $diUtils = DiUtils::create(TransportFactory::MODULE, $name); - $extensionsId = $this->format('consumption_extensions'); + $extensionsId = $diUtils->format('consumption_extensions'); if (false == $container->hasDefinition($extensionsId)) { throw new \LogicException(sprintf('Service "%s" not found', $extensionsId)); } @@ -33,9 +31,9 @@ public function process(ContainerBuilder $container): void $groupByPriority = []; foreach ($tags as $serviceId => $tagAttributes) { foreach ($tagAttributes as $tagAttribute) { - $transport = $tagAttribute['transport'] ?? 'default'; + $transport = $tagAttribute['transport'] ?? $defaultName; - if ($transport !== $this->name && 'all' !== $transport) { + if ($transport !== $name && 'all' !== $transport) { continue; } @@ -59,9 +57,4 @@ public function process(ContainerBuilder $container): void )); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/DependencyInjection/BuildProcessorRegistryPass.php b/pkg/enqueue/Symfony/DependencyInjection/BuildProcessorRegistryPass.php index c9b7f8b3a..cc6e04270 100644 --- a/pkg/enqueue/Symfony/DependencyInjection/BuildProcessorRegistryPass.php +++ b/pkg/enqueue/Symfony/DependencyInjection/BuildProcessorRegistryPass.php @@ -2,6 +2,7 @@ namespace Enqueue\Symfony\DependencyInjection; +use Enqueue\Symfony\DiUtils; use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; use Symfony\Component\DependencyInjection\Compiler\ServiceLocatorTagPass; use Symfony\Component\DependencyInjection\ContainerBuilder; @@ -9,10 +10,6 @@ final class BuildProcessorRegistryPass implements CompilerPassInterface { - use FormatTransportNameTrait; - - protected $name; - public function process(ContainerBuilder $container): void { if (false == $container->hasParameter('enqueue.transports')) { @@ -20,11 +17,12 @@ public function process(ContainerBuilder $container): void } $names = $container->getParameter('enqueue.transports'); + $defaultName = $container->getParameter('enqueue.default_transport'); foreach ($names as $name) { - $this->name = $name; + $diUtils = DiUtils::create(TransportFactory::MODULE, $name); - $processorRegistryId = $this->format('processor_registry'); + $processorRegistryId = $diUtils->format('processor_registry'); if (false == $container->hasDefinition($processorRegistryId)) { throw new \LogicException(sprintf('Service "%s" not found', $processorRegistryId)); } @@ -33,9 +31,9 @@ public function process(ContainerBuilder $container): void $map = []; foreach ($container->findTaggedServiceIds($tag) as $serviceId => $tagAttributes) { foreach ($tagAttributes as $tagAttribute) { - $transport = $tagAttribute['transport'] ?? 'default'; + $transport = $tagAttribute['transport'] ?? $defaultName; - if ($transport !== $this->name && 'all' !== $transport) { + if ($transport !== $name && 'all' !== $transport) { continue; } @@ -49,9 +47,4 @@ public function process(ContainerBuilder $container): void $registry->setArgument(0, ServiceLocatorTagPass::register($container, $map, $processorRegistryId)); } } - - protected function getName(): string - { - return $this->name; - } } diff --git a/pkg/enqueue/Symfony/DependencyInjection/FormatTransportNameTrait.php b/pkg/enqueue/Symfony/DependencyInjection/FormatTransportNameTrait.php deleted file mode 100644 index dd0fdd7bc..000000000 --- a/pkg/enqueue/Symfony/DependencyInjection/FormatTransportNameTrait.php +++ /dev/null @@ -1,30 +0,0 @@ -<?php - -namespace Enqueue\Symfony\DependencyInjection; - -use Symfony\Component\DependencyInjection\ContainerInterface; -use Symfony\Component\DependencyInjection\Reference; - -trait FormatTransportNameTrait -{ - abstract protected function getName(): string; - - private function reference(string $serviceName, $invalidBehavior = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE): Reference - { - return new Reference($this->format($serviceName), $invalidBehavior); - } - - private function parameter(string $serviceName): string - { - $fullName = $this->format($serviceName); - - return "%$fullName%"; - } - - private function format(string $serviceName): string - { - $pattern = 'enqueue.transport.%s.'.$serviceName; - - return sprintf($pattern, $this->getName()); - } -} diff --git a/pkg/enqueue/Symfony/DependencyInjection/TransportFactory.php b/pkg/enqueue/Symfony/DependencyInjection/TransportFactory.php index eb9454b3a..5cc1a6507 100644 --- a/pkg/enqueue/Symfony/DependencyInjection/TransportFactory.php +++ b/pkg/enqueue/Symfony/DependencyInjection/TransportFactory.php @@ -12,6 +12,7 @@ use Enqueue\Rpc\RpcClient; use Enqueue\Rpc\RpcFactory; use Enqueue\Symfony\ContainerProcessorRegistry; +use Enqueue\Symfony\DiUtils; use Interop\Queue\ConnectionFactory; use Interop\Queue\Context; use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition; @@ -25,17 +26,17 @@ */ final class TransportFactory { - use FormatTransportNameTrait; + public const MODULE = 'transport'; /** - * @var string + * @var bool */ - private $name; + private $default; /** - * @var bool + * @var DiUtils */ - private $default; + private $diUtils; public function __construct(string $name, bool $default = false) { @@ -43,8 +44,8 @@ public function __construct(string $name, bool $default = false) throw new \InvalidArgumentException('The name could not be empty.'); } - $this->name = $name; $this->default = $default; + $this->diUtils = DiUtils::create(self::MODULE, $name); } public static function getConfiguration(string $name = 'transport'): NodeDefinition @@ -123,16 +124,11 @@ public static function getQueueConsumerConfiguration(string $name = 'consumption return $builder; } - public function getName(): string - { - return $this->name; - } - public function buildConnectionFactory(ContainerBuilder $container, array $config): void { - $factoryId = $this->format('connection_factory'); + $factoryId = $this->diUtils->format('connection_factory'); - $factoryFactoryId = $this->format('connection_factory_factory'); + $factoryFactoryId = $this->diUtils->format('connection_factory_factory'); $container->register($factoryFactoryId, $config['factory_class'] ?? ConnectionFactoryFactory::class); $factoryFactoryService = new Reference( @@ -156,16 +152,20 @@ public function buildConnectionFactory(ContainerBuilder $container, array $confi } if ($this->default) { - $container->setAlias(ConnectionFactory::class, $this->format('connection_factory')); + $container->setAlias(ConnectionFactory::class, $factoryId); + + if (DiUtils::DEFAULT_CONFIG !== $this->diUtils->getConfigName()) { + $container->setAlias($this->diUtils->formatDefault('connection_factory'), $factoryId); + } } } public function buildContext(ContainerBuilder $container, array $config): void { - $factoryId = $this->format('connection_factory'); + $factoryId = $this->diUtils->format('connection_factory'); $this->assertServiceExists($container, $factoryId); - $contextId = $this->format('context'); + $contextId = $this->diUtils->format('context'); $container->register($contextId, Context::class) ->setFactory([new Reference($factoryId), 'createContext']) @@ -174,60 +174,72 @@ public function buildContext(ContainerBuilder $container, array $config): void $this->addServiceToLocator($container, 'context'); if ($this->default) { - $container->setAlias(Context::class, $this->format('context')); + $container->setAlias(Context::class, $contextId); + + if (DiUtils::DEFAULT_CONFIG !== $this->diUtils->getConfigName()) { + $container->setAlias($this->diUtils->formatDefault('context'), $contextId); + } } } public function buildQueueConsumer(ContainerBuilder $container, array $config): void { - $contextId = $this->format('context'); + $contextId = $this->diUtils->format('context'); $this->assertServiceExists($container, $contextId); - $container->setParameter($this->format('receive_timeout'), $config['receive_timeout'] ?? 10000); + $container->setParameter($this->diUtils->format('receive_timeout'), $config['receive_timeout'] ?? 10000); - $logExtensionId = $this->format('log_extension'); + $logExtensionId = $this->diUtils->format('log_extension'); $container->register($logExtensionId, LogExtension::class) - ->addTag('enqueue.transport.consumption_extension', ['transport' => $this->name, 'priority' => -100]) + ->addTag('enqueue.transport.consumption_extension', ['transport' => $this->diUtils->getConfigName(), 'priority' => -100]) ; - $container->register($this->format('consumption_extensions'), ChainExtension::class) + $container->register($this->diUtils->format('consumption_extensions'), ChainExtension::class) ->addArgument([]) ; - $container->register($this->format('queue_consumer'), QueueConsumer::class) + $container->register($this->diUtils->format('queue_consumer'), QueueConsumer::class) ->addArgument(new Reference($contextId)) - ->addArgument(new Reference($this->format('consumption_extensions'))) + ->addArgument(new Reference($this->diUtils->format('consumption_extensions'))) ->addArgument([]) ->addArgument(new Reference('logger', ContainerInterface::NULL_ON_INVALID_REFERENCE)) - ->addArgument($this->parameter('receive_timeout')) + ->addArgument($this->diUtils->parameter('receive_timeout')) ; - $container->register($this->format('processor_registry'), ContainerProcessorRegistry::class); + $container->register($this->diUtils->format('processor_registry'), ContainerProcessorRegistry::class); $this->addServiceToLocator($container, 'queue_consumer'); $this->addServiceToLocator($container, 'processor_registry'); if ($this->default) { - $container->setAlias(QueueConsumerInterface::class, $this->format('queue_consumer')); + $container->setAlias(QueueConsumerInterface::class, $this->diUtils->format('queue_consumer')); + + if (DiUtils::DEFAULT_CONFIG !== $this->diUtils->getConfigName()) { + $container->setAlias($this->diUtils->formatDefault('queue_consumer'), $this->diUtils->format('queue_consumer')); + } } } public function buildRpcClient(ContainerBuilder $container, array $config): void { - $contextId = $this->format('context'); + $contextId = $this->diUtils->format('context'); $this->assertServiceExists($container, $contextId); - $container->register($this->format('rpc_factory'), RpcFactory::class) + $container->register($this->diUtils->format('rpc_factory'), RpcFactory::class) ->addArgument(new Reference($contextId)) ; - $container->register($this->format('rpc_client'), RpcClient::class) + $container->register($this->diUtils->format('rpc_client'), RpcClient::class) ->addArgument(new Reference($contextId)) - ->addArgument(new Reference($this->format('rpc_factory'))) + ->addArgument(new Reference($this->diUtils->format('rpc_factory'))) ; if ($this->default) { - $container->setAlias(RpcClient::class, $this->format('rpc_client')); + $container->setAlias(RpcClient::class, $this->diUtils->format('rpc_client')); + + if (DiUtils::DEFAULT_CONFIG !== $this->diUtils->getConfigName()) { + $container->setAlias($this->diUtils->formatDefault('rpc_client'), $this->diUtils->format('rpc_client')); + } } } @@ -246,7 +258,7 @@ private function addServiceToLocator(ContainerBuilder $container, string $servic $locator = $container->getDefinition($locatorId); $map = $locator->getArgument(0); - $map[$this->format($serviceName)] = $this->reference($serviceName); + $map[$this->diUtils->format($serviceName)] = $this->diUtils->reference($serviceName); $locator->replaceArgument(0, $map); } diff --git a/pkg/enqueue/Symfony/DiUtils.php b/pkg/enqueue/Symfony/DiUtils.php index 678104312..335ff04b9 100644 --- a/pkg/enqueue/Symfony/DiUtils.php +++ b/pkg/enqueue/Symfony/DiUtils.php @@ -7,6 +7,8 @@ class DiUtils { + public const DEFAULT_CONFIG = 'default'; + /** * @var string */ @@ -43,6 +45,11 @@ public function reference(string $serviceName, $invalidBehavior = ContainerInter return new Reference($this->format($serviceName), $invalidBehavior); } + public function referenceDefault(string $serviceName, $invalidBehavior = ContainerInterface::EXCEPTION_ON_INVALID_REFERENCE): Reference + { + return new Reference($this->formatDefault($serviceName), $invalidBehavior); + } + public function parameter(string $serviceName): string { $fullName = $this->format($serviceName); @@ -50,8 +57,25 @@ public function parameter(string $serviceName): string return "%$fullName%"; } + public function parameterDefault(string $serviceName): string + { + $fullName = $this->formatDefault($serviceName); + + return "%$fullName%"; + } + public function format(string $serviceName): string { - return sprintf('enqueue.%s.%s.%s', $this->moduleName, $this->configName, $serviceName); + return $this->doFormat($this->moduleName, $this->configName, $serviceName); + } + + public function formatDefault(string $serviceName): string + { + return $this->doFormat($this->moduleName, self::DEFAULT_CONFIG, $serviceName); + } + + private function doFormat(string $moduleName, string $configName, string $serviceName): string + { + return sprintf('enqueue.%s.%s.%s', $moduleName, $configName, $serviceName); } } diff --git a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildClientExtensionsPassTest.php b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildClientExtensionsPassTest.php index e1c8bdcf4..af69293d1 100644 --- a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildClientExtensionsPassTest.php +++ b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildClientExtensionsPassTest.php @@ -43,6 +43,7 @@ public function testThrowsIfNoClientExtensionsServiceFoundForConfiguredTransport { $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'foo'); $pass = new BuildClientExtensionsPass(); @@ -58,6 +59,7 @@ public function testShouldRegisterClientExtension() $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['aName']); + $container->setParameter('enqueue.default_client', 'foo'); $container->setDefinition('enqueue.client.aName.client_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) @@ -84,6 +86,7 @@ public function testShouldIgnoreOtherClientExtensions() $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['aName']); + $container->setParameter('enqueue.default_client', 'foo'); $container->setDefinition('enqueue.client.aName.client_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) @@ -109,6 +112,7 @@ public function testShouldAddExtensionIfClientAll() $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['aName']); + $container->setParameter('enqueue.default_client', 'foo'); $container->setDefinition('enqueue.client.aName.client_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) @@ -133,8 +137,9 @@ public function testShouldTreatTagsWithoutClientAsDefaultClient() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.client_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.client_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.client_extension') @@ -156,11 +161,12 @@ public function testShouldTreatTagsWithoutClientAsDefaultClient() public function testShouldOrderExtensionsByPriority() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); $extensions = new Definition(); $extensions->addArgument([]); - $container->setDefinition('enqueue.client.default.client_extensions', $extensions); + $container->setDefinition('enqueue.client.foo.client_extensions', $extensions); $extension = new Definition(); $extension->addTag('enqueue.client_extension', ['priority' => 6]); @@ -188,11 +194,12 @@ public function testShouldOrderExtensionsByPriority() public function testShouldAssumePriorityZeroIfPriorityIsNotSet() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); $extensions = new Definition(); $extensions->addArgument([]); - $container->setDefinition('enqueue.client.default.client_extensions', $extensions); + $container->setDefinition('enqueue.client.foo.client_extensions', $extensions); $extension = new Definition(); $extension->addTag('enqueue.client_extension'); @@ -226,8 +233,9 @@ public function testShouldMergeWithAddedPreviously() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['aName']); - $container->setDefinition('enqueue.client.aName.client_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.client_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.client_extension') @@ -240,10 +248,7 @@ public function testShouldMergeWithAddedPreviously() $pass->process($container); $this->assertInternalType('array', $extensions->getArgument(0)); - $this->assertEquals([ - 'aBarExtension' => 'aBarServiceIdAddedPreviously', - 'aOloloExtension' => 'aOloloServiceIdAddedPreviously', - ], $extensions->getArgument(0)); + $this->assertCount(4, $extensions->getArgument(0)); } public function testShouldRegisterProcessorWithMatchedNameToCorrespondingExtensions() @@ -256,6 +261,7 @@ public function testShouldRegisterProcessorWithMatchedNameToCorrespondingExtensi $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'foo'); $container->setDefinition('enqueue.client.foo.client_extensions', $fooExtensions); $container->setDefinition('enqueue.client.bar.client_extensions', $barExtensions); diff --git a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPassTest.php b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPassTest.php index e077a768c..603f0fb0d 100644 --- a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPassTest.php +++ b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildCommandSubscriberRoutesPassTest.php @@ -47,6 +47,7 @@ public function testThrowsIfNoRouteCollectionServiceFoundForConfiguredTransport( { $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'baz'); $pass = new BuildCommandSubscriberRoutesPass(); @@ -59,6 +60,7 @@ public function testThrowIfTaggedProcessorIsBuiltByFactory() { $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['aName']); + $container->setParameter('enqueue.default_client', 'foo'); $container->register('enqueue.client.aName.route_collection', RouteCollection::class) ->addArgument([]) ; @@ -81,6 +83,7 @@ public function testShouldRegisterProcessorWithMatchedName() $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($this->createCommandSubscriberProcessor())) ->addTag('enqueue.command_subscriber', ['client' => 'foo']) @@ -103,8 +106,9 @@ public function testShouldRegisterProcessorWithoutNameToDefaultClient() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($this->createCommandSubscriberProcessor())) ->addTag('enqueue.command_subscriber') ; @@ -126,8 +130,9 @@ public function testShouldRegisterProcessorIfClientNameEqualsAll() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($this->createCommandSubscriberProcessor())) ->addTag('enqueue.command_subscriber', ['client' => 'all']) ; @@ -151,8 +156,9 @@ public function testShouldRegisterProcessorIfCommandsIsString() $processor = $this->createCommandSubscriberProcessor('fooCommand'); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; @@ -184,8 +190,9 @@ public function testThrowIfCommandSubscriberReturnsNothing() $processor = $this->createCommandSubscriberProcessor(null); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; @@ -205,8 +212,9 @@ public function testShouldRegisterProcessorIfCommandsAreStrings() $processor = $this->createCommandSubscriberProcessor(['fooCommand', 'barCommand']); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; @@ -248,8 +256,9 @@ public function testShouldRegisterProcessorIfParamSingleCommandArray() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; @@ -286,8 +295,9 @@ public function testShouldRegisterProcessorIfCommandsAreParamArrays() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; @@ -327,8 +337,9 @@ public function testThrowIfCommandSubscriberParamsInvalid() $processor = $this->createCommandSubscriberProcessor(['fooBar', true]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; @@ -351,8 +362,9 @@ public function testShouldMergeExtractedRoutesWithAlreadySetInCollection() $processor = $this->createCommandSubscriberProcessor(['fooCommand']); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.command_subscriber') ; diff --git a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPassTest.php b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPassTest.php index d3936fedd..db991e982 100644 --- a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPassTest.php +++ b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildConsumptionExtensionsPassTest.php @@ -43,6 +43,7 @@ public function testThrowsIfNoConsumptionExtensionsServiceFoundForConfiguredTran { $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'baz'); $pass = new BuildConsumptionExtensionsPass(); @@ -57,14 +58,15 @@ public function testShouldRegisterClientExtension() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['aName']); - $container->setDefinition('enqueue.client.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) - ->addTag('enqueue.consumption_extension', ['client' => 'aName']) + ->addTag('enqueue.consumption_extension', ['client' => 'foo']) ; $container->register('aBarExtension', ExtensionInterface::class) - ->addTag('enqueue.consumption_extension', ['client' => 'aName']) + ->addTag('enqueue.consumption_extension', ['client' => 'foo']) ; $pass = new BuildConsumptionExtensionsPass(); @@ -83,11 +85,12 @@ public function testShouldIgnoreOtherClientExtensions() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['aName']); - $container->setDefinition('enqueue.client.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) - ->addTag('enqueue.consumption_extension', ['client' => 'aName']) + ->addTag('enqueue.consumption_extension', ['client' => 'foo']) ; $container->register('aBarExtension', ExtensionInterface::class) ->addTag('enqueue.consumption_extension', ['client' => 'anotherName']) @@ -108,8 +111,9 @@ public function testShouldAddExtensionIfClientAll() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['aName']); - $container->setDefinition('enqueue.client.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.consumption_extension', ['client' => 'all']) @@ -133,8 +137,9 @@ public function testShouldTreatTagsWithoutClientAsDefaultClient() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.consumption_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.consumption_extension') @@ -156,11 +161,12 @@ public function testShouldTreatTagsWithoutClientAsDefaultClient() public function testShouldOrderExtensionsByPriority() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); $extensions = new Definition(); $extensions->addArgument([]); - $container->setDefinition('enqueue.client.default.consumption_extensions', $extensions); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $extension = new Definition(); $extension->addTag('enqueue.consumption_extension', ['priority' => 6]); @@ -188,11 +194,12 @@ public function testShouldOrderExtensionsByPriority() public function testShouldAssumePriorityZeroIfPriorityIsNotSet() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); $extensions = new Definition(); $extensions->addArgument([]); - $container->setDefinition('enqueue.client.default.consumption_extensions', $extensions); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $extension = new Definition(); $extension->addTag('enqueue.consumption_extension'); @@ -226,8 +233,9 @@ public function testShouldMergeWithAddedPreviously() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['aName']); - $container->setDefinition('enqueue.client.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.consumption_extension') @@ -240,10 +248,7 @@ public function testShouldMergeWithAddedPreviously() $pass->process($container); $this->assertInternalType('array', $extensions->getArgument(0)); - $this->assertEquals([ - 'aBarExtension' => 'aBarServiceIdAddedPreviously', - 'aOloloExtension' => 'aOloloServiceIdAddedPreviously', - ], $extensions->getArgument(0)); + $this->assertCount(4, $extensions->getArgument(0)); } public function testShouldRegisterProcessorWithMatchedNameToCorrespondingExtensions() @@ -256,6 +261,7 @@ public function testShouldRegisterProcessorWithMatchedNameToCorrespondingExtensi $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'foo'); $container->setDefinition('enqueue.client.foo.consumption_extensions', $fooExtensions); $container->setDefinition('enqueue.client.bar.consumption_extensions', $barExtensions); diff --git a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildProcessorRoutesPassTest.php b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildProcessorRoutesPassTest.php index e671f7a8b..74553e6eb 100644 --- a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildProcessorRoutesPassTest.php +++ b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildProcessorRoutesPassTest.php @@ -43,6 +43,7 @@ public function testThrowsIfNoRouteCollectionServiceFoundForConfiguredTransport( { $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'baz'); $pass = new BuildProcessorRoutesPass(); @@ -57,8 +58,9 @@ public function testThrowIfBothTopicAndCommandAttributesAreSet() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['topic' => 'foo', 'command' => 'bar']) ; @@ -76,8 +78,9 @@ public function testThrowIfNeitherTopicNorCommandAttributesAreSet() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', []) ; @@ -96,6 +99,7 @@ public function testShouldRegisterProcessorWithMatchedName() $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'bar'); $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['client' => 'foo', 'topic' => 'foo']) @@ -118,8 +122,9 @@ public function testShouldRegisterProcessorWithoutNameToDefaultClient() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['topic' => 'foo']) ; @@ -141,8 +146,9 @@ public function testShouldRegisterProcessorIfClientNameEqualsAll() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['client' => 'all', 'topic' => 'foo']) ; @@ -164,8 +170,9 @@ public function testShouldRegisterAsTopicProcessor() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['topic' => 'aTopic']) ; @@ -195,8 +202,9 @@ public function testShouldRegisterAsCommandProcessor() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['command' => 'aCommand']) ; @@ -226,8 +234,9 @@ public function testShouldRegisterWithCustomProcessorName() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['command' => 'aCommand', 'processor' => 'customProcessorName']) ; @@ -260,8 +269,9 @@ public function testShouldMergeExtractedRoutesWithAlreadySetInCollection() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.processor', ['command' => 'fooCommand']) ; diff --git a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPassTest.php b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPassTest.php index 25033f0c8..72f5b2152 100644 --- a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPassTest.php +++ b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/BuildTopicSubscriberRoutesPassTest.php @@ -47,6 +47,7 @@ public function testThrowsIfNoRouteCollectionServiceFoundForConfiguredTransport( { $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo', 'bar']); + $container->setParameter('enqueue.default_client', 'baz'); $pass = new BuildTopicSubscriberRoutesPass(); @@ -58,8 +59,9 @@ public function testThrowsIfNoRouteCollectionServiceFoundForConfiguredTransport( public function testThrowIfTaggedProcessorIsBuiltByFactory() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['aName']); - $container->register('enqueue.client.aName.route_collection', RouteCollection::class) + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->register('enqueue.client.foo.route_collection', RouteCollection::class) ->addArgument([]) ; $container->register('aProcessor', Processor::class) @@ -81,6 +83,7 @@ public function testShouldRegisterProcessorWithMatchedName() $container = new ContainerBuilder(); $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'bar'); $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($this->createTopicSubscriberProcessor())) ->addTag('enqueue.topic_subscriber', ['client' => 'foo']) @@ -103,8 +106,9 @@ public function testShouldRegisterProcessorWithoutNameToDefaultClient() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($this->createTopicSubscriberProcessor())) ->addTag('enqueue.topic_subscriber') ; @@ -126,8 +130,9 @@ public function testShouldRegisterProcessorIfClientNameEqualsAll() $routeCollection->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($this->createTopicSubscriberProcessor())) ->addTag('enqueue.topic_subscriber', ['client' => 'all']) ; @@ -151,8 +156,9 @@ public function testShouldRegisterProcessorIfTopicsIsString() $processor = $this->createTopicSubscriberProcessor('fooTopic'); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.topic_subscriber') ; @@ -184,8 +190,9 @@ public function testThrowIfTopicSubscriberReturnsNothing() $processor = $this->createTopicSubscriberProcessor(null); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.topic_subscriber') ; @@ -205,8 +212,9 @@ public function testShouldRegisterProcessorIfTopicsAreStrings() $processor = $this->createTopicSubscriberProcessor(['fooTopic', 'barTopic']); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.topic_subscriber') ; @@ -247,8 +255,9 @@ public function testShouldRegisterProcessorIfTopicsAreParamArrays() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.topic_subscriber') ; @@ -288,8 +297,9 @@ public function testThrowIfTopicSubscriberParamsInvalid() $processor = $this->createTopicSubscriberProcessor(['fooBar', true]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.topic_subscriber') ; @@ -312,8 +322,9 @@ public function testShouldMergeExtractedRoutesWithAlreadySetInCollection() $processor = $this->createTopicSubscriberProcessor(['fooTopic']); $container = new ContainerBuilder(); - $container->setParameter('enqueue.clients', ['default']); - $container->setDefinition('enqueue.client.default.route_collection', $routeCollection); + $container->setParameter('enqueue.clients', ['foo']); + $container->setParameter('enqueue.default_client', 'foo'); + $container->setDefinition('enqueue.client.foo.route_collection', $routeCollection); $container->register('aFooProcessor', get_class($processor)) ->addTag('enqueue.topic_subscriber') ; diff --git a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/ClientFactoryTest.php b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/ClientFactoryTest.php index b87245469..cac1805ce 100644 --- a/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/ClientFactoryTest.php +++ b/pkg/enqueue/Tests/Symfony/Client/DependencyInjection/ClientFactoryTest.php @@ -17,13 +17,6 @@ public function testShouldBeFinal() $this->assertClassFinal(ClientFactory::class); } - public function testShouldAllowGetNameSetInConstructor() - { - $transport = new ClientFactory('aName'); - - $this->assertEquals('aName', $transport->getName()); - } - public function testThrowIfEmptyNameGivenOnConstruction() { $this->expectException(\InvalidArgumentException::class); diff --git a/pkg/enqueue/Tests/Symfony/ContainerProcessorRegistryTest.php b/pkg/enqueue/Tests/Symfony/ContainerProcessorRegistryTest.php index bb3cacb53..fe84c2e20 100644 --- a/pkg/enqueue/Tests/Symfony/ContainerProcessorRegistryTest.php +++ b/pkg/enqueue/Tests/Symfony/ContainerProcessorRegistryTest.php @@ -69,7 +69,7 @@ public function testThrowErrorIfServiceDoesNotImplementProcessorReturnType() $registry = new ContainerProcessorRegistry($containerMock); $this->expectException(\TypeError::class); - $this->expectExceptionMessage('Return value of Enqueue\Symfony\ContainerProcessorRegistry::get() must implement interface Interop\Queue\Processor, instance of stdClass returned'); + $this->expectExceptionMessage('Return value of Enqueue\Symfony\ContainerProcessorRegistry::get() must implement interface Interop\Queue\PsrProcessor, instance of stdClass returned'); $registry->get('processor-name'); } diff --git a/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildConsumptionExtensionsPassTest.php b/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildConsumptionExtensionsPassTest.php index e44272dff..b26b4481f 100644 --- a/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildConsumptionExtensionsPassTest.php +++ b/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildConsumptionExtensionsPassTest.php @@ -43,6 +43,7 @@ public function testThrowsIfNoConsumptionExtensionsServiceFoundForConfiguredTran { $container = new ContainerBuilder(); $container->setParameter('enqueue.transports', ['foo', 'bar']); + $container->setParameter('enqueue.default_transport', 'foo'); $pass = new BuildConsumptionExtensionsPass(); @@ -57,14 +58,15 @@ public function testShouldRegisterTransportExtension() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['aName']); - $container->setDefinition('enqueue.transport.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) - ->addTag('enqueue.transport.consumption_extension', ['transport' => 'aName']) + ->addTag('enqueue.transport.consumption_extension', ['transport' => 'foo']) ; $container->register('aBarExtension', ExtensionInterface::class) - ->addTag('enqueue.transport.consumption_extension', ['transport' => 'aName']) + ->addTag('enqueue.transport.consumption_extension', ['transport' => 'foo']) ; $pass = new BuildConsumptionExtensionsPass(); @@ -83,11 +85,12 @@ public function testShouldIgnoreOtherTransportExtensions() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['aName']); - $container->setDefinition('enqueue.transport.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) - ->addTag('enqueue.transport.consumption_extension', ['transport' => 'aName']) + ->addTag('enqueue.transport.consumption_extension', ['transport' => 'foo']) ; $container->register('aBarExtension', ExtensionInterface::class) ->addTag('enqueue.transport.consumption_extension', ['transport' => 'anotherName']) @@ -108,8 +111,9 @@ public function testShouldAddExtensionIfTransportAll() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['aName']); - $container->setDefinition('enqueue.transport.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.transport.consumption_extension', ['transport' => 'all']) @@ -133,8 +137,9 @@ public function testShouldTreatTagsWithoutTransportAsDefaultTransport() $extensions->addArgument([]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['default']); - $container->setDefinition('enqueue.transport.default.consumption_extensions', $extensions); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.transport.consumption_extension') @@ -156,11 +161,12 @@ public function testShouldTreatTagsWithoutTransportAsDefaultTransport() public function testShouldOrderExtensionsByPriority() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['default']); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); $extensions = new Definition(); $extensions->addArgument([]); - $container->setDefinition('enqueue.transport.default.consumption_extensions', $extensions); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $extension = new Definition(); $extension->addTag('enqueue.transport.consumption_extension', ['priority' => 6]); @@ -188,11 +194,12 @@ public function testShouldOrderExtensionsByPriority() public function testShouldAssumePriorityZeroIfPriorityIsNotSet() { $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['default']); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); $extensions = new Definition(); $extensions->addArgument([]); - $container->setDefinition('enqueue.transport.default.consumption_extensions', $extensions); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $extension = new Definition(); $extension->addTag('enqueue.transport.consumption_extension'); @@ -226,8 +233,9 @@ public function testShouldMergeWithAddedPreviously() ]); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['aName']); - $container->setDefinition('enqueue.transport.aName.consumption_extensions', $extensions); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.consumption_extensions', $extensions); $container->register('aFooExtension', ExtensionInterface::class) ->addTag('enqueue.transport.consumption_extension') @@ -240,10 +248,7 @@ public function testShouldMergeWithAddedPreviously() $pass->process($container); $this->assertInternalType('array', $extensions->getArgument(0)); - $this->assertEquals([ - 'aBarExtension' => 'aBarServiceIdAddedPreviously', - 'aOloloExtension' => 'aOloloServiceIdAddedPreviously', - ], $extensions->getArgument(0)); + $this->assertCount(4, $extensions->getArgument(0)); } public function testShouldRegisterProcessorWithMatchedNameToCorrespondingRegistries() @@ -256,6 +261,7 @@ public function testShouldRegisterProcessorWithMatchedNameToCorrespondingRegistr $container = new ContainerBuilder(); $container->setParameter('enqueue.transports', ['foo', 'bar']); + $container->setParameter('enqueue.default_transport', 'foo'); $container->setDefinition('enqueue.transport.foo.consumption_extensions', $fooExtensions); $container->setDefinition('enqueue.transport.bar.consumption_extensions', $barExtensions); diff --git a/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildProcessorRegistryPassTest.php b/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildProcessorRegistryPassTest.php index e9b9c7d71..d122e044c 100644 --- a/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildProcessorRegistryPassTest.php +++ b/pkg/enqueue/Tests/Symfony/DependencyInjection/BuildProcessorRegistryPassTest.php @@ -44,6 +44,7 @@ public function testThrowsIfNoRegistryServiceFoundForConfiguredTransport() { $container = new ContainerBuilder(); $container->setParameter('enqueue.transports', ['foo', 'bar']); + $container->setParameter('enqueue.default_transport', 'baz'); $pass = new BuildProcessorRegistryPass(); @@ -59,6 +60,7 @@ public function testShouldRegisterProcessorWithMatchedName() $container = new ContainerBuilder(); $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); $container->setDefinition('enqueue.transport.foo.processor_registry', $registry); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.transport.processor', ['transport' => 'foo']) @@ -88,6 +90,7 @@ public function testShouldRegisterProcessorWithMatchedNameToCorrespondingRegistr $container = new ContainerBuilder(); $container->setParameter('enqueue.transports', ['foo', 'bar']); + $container->setParameter('enqueue.default_transport', 'foo'); $container->setDefinition('enqueue.transport.foo.processor_registry', $fooRegistry); $container->setDefinition('enqueue.transport.bar.processor_registry', $barRegistry); $container->register('aFooProcessor', 'aProcessorClass') @@ -118,8 +121,9 @@ public function testShouldRegisterProcessorWithoutNameToDefaultTransport() $registry->addArgument(null); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['default']); - $container->setDefinition('enqueue.transport.default.processor_registry', $registry); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.processor_registry', $registry); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.transport.processor', []) ; @@ -144,8 +148,9 @@ public function testShouldRegisterProcessorIfTransportNameEqualsAll() $registry->addArgument(null); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['default']); - $container->setDefinition('enqueue.transport.default.processor_registry', $registry); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.processor_registry', $registry); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.transport.processor', ['transport' => 'all']) ; @@ -170,8 +175,9 @@ public function testShouldRegisterWithCustomProcessorName() $registry->addArgument(null); $container = new ContainerBuilder(); - $container->setParameter('enqueue.transports', ['default']); - $container->setDefinition('enqueue.transport.default.processor_registry', $registry); + $container->setParameter('enqueue.transports', ['foo']); + $container->setParameter('enqueue.default_transport', 'foo'); + $container->setDefinition('enqueue.transport.foo.processor_registry', $registry); $container->register('aFooProcessor', 'aProcessorClass') ->addTag('enqueue.transport.processor', ['processor' => 'customProcessorName']) ; diff --git a/pkg/enqueue/Tests/Symfony/DependencyInjection/TransportFactoryTest.php b/pkg/enqueue/Tests/Symfony/DependencyInjection/TransportFactoryTest.php index 7e021ca03..6cc02b697 100644 --- a/pkg/enqueue/Tests/Symfony/DependencyInjection/TransportFactoryTest.php +++ b/pkg/enqueue/Tests/Symfony/DependencyInjection/TransportFactoryTest.php @@ -27,13 +27,6 @@ public function testShouldBeFinal() $this->assertClassFinal(TransportFactory::class); } - public function testShouldAllowGetNameSetInConstructor() - { - $transport = new TransportFactory('aName'); - - $this->assertEquals('aName', $transport->getName()); - } - public function testThrowIfEmptyNameGivenOnConstruction() { $this->expectException(\InvalidArgumentException::class); diff --git a/pkg/enqueue/composer.json b/pkg/enqueue/composer.json index fc42d772b..31b2159fd 100644 --- a/pkg/enqueue/composer.json +++ b/pkg/enqueue/composer.json @@ -7,8 +7,8 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7", "enqueue/null": "0.9.x-dev", "enqueue/dsn": "0.9.x-dev", "ramsey/uuid": "^2|^3.5", diff --git a/pkg/fs/composer.json b/pkg/fs/composer.json index 13d3df8a7..cb7cd4732 100644 --- a/pkg/fs/composer.json +++ b/pkg/fs/composer.json @@ -7,7 +7,7 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "enqueue/dsn": "0.9.x-dev", "symfony/filesystem": "^3.4|^4", "makasim/temp-file": "^0.2@stable" @@ -16,7 +16,7 @@ "phpunit/phpunit": "~5.5", "enqueue/null": "0.9.x-dev", "enqueue/test": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev", + "queue-interop/queue-spec": "^0.6", "symfony/dependency-injection": "^3.4|^4" }, "support": { diff --git a/pkg/gearman/composer.json b/pkg/gearman/composer.json index 52750af3d..e23162405 100644 --- a/pkg/gearman/composer.json +++ b/pkg/gearman/composer.json @@ -8,13 +8,13 @@ "require": { "php": "^7.1.3", "ext-gearman": "^2.0", - "queue-interop/queue-interop": "0.7.x-dev" + "queue-interop/queue-interop": "^0.7" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/gps/composer.json b/pkg/gps/composer.json index aede85d7f..bb37b07e3 100644 --- a/pkg/gps/composer.json +++ b/pkg/gps/composer.json @@ -7,14 +7,14 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "google/cloud-pubsub": "^1.0", "enqueue/dsn": "0.9.x-dev" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/job-queue/composer.json b/pkg/job-queue/composer.json index 7ea67465e..54efca4a4 100644 --- a/pkg/job-queue/composer.json +++ b/pkg/job-queue/composer.json @@ -9,7 +9,7 @@ "php": "^7.1.3", "enqueue/enqueue": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "doctrine/orm": "~2.4" }, "require-dev": { diff --git a/pkg/mongodb/composer.json b/pkg/mongodb/composer.json index 11bd5ae24..b3afedb03 100644 --- a/pkg/mongodb/composer.json +++ b/pkg/mongodb/composer.json @@ -11,13 +11,13 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "mongodb/mongodb": "^1.2", "ext-mongodb": "^1.3" }, "require-dev": { "phpunit/phpunit": "~5.4.0", - "queue-interop/queue-spec": "0.6.x-dev", + "queue-interop/queue-spec": "^0.6", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev" }, diff --git a/pkg/monitoring/Symfony/DependencyInjection/MonitoringFactory.php b/pkg/monitoring/Symfony/DependencyInjection/MonitoringFactory.php index 201bfa569..f32946d77 100644 --- a/pkg/monitoring/Symfony/DependencyInjection/MonitoringFactory.php +++ b/pkg/monitoring/Symfony/DependencyInjection/MonitoringFactory.php @@ -18,6 +18,8 @@ */ final class MonitoringFactory { + public const MODULE = 'monitoring'; + /** * @var DiUtils */ @@ -29,7 +31,7 @@ public function __construct(string $name) throw new \InvalidArgumentException('The name could not be empty.'); } - $this->diUtils = DiUtils::create('monitoring', $name); + $this->diUtils = DiUtils::create(self::MODULE, $name); } public static function getConfiguration(string $name = 'monitoring'): ArrayNodeDefinition diff --git a/pkg/null/composer.json b/pkg/null/composer.json index e17435633..cb900e1cd 100644 --- a/pkg/null/composer.json +++ b/pkg/null/composer.json @@ -7,12 +7,12 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev" + "queue-interop/queue-interop": "^0.7" }, "require-dev": { "phpunit/phpunit": "~5.5", "enqueue/test": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/pheanstalk/composer.json b/pkg/pheanstalk/composer.json index dcf5408c8..38ea2ee80 100644 --- a/pkg/pheanstalk/composer.json +++ b/pkg/pheanstalk/composer.json @@ -8,13 +8,13 @@ "require": { "php": "^7.1.3", "pda/pheanstalk": "^3", - "queue-interop/queue-interop": "0.7.x-dev" + "queue-interop/queue-interop": "^0.7" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/rdkafka/composer.json b/pkg/rdkafka/composer.json index 18374e108..9ec0d2f20 100644 --- a/pkg/rdkafka/composer.json +++ b/pkg/rdkafka/composer.json @@ -8,13 +8,13 @@ "require": { "php": "^7.1.3", "ext-rdkafka": "^3.0.3", - "queue-interop/queue-interop": "0.7.x-dev" + "queue-interop/queue-interop": "^0.7" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev", + "queue-interop/queue-spec": "^0.6", "kwn/php-rdkafka-stubs": "^1.0.2" }, "support": { diff --git a/pkg/redis/composer.json b/pkg/redis/composer.json index 73b2236a3..41931ffa8 100644 --- a/pkg/redis/composer.json +++ b/pkg/redis/composer.json @@ -7,7 +7,7 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "enqueue/dsn": "0.9.x-dev", "ramsey/uuid": "^3" }, @@ -16,7 +16,7 @@ "predis/predis": "^1.1", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/simple-client/composer.json b/pkg/simple-client/composer.json index 4f6c07a55..e204c0586 100644 --- a/pkg/simple-client/composer.json +++ b/pkg/simple-client/composer.json @@ -8,8 +8,8 @@ "require": { "php": "^7.1.3", "enqueue/enqueue": "0.9.x-dev", - "queue-interop/amqp-interop": "0.8.x-dev", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/amqp-interop": "^0.8", + "queue-interop/queue-interop": "^0.7", "symfony/config": "^3.4|^4" }, "require-dev": { diff --git a/pkg/sqs/composer.json b/pkg/sqs/composer.json index eac171369..c6c4d07fe 100644 --- a/pkg/sqs/composer.json +++ b/pkg/sqs/composer.json @@ -7,14 +7,14 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "enqueue/dsn": "0.9.x-dev", "aws/aws-sdk-php": "~3.26" }, "require-dev": { "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/stomp/composer.json b/pkg/stomp/composer.json index 28e73f1ee..ba79e4c2f 100644 --- a/pkg/stomp/composer.json +++ b/pkg/stomp/composer.json @@ -9,7 +9,7 @@ "php": "^7.1.3", "enqueue/dsn": "0.9.x-dev", "stomp-php/stomp-php": "^4", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "php-http/guzzle6-adapter": "^1.1", "php-http/client-common": "^1.7@dev", "richardfullmer/rabbitmq-management-api": "^2.0" @@ -18,7 +18,7 @@ "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com", diff --git a/pkg/wamp/composer.json b/pkg/wamp/composer.json index edb1bcc86..62a48c735 100644 --- a/pkg/wamp/composer.json +++ b/pkg/wamp/composer.json @@ -7,7 +7,7 @@ "license": "MIT", "require": { "php": "^7.1.3", - "queue-interop/queue-interop": "0.7.x-dev", + "queue-interop/queue-interop": "^0.7", "enqueue/dsn": "0.9.x-dev", "thruway/pawl-transport": "^0.5.0", "voryx/thruway": "^0.5.3" @@ -16,7 +16,7 @@ "phpunit/phpunit": "~5.4.0", "enqueue/test": "0.9.x-dev", "enqueue/null": "0.9.x-dev", - "queue-interop/queue-spec": "0.6.x-dev" + "queue-interop/queue-spec": "^0.6" }, "support": { "email": "opensource@forma-pro.com",