You are here

public function AcquiaSearchCommands::searchSolrCoresList in Acquia Search 3.x

Same name and namespace in other branches
  1. 2.x src/Commands/AcquiaSearchCommands.php \Drupal\acquia_search\Commands\AcquiaSearchCommands::searchSolrCoresList()

Lists available Acquia search cores.

@option format Optional. Format may be json, print_r, or var_dump. Defaults to print_r.

@command acquia:search-solr:cores

@aliases acquia:ss:cores

@usage acquia:search-solr:cores Lists all available Acquia search cores. @usage acquia:ss:cores --format=json Lists all available Acquia search cores in JSON format.

@validate-module-enabled acquia_search

Parameters

array $options: An associative array of options whose values come from cli, aliases, config, etc.

Throws

\Exception If no cores available.

File

src/Commands/AcquiaSearchCommands.php, line 67

Class

AcquiaSearchCommands
A Drush commandfile.

Namespace

Drupal\acquia_search\Commands

Code

public function searchSolrCoresList(array $options = [
  'format' => NULL,
]) {
  if (!($available_cores = Runtime::getAcquiaSearchApiClient(Storage::getUuid())
    ->getSearchIndexes(Storage::getIdentifier()))) {
    throw new \Exception('No Acquia search cores available');
  }
  $available_cores = array_keys($available_cores);
  switch ($options['format']) {
    case 'json':
      $this
        ->output()
        ->writeln(Json::encode($available_cores));
      break;
    case 'var_dump':
    case 'var_export':
      $this
        ->output()
        ->writeln(var_export($available_cores, TRUE));
      break;
    case 'print_r':
    default:
      $this
        ->output()
        ->writeln(print_r($available_cores, TRUE));
      break;
  }
}