function drush_search_api_federated_solr_fields in Search API Federated Solr 7.2
Same name and namespace in other branches
- 8.3 search_api_federated_solr.drush.inc \drush_search_api_federated_solr_fields()
- 8.2 search_api_federated_solr.drush.inc \drush_search_api_federated_solr_fields()
- 7.3 search_api_federated_solr.drush.inc \drush_search_api_federated_solr_fields()
- 4.x search_api_federated_solr.drush.inc \drush_search_api_federated_solr_fields()
List all fields, as they map to solr machine names, for a given index.
File
- ./
search_api_federated_solr.drush.inc, line 29 - Drush commands for Search API Federated Solr.
Code
function drush_search_api_federated_solr_fields() {
if (search_api_federated_solr_drush_static(__FUNCTION__)) {
return;
}
$search_index = variable_get('search_api_federated_solr_search_index');
// Get the index entity.
/** @var \SearchApiIndex $index */
$index = search_api_index_load($search_index);
if (!$index) {
drush_print(dt('The search app index could not be loaded.'));
return;
}
// Get server entity.
/** @var \SearchApiServer $server */
try {
$server = $index
->server();
} catch (SearchApiException $e) {
drush_print('The search server could not be loaded.');
return;
}
// Get the search api solr service class.
/** @var \SearchApiSolrService $solr */
$solr = new SearchApiSolrService($server);
// If this is an acquia environment and if it is an acquia search server
// get the Acquia Search Service instead.
if (isset($_ENV['AH_SITE_ENVIRONMENT']) && module_exists('search_api_acquia') && $server->class === 'acquia_search_service') {
/** @var \SearchApiAcquiaSearchService $solr */
$solr = new SearchApiAcquiaSearchService($server);
}
// Get the index field names as they map to solr names.
$field_names = $solr
->getFieldNames($index);
$rows[] = array(
dt('Index Field Machine Name'),
dt('| Solr Field Machine Name'),
);
$rows[] = array(
dt('-------------------------'),
dt('| -----------------------'),
);
foreach ($field_names as $key => $value) {
$row = array(
$key,
'| ' . $value,
);
$rows[] = $row;
}
drush_print_table($rows);
}