<?xml version="1.0" ?>

<container xmlns="http://symfony.com/schema/dic/services"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">

    <services>

        <service id="Kiener\MolliePayments\Service\Payment\Remover\RegularPaymentRemover">
            <argument type="service" id="service_container"/>
            <argument type="service" id="request_stack"/>
            <argument type="service" id="Kiener\MolliePayments\Service\OrderService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\SettingsService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\MollieApi\OrderItemsExtractor"/>
            <argument type="service" id="monolog.logger.mollie"/>

            <tag name="mollie_payments.payment_method.remover.sw64"/>
        </service>


        <service id="Kiener\MolliePayments\Components\MollieAvailability\Service\MolliePaymentMethodAvailabilityRemover">
            <argument type="service" id="service_container"/>
            <argument type="service" id="request_stack"/>
            <argument type="service" id="Kiener\MolliePayments\Service\OrderService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\SettingsService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\Payment\Provider\ActivePaymentMethodsProvider"/>
            <argument type="service" id="Kiener\MolliePayments\Service\MollieApi\OrderItemsExtractor"/>
            <argument type="service" id="monolog.logger.mollie"/>

            <tag name="mollie_payments.payment_method.remover.sw64"/>
        </service>

        <service id="Kiener\MolliePayments\Components\Subscription\Services\PaymentMethodRemover\SubscriptionRemover">
            <argument type="service" id="service_container"/>
            <argument type="service" id="request_stack"/>
            <argument type="service" id="Kiener\MolliePayments\Service\SettingsService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\OrderService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\SettingsService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\MollieApi\OrderItemsExtractor"/>
            <argument type="service" id="monolog.logger.mollie"/>

            <tag name="mollie_payments.payment_method.remover.sw64"/>
            <tag name="mollie_payments.payment_method.remover.sw63"/>
        </service>

        <service id="Kiener\MolliePayments\Components\Voucher\Service\VoucherRemover">
            <argument type="service" id="service_container"/>
            <argument type="service" id="request_stack"/>
            <argument type="service" id="Kiener\MolliePayments\Service\OrderService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\SettingsService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\Cart\Voucher\VoucherService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\MollieApi\OrderItemsExtractor"/>
            <argument type="service" id="monolog.logger.mollie"/>

            <tag name="mollie_payments.payment_method.remover.sw64"/>
            <tag name="mollie_payments.payment_method.remover.sw63"/>
        </service>

        <service id="Kiener\MolliePayments\Service\Payment\Remover\PayPalExpressPaymentRemover">
            <argument type="service" id="service_container"/>
            <argument type="service" id="request_stack"/>
            <argument type="service" id="Kiener\MolliePayments\Service\OrderService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\SettingsService"/>
            <argument type="service" id="Kiener\MolliePayments\Service\MollieApi\OrderItemsExtractor"/>
            <argument type="service" id="monolog.logger.mollie"/>

            <tag name="mollie_payments.payment_method.remover.sw64"/>
        </service>

    </services>
</container>
