services:
    d2_skynet_service_definition_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\ServiceDefinitionManager
        arguments:      [@service_container, @doctrine.orm.entity_manager]

    d2_skynet_partner_file_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\PartnerFileManager
        arguments:      [@service_container, @doctrine.orm.entity_manager]

    d2_skynet_partner_fmr_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\FMR\FMRPartnerManager
        arguments:      [@service_container, @doctrine.orm.entity_manager]

    d2_skynet_partner_prt_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\PRT\PRTPartnerManager
        arguments:      [@service_container, @doctrine.orm.entity_manager]

    d2_skynet_partner_pdr_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\PDR\PDRPartnerManager
        arguments:      [@service_container, @doctrine.orm.entity_manager]

    d2_skynet_waybill_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\WaybillManager
        arguments:      [@service_container, @doctrine.orm.entity_manager, @d2_skynet_service_definition_manager, @d2_calc_manager]

    d2_skynet_fmr_waybill_manager:
        class:          D2\SkyNetBundle\DependencyInjection\Services\FMR\FMRWaybillManager
        arguments:      [@service_container, @doctrine.orm.entity_manager, @d2_skynet_service_definition_manager, @d2_calc_manager]

    d2_skynet_bundle.twig.skynet_extension:
        class:          D2\SkyNetBundle\Twig\SkyNetTwigExtension
        arguments:      [@doctrine, @service_container, @d2_skynet_partner_file_manager, @d2_skynet_service_definition_manager]
        tags:
            - { name: twig.extension }

    # With Selected Extensions
    d2_skynet_bundle.waybill_with_selected.extension:
        class:          D2\SkyNetBundle\DependencyInjection\Services\WaybillsWithSelectedExtension
        arguments:      [@doctrine, @service_container]
        tags:
            - { name: d2.with_selected, alias: skynet_list }
            - { name: d2.with_selected, alias: skynet_waybill }

    d2_skynet_bundle.fmr_waybill_with_selected.extension:
        class:          D2\SkyNetBundle\DependencyInjection\Services\FMR\FMRWaybillsWithSelectedExtension
        arguments:      [@doctrine, @service_container]
        tags:
            - { name: d2.with_selected, alias: skynet_fmr_list }
            - { name: d2.with_selected, alias: skynet_fmr_waybill }
