private function populateIndex(OutputInterface $output, $index, $reset) { $index = $this->indexManager->getById($index); if ($reset) { $output->writeln(sprintf('<info>Resetting</info> <comment>%s</comment>', $index->getId())); $this->resetter->resetIndex($index->getId()); } $provider = $this->providerRegistry->getIndexProvider($index->getId()); $loggerClosure = function ($message) use($output, $index) { $output->writeln(sprintf('<info>Populating</info> %s, %s', $index->getId(), $message)); }; $provider->populate($loggerClosure); $output->writeln(sprintf('<info>Refreshing</info> <comment>%s</comment>', $index->getId())); }