<?php

namespace ContainerFRqH3nt;

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 getContao_CronService extends Contao_ManagerBundle_HttpKernel_ContaoKernelDevDebugContainer
{
    /**
     * Gets the public 'contao.cron' shared service.
     *
     * @return \Contao\CoreBundle\Cron\Cron
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 4).'/vendor/contao/core-bundle/src/Cron/Cron.php';
        include_once \dirname(__DIR__, 4).'/vendor/contao/core-bundle/src/Cron/CronJob.php';
        include_once \dirname(__DIR__, 4).'/vendor/contao/core-bundle/src/Cron/LegacyCron.php';
        include_once \dirname(__DIR__, 4).'/vendor/contao/core-bundle/src/Cron/PurgeExpiredDataCron.php';
        include_once \dirname(__DIR__, 4).'/vendor/contao/core-bundle/src/Cron/PurgePreviewLinksCron.php';

        $container->services['contao.cron'] = $instance = new \Contao\CoreBundle\Cron\Cron(function () use ($container) {
            return ($container->privates['contao.repository.cron_job'] ?? $container->load('getContao_Repository_CronJobService'));
        }, function () use ($container) {
            return ($container->services['doctrine.orm.default_entity_manager'] ?? $container->load('getDoctrine_Orm_DefaultEntityManagerService'));
        }, ($container->privates['monolog.logger'] ?? $container->getMonolog_LoggerService()));

        $a = ($container->services['contao.framework'] ?? $container->getContao_FrameworkService());

        $b = new \Contao\CoreBundle\Cron\LegacyCron($a);
        $c = ($container->services['doctrine.dbal.default_connection'] ?? $container->getDoctrine_Dbal_DefaultConnectionService());

        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob($b, '* * * * *', 'onMinutely'));
        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob($b, '@hourly', 'onHourly'));
        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob($b, '@daily', 'onDaily'));
        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob($b, '@weekly', 'onWeekly'));
        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob($b, '@monthly', 'onMonthly'));
        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob(new \Contao\CoreBundle\Cron\PurgeExpiredDataCron($a, $c), '@hourly', 'onHourly'));
        $instance->addCronJob(new \Contao\CoreBundle\Cron\CronJob(new \Contao\CoreBundle\Cron\PurgePreviewLinksCron($c), '@daily', NULL));

        return $instance;
    }
}
