<?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 getAkeneoCommunicationChannel_InternalApi_Announcement_HasNewAnnouncementsService extends KernelProdContainer
{
    /*
     * Gets the public 'akeneo_communication_channel.internal_api.announcement.has_new_announcements' shared service.
     *
     * @return \Akeneo\Platform\CommunicationChannel\Infrastructure\Delivery\InternalApi\Announcement\HasNewAnnouncementsAction
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/CommunicationChannelBundle/back/Infrastructure/Delivery/InternalApi/Announcement/HasNewAnnouncementsAction.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/CommunicationChannelBundle/back/Application/Announcement/Query/HasNewAnnouncementsHandler.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/CommunicationChannelBundle/back/Domain/Announcement/Query/FindNewAnnouncementIdsInterface.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Akeneo/Platform/Bundle/CommunicationChannelBundle/back/Infrastructure/CommunicationChannel/Api/ApiFindNewAnnouncementIds.php';

        return $container->services['akeneo_communication_channel.internal_api.announcement.has_new_announcements'] = new \Akeneo\Platform\CommunicationChannel\Infrastructure\Delivery\InternalApi\Announcement\HasNewAnnouncementsAction(($container->services['pim_catalog.version_provider'] ?? $container->load('getPimCatalog_VersionProviderService')), ($container->services['pim_user.context.user'] ?? $container->getPimUser_Context_UserService()), new \Akeneo\Platform\CommunicationChannel\Application\Announcement\Query\HasNewAnnouncementsHandler(new \Akeneo\Platform\CommunicationChannel\Infrastructure\CommunicationChannel\Api\ApiFindNewAnnouncementIds($container->getEnv('COMM_PANEL_API_URL')), ($container->privates['akeneo_communication_channel.query.dbal.find_viewed_announcement_ids'] ?? $container->load('getAkeneoCommunicationChannel_Query_Dbal_FindViewedAnnouncementIdsService'))));
    }
}
