![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-theme/Model/Indexer/Design/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Theme\Model\Indexer\Design; use Magento\Framework\App\ResourceConnection; use Magento\Framework\Indexer\IndexStructureInterface; use Magento\Framework\Indexer\SaveHandler\Batch; use Magento\Framework\Indexer\SaveHandler\Grid; use Magento\Framework\Indexer\SaveHandler\IndexerInterface; use Magento\Framework\Indexer\ScopeResolver\FlatScopeResolver; use Magento\Framework\Indexer\ScopeResolver\IndexScopeResolver; use Magento\Framework\Search\Request\Dimension; class IndexerHandler extends Grid { /** * @var FlatScopeResolver */ private $flatScopeResolver; /** * @param IndexStructureInterface $indexStructure * @param ResourceConnection $resource * @param Batch $batch * @param IndexScopeResolver $indexScopeResolver * @param FlatScopeResolver $flatScopeResolver * @param array $data * @param int $batchSize */ public function __construct( IndexStructureInterface $indexStructure, ResourceConnection $resource, Batch $batch, IndexScopeResolver $indexScopeResolver, FlatScopeResolver $flatScopeResolver, array $data, $batchSize = 100 ) { parent::__construct( $indexStructure, $resource, $batch, $indexScopeResolver, $flatScopeResolver, $data, $batchSize ); $this->flatScopeResolver = $flatScopeResolver; } /** * Clean index table by deleting all records unconditionally or create the index table if not exists * * @param Dimension[] $dimensions * @return IndexerInterface */ public function cleanIndex($dimensions) { $tableName = $this->flatScopeResolver->resolve($this->getIndexName(), $dimensions); if ($this->connection->isTableExists($tableName)) { $this->connection->delete($tableName); } else { $this->indexStructure->create($this->getIndexName(), $this->fields, $dimensions); } return $this; } }