|
- <?xml version="1.0"?>
- <!--
- /**
- * Copyright © Magento, Inc. All rights reserved.
- * See COPYING.txt for license details.
- */
- -->
- <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
- <preference for="Magento\Framework\Search\Adapter\OptionsInterface" type="Magento\CatalogSearch\Model\Adapter\Options" />
- <preference for="Magento\CatalogSearch\Model\Indexer\IndexSwitcherInterface" type="Magento\CatalogSearch\Model\Indexer\IndexSwitcherProxy"/>
- <preference for="Magento\CatalogSearch\Model\Adapter\Aggregation\RequestCheckerInterface" type="Magento\CatalogSearch\Model\Adapter\Aggregation\RequestCheckerComposite"/>
- <preference for="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchCriteriaResolverInterface" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchCriteriaResolver"/>
- <preference for="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchResultApplierInterface" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\SearchResultApplier"/>
- <preference for="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\TotalRecordsResolverInterface" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection\TotalRecordsResolver"/>
- <preference for="Magento\CatalogSearch\Model\Search\ItemCollectionProviderInterface" type="Magento\CatalogSearch\Model\Search\ItemCollectionProvider"/>
- <preference for="Magento\Framework\Indexer\IndexStructureInterface" type="Magento\CatalogSearch\Model\Indexer\IndexStructure" />
- <preference for="Magento\CatalogSearch\Model\Search\Request\ModifierInterface" type="Magento\CatalogSearch\Model\Search\Request\ModifierComposite" />
- <type name="Magento\Catalog\Model\Indexer\Product\Full">
- <arguments>
- <argument name="indexerList" xsi:type="array">
- <item name="catalogsearch_fulltext" xsi:type="const">Magento\CatalogSearch\Model\Indexer\Fulltext::INDEXER_ID</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\Framework\Module\Setup\Migration">
- <arguments>
- <argument name="compositeModules" xsi:type="array">
- <item name="catalogsearch" xsi:type="string">Magento_CatalogSearch</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\Catalog\Model\ResourceModel\Product">
- <plugin name="catalogsearchFulltextProduct" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product"/>
- </type>
- <type name="Magento\Catalog\Model\ResourceModel\Category">
- <plugin name="catalogsearchFulltextCategory" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Category"/>
- </type>
- <type name="Magento\Catalog\Model\Product\Action">
- <plugin name="catalogsearchFulltextMassAction" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product\Action"/>
- </type>
- <type name="Magento\Catalog\Model\Indexer\Product\Category\Action\Rows">
- <plugin name="catalogsearchFulltextCategoryAssignment" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Product\Category\Action\Rows"/>
- </type>
- <type name="Magento\Store\Model\ResourceModel\Store">
- <plugin name="catalogsearchFulltextIndexerStoreView" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Store\View" />
- </type>
- <type name="Magento\Store\Model\ResourceModel\Group">
- <plugin name="catalogsearchFulltextIndexerStoreGroup" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Store\Group"/>
- </type>
- <type name="Magento\Catalog\Model\ResourceModel\Attribute">
- <plugin name="catalogsearchFulltextIndexerAttribute" type="Magento\CatalogSearch\Model\Indexer\Fulltext\Plugin\Attribute"/>
- <plugin name="catalogsearchAttributeSearchWeightCache" type="Magento\CatalogSearch\Model\Attribute\SearchWeight"/>
- </type>
- <type name="Magento\Framework\Search\EntityMetadata" />
- <virtualType name="Magento\Framework\Search\ProductEntityMetadata" type="Magento\Framework\Search\EntityMetadata">
- <arguments>
- <argument name="entityId" xsi:type="string">entity_id</argument>
- </arguments>
- </virtualType>
- <type name="Magento\Framework\Search\Request\Config\FilesystemReader">
- <plugin name="catalogSearchDynamicFields" type="Magento\CatalogSearch\Model\Search\ReaderPlugin" />
- </type>
- <type name="Magento\Backend\Controller\Adminhtml\Index\GlobalSearch">
- <arguments>
- <argument name="searchModules" xsi:type="array">
- <item name="products" xsi:type="array">
- <item name="class" xsi:type="string">Magento\CatalogSearch\Model\Search\Catalog</item>
- <item name="acl" xsi:type="string">Magento_Catalog::catalog</item>
- </item>
- <item name="categories" xsi:type="array">
- <item name="class" xsi:type="string">Magento\CatalogSearch\Model\Search\Category</item>
- <item name="acl" xsi:type="string">Magento_Catalog::categories</item>
- </item>
- </argument>
- </arguments>
- </type>
- <preference for="Magento\Search\Model\SearchCollectionInterface" type="Magento\CatalogSearch\Model\ResourceModel\Search\Collection" />
- <type name="Magento\Catalog\Model\Layer\Search\CollectionFilter">
- <plugin name="searchQuery" type="Magento\CatalogSearch\Model\Layer\Search\Plugin\CollectionFilter" />
- </type>
- <virtualType name="categoryFilterList" type="Magento\Catalog\Model\Layer\FilterList">
- <arguments>
- <argument name="filters" xsi:type="array">
- <item name="attribute" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Attribute</item>
- <item name="price" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Price</item>
- <item name="decimal" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Decimal</item>
- <item name="category" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Category</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="searchFilterList" type="Magento\Catalog\Model\Layer\FilterList">
- <arguments>
- <argument name="filters" xsi:type="array">
- <item name="attribute" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Attribute</item>
- <item name="price" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Price</item>
- <item name="decimal" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Decimal</item>
- <item name="category" xsi:type="string">Magento\CatalogSearch\Model\Layer\Filter\Category</item>
- </argument>
- </arguments>
- </virtualType>
- <virtualType name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\CollectionFactory" type="Magento\Catalog\Model\ResourceModel\Product\CollectionFactory">
- <arguments>
- <argument name="instanceName" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection</argument>
- </arguments>
- </virtualType>
- <type name="Magento\CatalogSearch\Model\Layer\Category\ItemCollectionProvider">
- <arguments>
- <argument name="collectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Fulltext\CollectionFactory</argument>
- </arguments>
- </type>
-
- <virtualType name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollection" type="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection">
- <arguments>
- <argument name="searchRequestName" xsi:type="string">quick_search_container</argument>
- </arguments>
- </virtualType>
-
- <virtualType name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory" type="Magento\Catalog\Model\ResourceModel\Product\CollectionFactory">
- <arguments>
- <argument name="instanceName" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollection</argument>
- </arguments>
- </virtualType>
-
- <virtualType name="Magento\CatalogSearch\Model\Layer\Search\ItemCollectionProvider" type="Magento\Catalog\Model\Layer\Search\ItemCollectionProvider">
- <arguments>
- <argument name="collectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Fulltext\SearchCollectionFactory</argument>
- </arguments>
- </virtualType>
-
- <virtualType name="Magento\CatalogSearch\Model\Advanced\ItemCollectionProvider" type="Magento\Catalog\Model\Layer\Search\ItemCollectionProvider">
- <arguments>
- <argument name="collectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory</argument>
- </arguments>
- </virtualType>
- <virtualType name="Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory" type="Magento\Catalog\Model\ResourceModel\Product\CollectionFactory">
- <arguments>
- <argument name="instanceName" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Advanced\Collection</argument>
- </arguments>
- </virtualType>
- <type name="Magento\CatalogSearch\Model\Advanced">
- <arguments>
- <argument name="productCollectionFactory" xsi:type="object">Magento\CatalogSearch\Model\ResourceModel\Advanced\CollectionFactory</argument>
- <argument name="collectionProvider" xsi:type="object">Magento\CatalogSearch\Model\Search\ItemCollectionProviderInterface</argument>
- </arguments>
- </type>
- <virtualType name="Magento\CatalogSearch\Model\Layer\Category\Context" type="Magento\Catalog\Model\Layer\Category\Context">
- <arguments>
- <argument name="collectionProvider" xsi:type="object">Magento\CatalogSearch\Model\Layer\Category\ItemCollectionProvider</argument>
- </arguments>
- </virtualType>
- <virtualType name="Magento\CatalogSearch\Model\Layer\Search\Context" type="Magento\Catalog\Model\Layer\Search\Context">
- <arguments>
- <argument name="collectionProvider" xsi:type="object">Magento\CatalogSearch\Model\Layer\Search\ItemCollectionProvider</argument>
- <argument name="stateKey" xsi:type="object">Magento\CatalogSearch\Model\Layer\Search\StateKey</argument>
- </arguments>
- </virtualType>
- <type name="Magento\Catalog\Model\Layer\Category">
- <arguments>
- <argument name="context" xsi:type="object">Magento\CatalogSearch\Model\Layer\Category\Context</argument>
- </arguments>
- </type>
- <type name="Magento\Catalog\Model\Layer\Search">
- <arguments>
- <argument name="context" xsi:type="object">Magento\CatalogSearch\Model\Layer\Search\Context</argument>
- </arguments>
- </type>
- <type name="Magento\Search\Model\Autocomplete">
- <arguments>
- <argument name="dataProviders" xsi:type="array">
- <item name="10" xsi:type="object">Magento\CatalogSearch\Model\Autocomplete\DataProvider</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\Framework\Search\Adapter\Aggregation\AggregationResolver">
- <arguments>
- <argument name="resolvers" xsi:type="array">
- <item name="catalogsearch_fulltext" xsi:type="object">Magento\CatalogSearch\Model\Adapter\Aggregation\AggregationResolver</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Search\RequestGenerator\GeneratorResolver">
- <arguments>
- <argument name="defaultGenerator" xsi:type="object">\Magento\CatalogSearch\Model\Search\RequestGenerator\General</argument>
- <argument name="generators" xsi:type="array">
- <item name="decimal" xsi:type="object">Magento\CatalogSearch\Model\Search\RequestGenerator\Decimal</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Adapter\Aggregation\RequestCheckerComposite">
- <arguments>
- <argument name="queryCheckers" xsi:type="array">
- <item name="advanced_search_container" xsi:type="object">\Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\AdvancedSearch</item>
- <item name="catalog_view_container" xsi:type="object">\Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\CatalogView</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\AdvancedSearch">
- <arguments>
- <argument name="name" xsi:type="string">advanced_search_container</argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Adapter\Aggregation\Checker\Query\CatalogView">
- <arguments>
- <argument name="name" xsi:type="string">catalog_view_container</argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Indexer\Fulltext">
- <arguments>
- <argument name="dimensionProvider" xsi:type="object" shared="false">
- Magento\Store\Model\StoreDimensionProvider
- </argument>
- </arguments>
- </type>
- <type name="Magento\Eav\Model\Entity\Setup\PropertyMapper\Composite">
- <arguments>
- <argument name="propertyMappers" xsi:type="array">
- <item name="catalog_search" xsi:type="string">Magento\CatalogSearch\Model\ResourceModel\Setup\PropertyMapper</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Indexer\Fulltext\Action\DataProvider">
- <plugin name="stockedProductsFilterPlugin" type="Magento\CatalogSearch\Model\Indexer\Plugin\StockedProductsFilterPlugin"/>
- </type>
- <type name="Magento\CatalogSearch\Model\Indexer\Fulltext\Action\Full">
- <arguments>
- <!-- @deprecated parameter indexIteratorFactory has been deprecated and not in use now -->
- <argument name="indexIteratorFactory" xsi:type="null" />
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\ResourceModel\Advanced\Collection">
- <arguments>
- <!-- @deprecated parameter requestBuilder has been deprecated and not in use now -->
- <argument name="requestBuilder" xsi:type="null" />
- <!-- @deprecated parameter searchEngine has been deprecated and not in use now -->
- <argument name="searchEngine" xsi:type="null" />
- <!-- @deprecated parameter temporaryStorageFactory has been deprecated and not in use now -->
- <argument name="temporaryStorageFactory" xsi:type="null" />
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\ResourceModel\Fulltext\Collection">
- <arguments>
- <!-- @deprecated parameter catalogSearchData has been deprecated and not in use now -->
- <argument name="catalogSearchData" xsi:type="null" />
- <!-- @deprecated parameter requestBuilder has been deprecated and not in use now -->
- <argument name="requestBuilder" xsi:type="null" />
- <!-- @deprecated parameter searchEngine has been deprecated and not in use now -->
- <argument name="searchEngine" xsi:type="null" />
- <!-- @deprecated parameter temporaryStorageFactory has been deprecated and not in use now -->
- <argument name="temporaryStorageFactory" xsi:type="null" />
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Search\Request\ModifierComposite">
- <arguments>
- <argument name="modifiers" xsi:type="array">
- <item name="search" xsi:type="object">Magento\CatalogSearch\Model\Search\Request\SearchModifier</item>
- <item name="partial_search" xsi:type="object">Magento\CatalogSearch\Model\Search\Request\PartialSearchModifier</item>
- <item name="match_queries" xsi:type="object">Magento\CatalogSearch\Model\Search\Request\MatchQueriesModifier</item>
- </argument>
- </arguments>
- </type>
- <type name="Magento\CatalogSearch\Model\Search\Request\MatchQueriesModifier">
- <arguments>
- <argument name="queries" xsi:type="array">
- <item name="partial_search" xsi:type="array">
- <item name="name" xsi:type="array">
- <item name="analyzer" xsi:type="string">prefix_search</item>
- </item>
- <item name="sku" xsi:type="array">
- <item name="analyzer" xsi:type="string">sku_prefix_search</item>
- </item>
- </item>
- </argument>
- </arguments>
- </type>
- </config>
|