<?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>
		<service id="VRPaymentPayment\Core\Checkout\Service\TransactionManagementService">
			<argument type="service" id="VRPaymentPayment\Core\Api\Transaction\Service\TransactionService"/>
			<argument type="service" id="VRPaymentPayment\Core\Settings\Service\SettingsService"/>
			<!-- Cache for headless transaction persistence -->
			<argument type="service" id="cache.system"/>
		</service>

		<service id="VRPaymentPayment\Core\Checkout\Service\PaymentMethodFilterService">
			<argument type="service" id="VRPaymentPayment\Core\Settings\Service\SettingsService"/>
			<argument type="service" id="VRPaymentPayment\Core\Api\Transaction\Service\TransactionService"/>
			<argument type="service" id="VRPaymentPayment\Core\Api\PaymentMethodConfiguration\Service\PaymentMethodConfigurationService"/>
			<argument type="service" id="VRPaymentPayment\Core\Util\PaymentMethodUtil"/>
			<argument type="service" id="payment_method.repository"/>
			<argument type="service" id="VRPaymentPayment\Core\Checkout\Service\TransactionManagementService"/>
			<argument type="service" id="Shopware\Core\Checkout\Cart\SalesChannel\CartService"/>
			<call method="setLogger">
				<argument type="service" id="monolog.logger.vrpayment_payment"/>
			</call>
		</service>

		<service id="VRPaymentPayment\Core\Checkout\Service\PaymentIntegrationService">
			<argument type="service" id="VRPaymentPayment\Core\Api\Transaction\Service\TransactionService"/>
			<argument type="service" id="VRPaymentPayment\Core\Settings\Service\SettingsService"/>
			<argument type="service" id="VRPaymentPayment\Core\Checkout\Service\TransactionManagementService"/>
			<argument type="service" id="router"/>
		</service>

		<service id="VRPaymentPayment\Core\Checkout\Service\CartRecoveryService">
			<argument type="service" id="Shopware\Core\Checkout\Cart\SalesChannel\CartService"/>
			<argument type="service" id="Shopware\Core\Checkout\Cart\LineItemFactoryRegistry"/>
			<argument type="service" id="order.repository"/>
			<argument type="service" id="Swag\CustomizedProducts\Core\Checkout\Cart\Route\AddCustomizedProductsToCartRoute" on-invalid="null"/>
		</service>

		<service id="VRPaymentPayment\Core\Checkout\Service\InvoiceService">
			<argument type="service" id="VRPaymentPayment\Core\Settings\Service\SettingsService"/>
			<argument type="service" id="VRPaymentPayment\Core\Api\Transaction\Service\TransactionService"/>
		</service>
	</services>
</container>
