di.xml 4.12 KB
<?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\Mview\View\State\CollectionInterface" type="Magento\Indexer\Model\ResourceModel\Mview\View\State\Collection" />
    <preference for="Magento\Framework\Mview\View\StateInterface" type="Magento\Indexer\Model\Mview\View\State" />
    <preference for="Magento\Framework\Indexer\ConfigInterface" type="Magento\Indexer\Model\Config" />
    <preference for="Magento\Framework\Indexer\IndexerInterface" type="Magento\Indexer\Model\Indexer\DependencyDecorator" />
    <preference for="Magento\Framework\Indexer\Table\StrategyInterface" type="Magento\Framework\Indexer\Table\Strategy" />
    <preference for="Magento\Framework\Indexer\StateInterface" type="Magento\Indexer\Model\Indexer\State" />
    <type name="Magento\Framework\Indexer\Table\StrategyInterface" shared="false" />
    <type name="Magento\Indexer\Model\Indexer">
        <arguments>
            <argument name="view" xsi:type="object" shared="false">Magento\Framework\Mview\View</argument>
        </arguments>
    </type>
    <type name="Magento\Indexer\Model\Config">
        <arguments>
            <argument name="configData" xsi:type="object">Magento\Indexer\Model\Config\Data\Proxy</argument>
        </arguments>
    </type>
    <type name="Magento\Indexer\Model\HandlerPool">
        <arguments>
            <argument name="defaultHandler" xsi:type="object">Magento\Indexer\Model\Handler\DefaultHandler</argument>
        </arguments>
    </type>
    <type name="Magento\Indexer\Model\Config\Data">
        <arguments>
            <argument name="stateCollection" xsi:type="object" shared="false">Magento\Indexer\Model\ResourceModel\Indexer\State\Collection</argument>
        </arguments>
    </type>
    <type name="Magento\Framework\Mview\View\Subscription">
        <arguments>
            <argument name="viewCollection" xsi:type="object" shared="false">Magento\Framework\Mview\View\CollectionInterface</argument>
        </arguments>
    </type>
    <type name="Magento\Indexer\Model\Processor">
        <plugin name="page-cache-indexer-reindex-clean-cache"
                type="Magento\Indexer\Model\Processor\CleanCache" sortOrder="10"/>
    </type>
    <type name="Magento\Indexer\Model\ProcessManager">
        <arguments>
            <argument name="threadsCount" xsi:type="init_parameter">Magento\Indexer\Model\ProcessManager::THREADS_COUNT</argument>
        </arguments>
    </type>
    <type name="Magento\Framework\Console\CommandListInterface">
        <arguments>
            <argument name="commands" xsi:type="array">
                <item name="info" xsi:type="object">Magento\Indexer\Console\Command\IndexerInfoCommand</item>
                <item name="reindex" xsi:type="object">Magento\Indexer\Console\Command\IndexerReindexCommand</item>
                <item name="set-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerSetModeCommand</item>
                <item name="show-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerShowModeCommand</item>
                <item name="status" xsi:type="object">Magento\Indexer\Console\Command\IndexerStatusCommand</item>
                <item name="reset" xsi:type="object">Magento\Indexer\Console\Command\IndexerResetStateCommand</item>
                <item name="set-dimensions-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerSetDimensionsModeCommand</item>
                <item name="show-dimensions-mode" xsi:type="object">Magento\Indexer\Console\Command\IndexerShowDimensionsModeCommand</item>
            </argument>
        </arguments>
    </type>
    <preference for="Magento\Framework\Indexer\BatchSizeManagementInterface" type="Magento\Framework\Indexer\BatchSizeManagement" />
    <type name="Magento\Indexer\Model\Indexer\DependencyDecorator">
        <arguments>
            <argument name="indexer" xsi:type="object" shared="false">Magento\Indexer\Model\Indexer</argument>
        </arguments>
    </type>
</config>