<?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="XpsProductFinder\Core\Content\ProductFinder\ProductFinderDefinition">
            <tag name="shopware.entity.definition" entity="xps_product_finder" />
        </service>

        <service id="XpsProductFinder\Core\Content\ProductFinderStep\ProductFinderStepDefinition">
            <tag name="shopware.entity.definition" entity="xps_product_finder_step" />
        </service>
        <service id="XpsProductFinder\Core\Content\ProductFinderOption\Aggregate\ProductFinderOptionProduct\ProductFinderOptionProductDefinition">
            <tag name="shopware.entity.definition" entity="xps_product_finder_option_product" />
        </service>

        <service id="XpsProductFinder\Core\Content\ProductFinderOption\ProductFinderOptionDefinition">
            <tag name="shopware.entity.definition" entity="xps_product_finder_option" />
        </service>

        <service id="XpsProductFinder\Storefront\Controller\ProductFinderController" public="true">
            <argument type="service" id="XpsProductFinder\Service\ProductFinderService" />
            <argument type="service" id="Psr\Log\LoggerInterface" />
            <argument type="service" id="mail_template.repository"/>
            <argument type="service" id="XpsProductFinder\Service\EmailService"/>
            <argument type="service" id="XpsProductFinder\Service\SalesChannelService"/>
            <argument type="service" id="Shopware\Core\Checkout\Cart\SalesChannel\CartService"/>
            <argument type="service" id="product.repository"/>
                 <!-- <argument type="service" id="logger"/> -->
            <call method="setContainer">
                <argument type="service" id="service_container" />
            </call>
            <tag name="controller.service_arguments" />
        </service>
    <service id="XpsProductFinder\Service\ProductFinderService">
            <argument type="service" id="xps_product_finder.repository"/>
            <argument type="service" id="product.repository"/>
            <argument type="service" id="xps_product_finder_option.repository"/>
        </service>

        <service id="XpsProductFinder\Administration\Controller\ProductFinderController"
            public="true">
            <argument type="service" id="xps_product_finder.repository" />
            <argument type="service" id="xps_product_finder_step.repository" />
            <argument type="service" id="xps_product_finder_option.repository" />
            <call method="setContainer">
                <argument type="service" id="service_container" />
            </call>
            <tag name="controller.service_arguments" />
        </service>
          <service id="XpsProductFinder\Core\Content\Cms\DataResolver\Element\ProductFinderElementResolver">
            <argument type="service" id="xps_product_finder.repository"/>
            <tag name="shopware.cms.data_resolver"/>
        </service>
      <service id="XpsProductFinder\Service\MailServiceDecorator" decorates="Shopware\Core\Content\Mail\Service\MailService">
<argument type="service" id="XpsProductFinder\Service\MailServiceDecorator.inner"/>
<argument type="service" id="Shopware\Core\System\SystemConfig\SystemConfigService"/>
</service>
<service id="XpsProductFinder\Service\EmailService">
<argument type="service" id="Shopware\Core\Content\Mail\Service\MailService"/>
<argument type="service" id="mail_template.repository"/>
<argument type="service" id="XpsProductFinder\Service\SalesChannelService"/>
<argument type="service" id="XpsProductFinder\Service\MailServiceDecorator"/>
</service>
<service id="XpsProductFinder\Service\SalesChannelService">
<argument type="service" id="sales_channel.repository"/>
<argument type="service" id="Shopware\Core\System\SalesChannel\Context\SalesChannelContextFactory"/>
</service>
    </services>
</container>