function acquia_search_search_api_server_load in Acquia Connector 8
Implements hook_search_api_server_load().
Flag when a certain server should be enforcing read-only mode.
Throws
\Drupal\search_api\SearchApiException
File
- acquia_search/
acquia_search.module, line 205 - Integration between Acquia Drupal and Acquia's hosted solr search service.
Code
function acquia_search_search_api_server_load($entities) {
$acquia_servers = array_filter($entities, function ($server) {
/** @var \Drupal\search_api\Entity\Server $server */
return acquia_search_is_acquia_server($server
->getBackendConfig());
});
$core_service = acquia_search_get_core_service();
/** @var \Drupal\search_api\Entity\Server $server */
foreach ($acquia_servers as $server) {
/** @var \Drupal\search_api_solr\Plugin\search_api\backend\SearchApiSolrBackend $backend */
$backend = $server
->getBackend();
$connector_config = $backend
->getSolrConnector()
->getConfiguration();
// Set a list of eligible cores.
$connector_config['acquia_search_possible_cores'] = $core_service
->getListOfPossibleCores();
unset($connector_config['overridden_by_acquia_search']);
if (acquia_search_should_set_read_only_mode()) {
$connector_config['overridden_by_acquia_search'] = ACQUIA_SEARCH_AUTO_OVERRIDE_READ_ONLY;
}
$backend
->getSolrConnector()
->setConfiguration($connector_config);
}
}