You are here

trait BackendTrait in Search API Solr 4.x

Same name in this branch
  1. 4.x src/Controller/BackendTrait.php \Drupal\search_api_solr\Controller\BackendTrait
  2. 4.x src/Plugin/search_api_autocomplete/suggester/BackendTrait.php \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\BackendTrait
Same name and namespace in other branches
  1. 8.3 src/Plugin/search_api_autocomplete/suggester/BackendTrait.php \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\BackendTrait

Provides a helper method for loading the search backend.

Hierarchy

  • trait \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\BackendTrait uses \Drupal\search_api\LoggerTrait

File

src/Plugin/search_api_autocomplete/suggester/BackendTrait.php, line 12

Namespace

Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester
View source
trait BackendTrait {
  use LoggerTrait;

  /**
   * Retrieves the backend for the given index, if it supports autocomplete.
   *
   * @param \Drupal\search_api\IndexInterface $index
   *   The search index.
   *
   * @return \Drupal\search_api_solr\SolrAutocompleteInterface|null
   *   The backend plugin of the index's server, if it exists and supports
   *   autocomplete; NULL otherwise.
   */
  protected static function getBackend(IndexInterface $index) {
    try {
      if ($index
        ->hasValidServer() && ($server = $index
        ->getServerInstance()) && ($backend = $server
        ->getBackend()) && $backend instanceof SolrAutocompleteInterface && $server
        ->supportsFeature('search_api_autocomplete')) {
        return $backend;
      }
    } catch (\Exception $e) {
      watchdog_exception('search_api', $e);
    }
    return NULL;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
BackendTrait::getBackend protected static function Retrieves the backend for the given index, if it supports autocomplete.