You are here

public function SearchApiAlgoliaBackend::deleteAllIndexItems in Search API Algolia 2.0.x

Same name and namespace in other branches
  1. 8 src/Plugin/search_api/backend/SearchApiAlgoliaBackend.php \Drupal\search_api_algolia\Plugin\search_api\backend\SearchApiAlgoliaBackend::deleteAllIndexItems()
  2. 3.0.x src/Plugin/search_api/backend/SearchApiAlgoliaBackend.php \Drupal\search_api_algolia\Plugin\search_api\backend\SearchApiAlgoliaBackend::deleteAllIndexItems()
1 call to SearchApiAlgoliaBackend::deleteAllIndexItems()
SearchApiAlgoliaBackend::removeIndex in src/Plugin/search_api/backend/SearchApiAlgoliaBackend.php

File

src/Plugin/search_api/backend/SearchApiAlgoliaBackend.php, line 420

Class

SearchApiAlgoliaBackend
Class SearchApiAlgoliaBackend.

Namespace

Drupal\search_api_algolia\Plugin\search_api\backend

Code

public function deleteAllIndexItems(IndexInterface $index = NULL, $datasource_id = NULL) {
  if ($index) {
    if ($this->languageManager
      ->isMultilingual()) {
      foreach ($this->languageManager
        ->getLanguages() as $language) {

        // Connect to the Algolia service.
        $this
          ->connect($index, '', $language
          ->getId());

        // Clearing the full index.
        $response = $this
          ->getAlgoliaIndex()
          ->clearIndex();
        $this
          ->getLogger()
          ->notice('Deletion requested for full index on Algolia for Language: @language, Response: @response.', [
          '@response' => json_encode($response),
          '@language' => $language
            ->getId(),
        ]);
      }
    }
    else {

      // Connect to the Algolia service.
      $this
        ->connect($index);

      // Clearing the full index.
      $response = $this
        ->getAlgoliaIndex()
        ->clearIndex();
      $this
        ->getLogger()
        ->notice('Deletion requested for full index on Algolia. Response: @response.', [
        '@response' => json_encode($response),
      ]);
    }
  }
}