<?php

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

// This file has been auto-generated by the Symfony Dependency Injection Component for internal use.
// Returns the private 'Akeneo\Tool\Bundle\VersioningBundle\Command\PurgeCommand' shared service.

include_once \dirname(__DIR__, 4).'/vendor/symfony/console/Command/Command.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Command/PurgeCommand.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Purger/VersionPurgerInterface.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Purger/VersionPurger.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Doctrine/Query/SqlDeleteVersionsByIdsQuery.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Doctrine/Query/SqlGetAllResourceNamesQuery.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Doctrine/Query/SqlGetPurgeableVersionListQuery.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Purger/VersionPurgerAdvisorInterface.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Purger/SkipFirstVersionPurgerAdvisor.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Doctrine/Query/SqlGetFirstVersionIdsByIdsQuery.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Purger/KeepLastVersionPurgerAdvisor.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/Doctrine/Query/SqlGetAllButLastVersionIdsByIdsQuery.php';
include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Tool/Bundle/VersioningBundle/EventSubscriber/PurgeProgressBarAdvancerSubscriber.php';

$a = ($this->services['doctrine.dbal.default_connection'] ?? $this->getDoctrine_Dbal_DefaultConnectionService());

$b = new \Akeneo\Tool\Bundle\VersioningBundle\Purger\VersionPurger(new \Akeneo\Tool\Bundle\VersioningBundle\Doctrine\Query\SqlDeleteVersionsByIdsQuery($a), new \Akeneo\Tool\Bundle\VersioningBundle\Doctrine\Query\SqlGetAllResourceNamesQuery($a), new \Akeneo\Tool\Bundle\VersioningBundle\Doctrine\Query\SqlGetPurgeableVersionListQuery($a));
$b->addVersionPurgerAdvisor(new \Akeneo\Tool\Bundle\VersioningBundle\Purger\SkipFirstVersionPurgerAdvisor(new \Akeneo\Tool\Bundle\VersioningBundle\Doctrine\Query\SqlGetFirstVersionIdsByIdsQuery($a)));
$b->addVersionPurgerAdvisor(new \Akeneo\Tool\Bundle\VersioningBundle\Purger\KeepLastVersionPurgerAdvisor(new \Akeneo\Tool\Bundle\VersioningBundle\Doctrine\Query\SqlGetAllButLastVersionIdsByIdsQuery($a)));

$this->privates['Akeneo\\Tool\\Bundle\\VersioningBundle\\Command\\PurgeCommand'] = $instance = new \Akeneo\Tool\Bundle\VersioningBundle\Command\PurgeCommand(($this->privates['monolog.logger'] ?? $this->getMonolog_LoggerService()), $b, ($this->privates['pim_versioning.event_subscriber.purge_progress_bar_advancer'] ?? ($this->privates['pim_versioning.event_subscriber.purge_progress_bar_advancer'] = new \Akeneo\Tool\Bundle\VersioningBundle\EventSubscriber\PurgeProgressBarAdvancerSubscriber())));

$instance->setName('pim:versioning:purge');

return $instance;
