/** * @return void */ public function run() { if ($this->messenger instanceof MessengerInterface) { $this->messenger->debug('Running installer plugin: ' . get_class($this)); } $this->install(); }
/** * @return void */ public function install() { $this->indexMapCleaner->cleanDirectory(); $indexDefinitions = $this->indexDefinitionLoader->loadIndexDefinitions(); foreach ($indexDefinitions as $indexDefinition) { $this->messenger->info(sprintf('Generating index map classes for index: "%s"', $indexDefinition->getIndexName())); $this->indexMapGenerator->generate($indexDefinition); } }
/** * @param \Elastica\Index $index * @param string $mappingName * @param array $mappingData * * @return void */ protected function sendMapping(Index $index, $mappingName, array $mappingData) { $type = $index->getType($mappingName); $this->messenger->info(sprintf('Send mapping type "%s" (index: "%s")', $mappingName, $index->getName())); $mapping = new Mapping($type); foreach ($mappingData as $key => $value) { $mapping->setParam($key, $value); } $mapping->send(); }
/** * Logs with an arbitrary level. * * @param mixed $level * @param string $message * @param array $context * * @return void */ public function log($level, $message, array $context = []) { $this->messenger->log($level, $message, $context); }