search_api_meilisearch-1.0.x-dev/modules/search_api_meilisearch_autocomplete/src/EventSubscriber/DeterminingServerFeaturesSubscriber.php

modules/search_api_meilisearch_autocomplete/src/EventSubscriber/DeterminingServerFeaturesSubscriber.php
<?php

namespace Drupal\search_api_meilisearch_autocomplete\EventSubscriber;

use Drupal\search_api\Event\DeterminingServerFeaturesEvent;
use Drupal\search_api\Event\SearchApiEvents;
use Drupal\search_api_meilisearch\Plugin\search_api\backend\SearchApiMeilisearchBackend;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;

/**
 * Adds autocomplete functionality to the list of supported features.
 */
class DeterminingServerFeaturesSubscriber implements EventSubscriberInterface {

  /**
   * Adds autocomplete functionality to the list of supported features.
   *
   * @param \Drupal\search_api\Event\DeterminingServerFeaturesEvent $event
   *   The server features alter event.
   *
   * @throws \Drupal\search_api\SearchApiException
   */
  public function onDetermine(DeterminingServerFeaturesEvent $event): void {
    $backend = $event->getServer()->getBackend();
    if ($backend instanceof SearchApiMeilisearchBackend) {
      $features = &$event->getFeatures();
      $features[] = 'search_api_autocomplete';
    }
  }

  /**
   * {@inheritdoc}
   */
  public static function getSubscribedEvents(): array {
    return [
      SearchApiEvents::DETERMINING_SERVER_FEATURES => 'onDetermine',
    ];
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc