Skip to content

Commit c5dea38

Browse files
Jeroen de Graafjerowork
authored andcommitted
Define all new services needed for the new Saga feature
1 parent 58d97cb commit c5dea38

File tree

1 file changed

+113
-4
lines changed

1 file changed

+113
-4
lines changed

config/services.yaml

Lines changed: 113 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -145,12 +145,12 @@ services:
145145
class: Gember\EventSourcing\Util\Serialization\Serializer\Stacked\StackedSerializer
146146
arguments:
147147
- [
148-
'@gember.event_sourcing.util.serialization.serializer.serializable_domain_event.serializable_domain_event_serializer',
148+
'@gember.event_sourcing.util.serialization.serializer.interface.serializable_interface_serializer',
149149
'@gember.serializer_symfony.symfony_serializer'
150150
]
151151

152-
gember.event_sourcing.util.serialization.serializer.serializable_domain_event.serializable_domain_event_serializer:
153-
class: Gember\EventSourcing\Util\Serialization\Serializer\SerializableDomainEvent\SerializableDomainEventSerializer
152+
gember.event_sourcing.util.serialization.serializer.interface.serializable_interface_serializer:
153+
class: Gember\EventSourcing\Util\Serialization\Serializer\Interface\SerializableInterfaceSerializer
154154

155155
gember.serializer_symfony.symfony_serializer:
156156
class: Gember\SerializerSymfony\SymfonySerializer
@@ -181,6 +181,7 @@ services:
181181
arguments:
182182
- '@gember.event_sourcing.resolver.domain_event.default.event_name.event_name_resolver'
183183
- '@gember.event_sourcing.resolver.common.domain_tag.domain_tag_resolver'
184+
- '@gember.event_sourcing.resolver.common.saga_id.saga_id_resolver'
184185

