File: /var/www/vhost/disk-apps/magento.bikenow.co/vendor/magento/module-catalog-search/etc/di.xml
<?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" />
<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>
</config>