Files
DDDBoilerplate/apps/symfony/config/services.yaml
Mathias STRASSER dcc81ec9bb Step 02 — Conformist (Invoicing)
- Ajout Symfony Messenger comme bus d'intégration
- MessengerSalesEventPublisher remplace le NaivePublisher pour dispatch via Messenger
- WhenOrderConfirmed (Invoicing) : consumer Conformist qui consomme sales.v1.OrderConfirmed tel quel
- Tests de compatibilité Conformist et intégration
- Configuration Messenger avec transport sync
2026-03-04 00:31:08 +01:00

63 lines
2.3 KiB
YAML

services:
_defaults:
autowire: true
autoconfigure: true
# --- Shared ---
MiniShop\Shared\:
resource: '%kernel.project_dir%/src/Shared/'
MiniShop\Shared\Technical\Clock:
alias: MiniShop\Shared\Technical\SystemClock
# --- Sales ---
MiniShop\Sales\Application\:
resource: '%kernel.project_dir%/src/Sales/Application/'
MiniShop\Sales\Infrastructure\:
resource: '%kernel.project_dir%/src/Sales/Infrastructure/'
MiniShop\Sales\Interfaces\:
resource: '%kernel.project_dir%/src/Sales/Interfaces/'
tags: ['controller.service_arguments']
MiniShop\Sales\Application\Port\OrderRepository:
alias: MiniShop\Sales\Infrastructure\Persistence\InMemoryOrderRepository
MiniShop\Sales\Application\Port\SalesEventPublisher:
alias: MiniShop\Sales\Infrastructure\Messaging\MessengerSalesEventPublisher
# --- Invoicing ---
MiniShop\Invoicing\Application\:
resource: '%kernel.project_dir%/src/Invoicing/Application/'
MiniShop\Invoicing\Infrastructure\:
resource: '%kernel.project_dir%/src/Invoicing/Infrastructure/'
MiniShop\Invoicing\Interfaces\:
resource: '%kernel.project_dir%/src/Invoicing/Interfaces/'
tags: ['controller.service_arguments']
MiniShop\Invoicing\Application\Port\InvoiceRepository:
alias: MiniShop\Invoicing\Infrastructure\Persistence\InMemoryInvoiceRepository
MiniShop\Invoicing\Application\Port\InvoiceNumberGenerator:
alias: MiniShop\Invoicing\Infrastructure\SequentialInvoiceNumberGenerator
# --- LegacyFulfillment ---
MiniShop\LegacyFulfillment\Application\:
resource: '%kernel.project_dir%/src/LegacyFulfillment/Application/'
MiniShop\LegacyFulfillment\Infrastructure\:
resource: '%kernel.project_dir%/src/LegacyFulfillment/Infrastructure/'
MiniShop\LegacyFulfillment\Interfaces\:
resource: '%kernel.project_dir%/src/LegacyFulfillment/Interfaces/'
tags: ['controller.service_arguments']
MiniShop\LegacyFulfillment\Application\Port\ShipmentRequestRepository:
alias: MiniShop\LegacyFulfillment\Infrastructure\Persistence\InMemoryShipmentRequestRepository
MiniShop\LegacyFulfillment\Application\Port\LegacyFulfillmentGateway:
alias: MiniShop\LegacyFulfillment\Infrastructure\Gateway\FakeLegacyFulfillmentGateway