parameters:
    doctrine.entity_repository.class:   Doctrine\ORM\EntityRepository
    akeneo_storage_utils.doctrine.table_name_builder.class:     Akeneo\Tool\Bundle\StorageUtilsBundle\Doctrine\TableNameBuilder
    akeneo_storage_utils.doctrine.object_detacher.class:        Akeneo\Tool\Bundle\StorageUtilsBundle\Doctrine\Common\Detacher\ObjectDetacher
    akeneo_storage_utils.event_subscriber.resolve_target_repository.class:  Akeneo\Tool\Bundle\StorageUtilsBundle\EventSubscriber\ResolveTargetRepositorySubscriber
    akeneo_storage_utils.doctrine.orm_mappings_override_configurator.class: Akeneo\Tool\Bundle\StorageUtilsBundle\Doctrine\ORM\MappingsOverrideConfigurator
    akeneo_storage_utils.event_subscriber.configure_orm_mappings.class:     Akeneo\Tool\Bundle\StorageUtilsBundle\EventSubscriber\ConfigureMappingsSubscriber

services:
    akeneo_storage_utils.event_subscriber.resolve_target_repository:
        class: '%akeneo_storage_utils.event_subscriber.resolve_target_repository.class%'
        public: false
        tags:
            - { name: doctrine.event_subscriber }

    akeneo_storage_utils.doctrine.object_detacher:
        class: '%akeneo_storage_utils.doctrine.object_detacher.class%'
        arguments:
            - '@doctrine.orm.default_entity_manager'

    akeneo_storage_utils.doctrine.orm_mappings_override_configurator:
        class: '%akeneo_storage_utils.doctrine.orm_mappings_override_configurator.class%'

    akeneo_storage_utils.event_subscriber.configure_orm_mappings:
        class: '%akeneo_storage_utils.event_subscriber.configure_orm_mappings.class%'
        arguments:
            - '@akeneo_storage_utils.doctrine.orm_mappings_override_configurator'
            - '%akeneo_storage_utils.mapping_overrides%'
        tags:
            - { name: doctrine.event_subscriber, priority: 100 }
