Skip to content

Commit ef3ca6b

Browse files
committed
Add default to php_serializer_event_transformer
1 parent a91a3ed commit ef3ca6b

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

DependencyInjection/AsyncTransformersPass.php

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ public function process(ContainerBuilder $container)
1818

1919
$transformerIdsMap = [];
2020
$eventNamesMap = [];
21+
$defaultTransformer = null;
2122
foreach ($container->findTaggedServiceIds('enqueue.event_transformer') as $serviceId => $tagAttributes) {
2223
foreach ($tagAttributes as $tagAttribute) {
2324
if (false == isset($tagAttribute['eventName'])) {
@@ -28,11 +29,20 @@ public function process(ContainerBuilder $container)
2829

2930
$transformerName = isset($tagAttribute['transformerName']) ? $tagAttribute['transformerName'] : $serviceId;
3031

31-
$eventNamesMap[$eventName] = $transformerName;
32-
$transformerIdsMap[$transformerName] = $serviceId;
32+
if (isset($tagAttribute['default']) && $tagAttribute['default']) {
33+
$defaultTransformer = ['id' => $serviceId, 'transformerName' => $transformerName];
34+
} else {
35+
$eventNamesMap[] = $transformerName;
36+
$transformerIdsMap[] = $serviceId;
37+
}
3338
}
3439
}
3540

41+
if ($defaultTransformer) {
42+
$eventNamesMap[] = $defaultTransformer['transformerName'];
43+
$transformerIdsMap[] = $defaultTransformer['id'];
44+
}
45+
3646
$container->getDefinition('enqueue.events.registry')
3747
->replaceArgument(0, $eventNamesMap)
3848
->replaceArgument(1, $transformerIdsMap)

Resources/config/services.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ services:
2525
- '@event_dispatcher'
2626
- '@enqueue.events.async_listener'
2727

28-
enqueue.events.php_serializer_event_transofrmer:
28+
enqueue.events.php_serializer_event_transformer:
2929
class: 'Enqueue\AsyncEventDispatcher\PhpSerializerEventTransformer'
3030
public: public
3131
arguments:
3232
- '@enqueue.events.context'
3333
tags:
34-
- {name: 'enqueue.event_transformer', eventName: '/.*/', transformerName: 'php_serializer' }
34+
- {name: 'enqueue.event_transformer', eventName: '/.*/', transformerName: 'php_serializer', default: true }

0 commit comments

Comments
 (0)