<?php

namespace ContainerH4AHLTQ;

use Symfony\Component\DependencyInjection\Argument\RewindableGenerator;
use Symfony\Component\DependencyInjection\Exception\RuntimeException;

/*
 * @internal This class has been auto-generated by the Symfony Dependency Injection Component.
 */
class getUpsertCategoryCommandHandlerService extends KernelProdContainer
{
    /*
     * Gets the private 'Akeneo\Category\Application\UpsertCategoryCommandHandler' shared service.
     *
     * @return \Akeneo\Category\Application\UpsertCategoryCommandHandler
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Category/back/Application/UpsertCategoryCommandHandler.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Category/back/Application/Applier/UserIntentApplierRegistry.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Category/back/Application/Storage/Save/CategorySaverProcessor.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Category/back/Application/Storage/Save/CategorySaverRegistry.php';

        return $container->privates['Akeneo\\Category\\Application\\UpsertCategoryCommandHandler'] = new \Akeneo\Category\Application\UpsertCategoryCommandHandler(($container->services['.container.private.validator'] ?? $container->load('get_Container_Private_ValidatorService')), ($container->privates['Akeneo\\Category\\Domain\\Query\\GetCategoryInterface'] ?? $container->load('getGetCategoryInterfaceService')), new \Akeneo\Category\Application\Applier\UserIntentApplierRegistry(new RewindableGenerator(function () use ($container) {
            yield 0 => ($container->privates['Akeneo\\Category\\Application\\Applier\\SetLabelApplier'] ?? ($container->privates['Akeneo\\Category\\Application\\Applier\\SetLabelApplier'] = new \Akeneo\Category\Application\Applier\SetLabelApplier()));
            yield 1 => ($container->privates['Akeneo\\Category\\Application\\Applier\\SetTextApplier'] ?? ($container->privates['Akeneo\\Category\\Application\\Applier\\SetTextApplier'] = new \Akeneo\Category\Application\Applier\SetTextApplier()));
            yield 2 => ($container->privates['Akeneo\\Category\\Application\\Applier\\SetTextAreaApplier'] ?? ($container->privates['Akeneo\\Category\\Application\\Applier\\SetTextAreaApplier'] = new \Akeneo\Category\Application\Applier\SetTextAreaApplier()));
            yield 3 => ($container->privates['Akeneo\\Category\\Application\\Applier\\SetRichTextApplier'] ?? ($container->privates['Akeneo\\Category\\Application\\Applier\\SetRichTextApplier'] = new \Akeneo\Category\Application\Applier\SetRichTextApplier()));
            yield 4 => ($container->privates['Akeneo\\Category\\Application\\Applier\\SetImageApplier'] ?? ($container->privates['Akeneo\\Category\\Application\\Applier\\SetImageApplier'] = new \Akeneo\Category\Application\Applier\SetImageApplier()));
        }, 5)), ($container->services['event_dispatcher'] ?? $container->getEventDispatcherService()), new \Akeneo\Category\Application\Storage\Save\CategorySaverProcessor(new \Akeneo\Category\Application\Storage\Save\CategorySaverRegistry(new RewindableGenerator(function () use ($container) {
            yield 0 => ($container->privates['Akeneo\\Category\\Application\\Storage\\Save\\Saver\\CategoryBaseSaver'] ?? $container->load('getCategoryBaseSaverService'));
            yield 1 => ($container->privates['Akeneo\\Category\\Application\\Storage\\Save\\Saver\\CategoryTranslationsSaver'] ?? $container->load('getCategoryTranslationsSaverService'));
        }, 2))));
    }
}
