<?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 getOroSecurity_Acl_ManagerService extends KernelProdContainer
{
    /*
     * Gets the public 'oro_security.acl.manager' shared service.
     *
     * @return \Oro\Bundle\SecurityBundle\Acl\Persistence\AclManager
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Oro/Bundle/SecurityBundle/Acl/Persistence/AbstractAclManager.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Oro/Bundle/SecurityBundle/Acl/Persistence/AclManager.php';
        include_once \dirname(__DIR__, 4).'/vendor/akeneo/pim-community-dev/src/Oro/Bundle/SecurityBundle/Acl/Persistence/AceManipulationHelper.php';

        $a = ($container->services['security.acl.provider'] ?? $container->load('getSecurity_Acl_ProviderService'));

        if (isset($container->services['oro_security.acl.manager'])) {
            return $container->services['oro_security.acl.manager'];
        }
        $b = ($container->services['event_dispatcher'] ?? $container->getEventDispatcherService());

        if (isset($container->services['oro_security.acl.manager'])) {
            return $container->services['oro_security.acl.manager'];
        }

        return $container->services['oro_security.acl.manager'] = new \Oro\Bundle\SecurityBundle\Acl\Persistence\AclManager(($container->privates['oro_security.acl.object_identity_factory'] ?? $container->getOroSecurity_Acl_ObjectIdentityFactoryService()), ($container->privates['oro_security.acl.extension_selector'] ?? $container->getOroSecurity_Acl_ExtensionSelectorService()), $a, new \Oro\Bundle\SecurityBundle\Acl\Persistence\AceManipulationHelper(), 'Oro\\Bundle\\SecurityBundle\\Acl\\Persistence\\AclPrivilegeRepository', $b);
    }
}
