feature #29517 [Hackday][Messenger] Add an alias for transport.symfony_serializer so SerializerInterface can be autowired (karser)

This PR was submitted for the 4.2 branch but it was squashed and merged into the 4.3-dev branch instead (closes #29517).

Discussion
----------

[Hackday][Messenger] Add an alias for transport.symfony_serializer so SerializerInterface can be autowired

| Q             | A
| ------------- | ---
| Branch?       | master
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes    <!-- please add some, will be required by reviewers -->
| License       | MIT

cc @thePanz

Use case:
Before:
```
    Pnz\Messenger\FilesystemTransport\FilesystemTransportFactory:
        arguments:
            - '@messenger.transport.symfony_serializer'
        tags: ['messenger.transport_factory']
```

After:
```
    Pnz\Messenger\FilesystemTransport\FilesystemTransportFactory:
        tags: ['messenger.transport_factory']
```

Commits
-------

2f0e948bf0 [Hackday][Messenger] Add an alias for transport.symfony_serializer so SerializerInterface can be autowired
This commit is contained in:
Nicolas Grekas 2018-12-13 11:40:47 +01:00
commit 95cda62bc9
2 changed files with 3 additions and 0 deletions

View File

@ -70,6 +70,7 @@ use Symfony\Component\Lock\StoreInterface;
use Symfony\Component\Messenger\Handler\MessageHandlerInterface;
use Symfony\Component\Messenger\MessageBus;
use Symfony\Component\Messenger\MessageBusInterface;
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
use Symfony\Component\Messenger\Transport\TransportFactoryInterface;
use Symfony\Component\Messenger\Transport\TransportInterface;
use Symfony\Component\PropertyAccess\PropertyAccessor;
@ -1530,6 +1531,7 @@ class FrameworkExtension extends Extension
$container->setAlias('messenger.transport.serializer', $config['serializer']['id']);
} else {
$container->removeDefinition('messenger.transport.amqp.factory');
$container->removeDefinition(SerializerInterface::class);
}
}

View File

@ -22,6 +22,7 @@
<argument /> <!-- Format -->
<argument type="collection" /> <!-- Context -->
</service>
<service id="Symfony\Component\Messenger\Transport\Serialization\SerializerInterface" alias="messenger.transport.serializer" />
<!-- Middleware -->
<service id="messenger.middleware.handle_message" class="Symfony\Component\Messenger\Middleware\HandleMessageMiddleware" abstract="true">