185186
gember.event_sourcing.resolver.domain_event.cached.cached_domain_event_resolver_decorator:
186187
class: Gember\EventSourcing\Resolver\DomainEvent\Cached\CachedDomainEventResolverDecorator
@@ -264,4 +265,112 @@ services:
264265
arguments:
265266
- '@.inner'
266267
- '@gember.psr.simple_cache.cache_interface'
267-
- '@gember.event_sourcing.util.string.friendly_class_namer.friendly_class_namer'
268+
- '@gember.event_sourcing.util.string.friendly_class_namer.friendly_class_namer'
269+
270+
gember.event_sourcing.registry.saga.saga_registry:
271+
class: Gember\EventSourcing\Registry\Saga\Reflector\ReflectorSagaRegistry
272+
arguments:
273+
- '@gember.event_sourcing.util.file.finder.finder'
274+
- '@gember.event_sourcing.util.file.reflector.reflector'
275+
- '@gember.event_sourcing.resolver.saga.saga_resolver'
276+
- '@gember.event_sourcing.resolver.saga.default.event_subscriber.saga_event_subscriber_resolver'
277+
278+
gember.event_sourcing.registry.saga.cached.cached_saga_registry_decorator:
279+
class: Gember\EventSourcing\Registry\Saga\Cached\CachedSagaRegistryDecorator
280+
#decorates: gember.event_sourcing.registry.saga.saga_registry
281+
arguments:
282+
- '@.inner'
283+
- '@gember.psr.simple_cache.cache_interface'
284+
285+
gember.event_sourcing.resolver.saga.saga_resolver:
286+
class: Gember\EventSourcing\Resolver\Saga\Default\DefaultSagaResolver
287+
arguments:
288+
- '@gember.event_sourcing.resolver.saga.default.saga_name.saga_name_resolver'
289+
- '@gember.event_sourcing.resolver.common.saga_id.saga_id_resolver'
290+
- '@gember.event_sourcing.resolver.saga.default.event_subscriber.saga_event_subscriber_resolver'
291+
292+
gember.event_sourcing.resolver.saga.cached.cached_saga_resolver_decorator:
293+
class: Gember\EventSourcing\Resolver\Saga\Cached\CachedSagaResolverDecorator`
294+
#decorates: gember.event_sourcing.resolver.saga.saga_resolver
295+
arguments:
296+
- '@.inner'
297+
- '@gember.psr.simple_cache.cache_interface'
298+
- '@gember.event_sourcing.util.string.friendly_class_namer.friendly_class_namer'
299+
300+
gember.event_sourcing.resolver.saga.default.saga_name.saga_name_resolver:
301+
class: Gember\EventSourcing\Resolver\Saga\Default\SagaName\Stacked\StackedSagaNameResolver
302+
arguments:
303+
- [
304+
'@gember.event_sourcing.resolver.saga.default.saga_name.attribute.attribute_saga_name_resolver',
305+
'@gember.event_sourcing.resolver.saga.default.saga_name.interface.interface_saga_name_resolver'
306+
]
307+
- '@gember.event_sourcing.resolver.saga.default.saga_name.class_name.class_name_saga_name_resolver'
308+
309+
gember.event_sourcing.resolver.saga.default.saga_name.attribute.attribute_saga_name_resolver:
310+
class: Gember\EventSourcing\Resolver\Saga\Default\SagaName\Attribute\AttributeSagaNameResolver
311+
arguments:
312+
- '@gember.event_sourcing.util.attribute.resolver.attribute_resolver'
313+
314+
gember.event_sourcing.resolver.saga.default.saga_name.interface.interface_saga_name_resolver:
315+
class: Gember\EventSourcing\Resolver\Saga\Default\SagaName\Interface\InterfaceSagaNameResolver
316+
317+
gember.event_sourcing.resolver.saga.default.saga_name.class_name.class_name_saga_name_resolver:
318+
class: Gember\EventSourcing\Resolver\Saga\Default\SagaName\ClassName\ClassNameSagaNameResolver
319+
arguments:
320+
- '@gember.event_sourcing.util.string.friendly_class_namer.friendly_class_namer'
321+
322+
gember.event_sourcing.resolver.common.saga_id.saga_id_resolver:
323+
class: Gember\EventSourcing\Resolver\Common\SagaId\Attribute\AttributeSagaIdResolver
324+
arguments:
325+
- '@gember.event_sourcing.util.attribute.resolver.attribute_resolver'
326+
327+
gember.event_sourcing.resolver.saga.default.event_subscriber.saga_event_subscriber_resolver:
328+
class: Gember\EventSourcing\Resolver\Saga\Default\EventSubscriber\Attribute\AttributeSagaEventSubscriberResolver
329+
arguments:
330+
- '@gember.event_sourcing.util.attribute.resolver.attribute_resolver'
331+
332+
Gember\EventSourcing\Saga\SagaEventHandler:
333+
class: Gember\EventSourcing\Saga\SagaEventHandler
334+
arguments:
335+
- '@gember.event_sourcing.resolver.domain_event.domain_event_resolver'
336+
- '@gember.event_sourcing.registry.saga.saga_registry'
337+
- '@gember.event_sourcing.repository.saga_store'
338+
- '@gember.event_sourcing.util.messaging.message_bus.command_bus'
339+
340+
gember.event_sourcing.util.messaging.message_bus.command_bus:
341+
class: Gember\MessageBusSymfony\SymfonyCommandBus
342+
arguments:
343+
- '@gember.symfony.component.messenger.message_bus.command_bus'
344+
345+
gember.symfony.component.messenger.message_bus.command_bus: '@command.bus'
346+
347+
gember.event_sourcing.repository.saga_store:
348+
class: Gember\EventSourcing\Repository\Rdbms\RdbmsSagaStore
349+
arguments:
350+
- '@gember.event_sourcing.resolver.saga.saga_resolver'
351+
- '@gember.dependency_contracts.event_store.saga.rdbms_saga_store_repository'
352+
- '@gember.event_sourcing.repository.rdbms.saga_factory'
353+
- '@gember.event_sourcing.util.serialization.serializer.serializer'
354+
- '@gember.event_sourcing.util.time.clock.clock'
355+
356+
gember.event_sourcing.repository.rdbms.saga_factory:
357+
class: Gember\EventSourcing\Repository\Rdbms\SagaFactory
358+
arguments:
359+
- '@gember.event_sourcing.util.serialization.serializer.serializer'
360+
361+
gember.dependency_contracts.event_store.saga.rdbms_saga_store_repository:
362+
class: Gember\RdbmsEventStoreDoctrineDbal\Saga\DoctrineRdbmsSagaStoreRepository
363+
arguments:
364+
- '@gember.doctrine.dbal.connection'
365+
- '@gember.rdbms_event_store_doctrine_dbal.saga.table_schema.saga_store_table_schema'
366+
- '@gember.rdbms_event_store_doctrine_dbal.saga.doctrine_dbal_rdbms_saga_factory'
367+
368+
gember.rdbms_event_store_doctrine_dbal.saga.table_schema.saga_store_table_schema:
369+
class: Gember\RdbmsEventStoreDoctrineDbal\Saga\TableSchema\SagaStoreTableSchema
370+
factory: [
371+
Gember\RdbmsEventStoreDoctrineDbal\Saga\TableSchema\SagaTableSchemaFactory,
372+
'createDefaultSagaStore'
373+
]
374+
375+
gember.rdbms_event_store_doctrine_dbal.saga.doctrine_dbal_rdbms_saga_factory:
376+
class: Gember\RdbmsEventStoreDoctrineDbal\Saga\DoctrineDbalRdbmsSagaFactory

0 commit comments

Comments
 (0)