<?xml version="1.0" ?>

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

	<services>
		<!-- Controllers -->
		<service id="VRPaymentPayment\Core\Storefront\Checkout\Controller\CheckoutController" public="true">
			<argument type="service" id="VRPaymentPayment\Core\Settings\Service\SettingsService"/>
			<argument type="service" id="Shopware\Storefront\Page\GenericPageLoader"/>
			<argument type="service" id="Shopware\Core\Checkout\Order\SalesChannel\OrderRoute"/>
			<argument type="service" id="VRPaymentPayment\Core\Checkout\Service\CartRecoveryService"/>
			<argument type="service" id="VRPaymentPayment\Core\Checkout\Service\PaymentIntegrationService"/>
			<argument type="service" id="VRPaymentPayment\Core\Api\Transaction\Service\TransactionService"/>
			<call method="setLogger">
				<argument type="service" id="monolog.logger.vrpayment_payment"/>
			</call>
			<call method="setContainer">
				<argument type="service" id="service_container"/>
			</call>
		</service>

		<!-- Subscribers -->
		<service id="VRPaymentPayment\Core\Storefront\Checkout\Subscriber\CheckoutSubscriber">
			<argument id="VRPaymentPayment\Core\Settings\Service\SettingsService" type="service"/>
			<argument id="VRPaymentPayment\Core\Checkout\Service\PaymentMethodFilterService" type="service"/>
			<argument id="VRPaymentPayment\Core\Checkout\Service\PaymentIntegrationService" type="service"/>
			<call method="setLogger">
				<argument type="service" id="monolog.logger.vrpayment_payment"/>
			</call>
			<tag name="kernel.event_subscriber"/>
		</service>

		<!-- Decorators -->
		<service id="VRPaymentPayment\Core\Storefront\Framework\Cookie\VRPaymentCookieProvider" decorates="Shopware\Storefront\Framework\Cookie\CookieProviderInterface">
			<argument type="service" id="VRPaymentPayment\Core\Storefront\Framework\Cookie\VRPaymentCookieProvider.inner"/>
		</service>
	</services>

</container>
