<?php

namespace ContainerRBLbIxO;

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

/**
 * @internal This class has been auto-generated by the Symfony Dependency Injection Component.
 */
class getMassiveSearch_ObjectToDocumentConverterService extends App_KernelDevDebugContainer
{
    /**
     * Gets the private 'massive_search.object_to_document_converter' shared service.
     *
     * @return \Massive\Bundle\SearchBundle\Search\ObjectToDocumentConverter
     */
    public static function do($container, $lazyLoad = true)
    {
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'massive'.\DIRECTORY_SEPARATOR.'search-bundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'ObjectToDocumentConverter.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'massive'.\DIRECTORY_SEPARATOR.'search-bundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'ConverterManagerInterface.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'massive'.\DIRECTORY_SEPARATOR.'search-bundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'ConverterManager.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'massive'.\DIRECTORY_SEPARATOR.'search-bundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'ConverterInterface.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'massive'.\DIRECTORY_SEPARATOR.'search-bundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'Types'.\DIRECTORY_SEPARATOR.'DateConverter.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'massive'.\DIRECTORY_SEPARATOR.'search-bundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'Types'.\DIRECTORY_SEPARATOR.'JsonConverter.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'src'.\DIRECTORY_SEPARATOR.'Sulu'.\DIRECTORY_SEPARATOR.'Bundle'.\DIRECTORY_SEPARATOR.'SearchBundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'StructureConverter.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'src'.\DIRECTORY_SEPARATOR.'Sulu'.\DIRECTORY_SEPARATOR.'Bundle'.\DIRECTORY_SEPARATOR.'CategoryBundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'Converter'.\DIRECTORY_SEPARATOR.'CategoryConverter.php';
        include_once \dirname(__DIR__, 5).''.\DIRECTORY_SEPARATOR.'vendor'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'sulu'.\DIRECTORY_SEPARATOR.'src'.\DIRECTORY_SEPARATOR.'Sulu'.\DIRECTORY_SEPARATOR.'Bundle'.\DIRECTORY_SEPARATOR.'TagBundle'.\DIRECTORY_SEPARATOR.'Search'.\DIRECTORY_SEPARATOR.'TagsConverter.php';

        $a = ($container->services['sulu_document_manager.document_manager'] ?? self::getSuluDocumentManager_DocumentManagerService($container));

        if (isset($container->privates['massive_search.object_to_document_converter'])) {
            return $container->privates['massive_search.object_to_document_converter'];
        }
        $b = ($container->services['event_dispatcher'] ?? self::getEventDispatcherService($container));

        if (isset($container->privates['massive_search.object_to_document_converter'])) {
            return $container->privates['massive_search.object_to_document_converter'];
        }
        $c = new \Massive\Bundle\SearchBundle\Search\Converter\ConverterManager();

        $container->privates['massive_search.object_to_document_converter'] = $instance = new \Massive\Bundle\SearchBundle\Search\ObjectToDocumentConverter(($container->privates['sulu_search.search.factory'] ??= new \Sulu\Bundle\SearchBundle\Search\Factory()), ($container->privates['massive_search.metadata.field_evaluator'] ?? $container->load('getMassiveSearch_Metadata_FieldEvaluatorService')), $c);
        $d = ($container->services['massive_search.search_manager'] ?? $container->load('getMassiveSearch_SearchManagerService'));

        $c->addConverter('date', new \Massive\Bundle\SearchBundle\Search\Converter\Types\DateConverter());
        $c->addConverter('json', new \Massive\Bundle\SearchBundle\Search\Converter\Types\JsonConverter());
        $c->addConverter('structure', new \Sulu\Bundle\SearchBundle\Search\Converter\StructureConverter($a, $d, $instance, $b));
        $c->addConverter('category', new \Sulu\Bundle\CategoryBundle\Search\Converter\CategoryConverter(($container->services['sulu_category.category_manager'] ?? self::getSuluCategory_CategoryManagerService($container)), $d, $instance, $b));
        $c->addConverter('tags', new \Sulu\Bundle\TagBundle\Search\TagsConverter(($container->services['sulu_tag.tag_manager'] ?? self::getSuluTag_TagManagerService($container))));

        return $instance;
    }
}
