Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
IndexersStatesApplyFixture.php
Go to the documentation of this file.
1 <?php
7 namespace Magento\Setup\Fixtures;
8 
13 {
17  protected $priority = -1;
18 
22  public function execute()
23  {
24  $indexers = $this->fixtureModel->getValue('indexers', []);
25  if (!isset($indexers["indexer"]) || empty($indexers["indexer"])) {
26  return;
27  }
28 
29  $this->fixtureModel->resetObjectManager();
30 
32  $indexerRegistry = $this->fixtureModel->getObjectManager()
33  ->create(\Magento\Framework\Indexer\IndexerRegistry::class);
34 
35  foreach ($indexers["indexer"] as $indexerConfig) {
36  $indexer = $indexerRegistry->get($indexerConfig['id']);
37  $indexer->setScheduled($indexerConfig['set_scheduled'] == "true");
38  }
39 
40  $this->fixtureModel->getObjectManager()->get(\Magento\Framework\App\CacheInterface::class)
41  ->clean([\Magento\Framework\App\Config::CACHE_TAG]);
42  }
43 
47  public function getActionTitle()
48  {
49  return 'Indexers Mode Changes';
50  }
51 
55  public function introduceParamLabels()
56  {
57  return [];
58  }
59 }