Source of file BulkIndexer.php
Size: 1,511 Bytes - Last Modified: 2021-12-23T10:38:36+00:00
/var/www/docs.ssmods.com/process/src/tests/Mock/BulkIndexer.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 | <?php declare(strict_types = 1); /** * Created by PhpStorm. * User: gordon * Date: 24/3/2561 * Time: 20:36 น. */ namespace Suilven\FreeTextSearch\Tests\Mock; use SilverStripe\ORM\DataObject; use Suilven\FreeTextSearch\Helper\IndexingHelper; // @phpcs:disable SlevomatCodingStandard.Functions.UnusedParameter.UnusedParameter class BulkIndexer implements \Suilven\FreeTextSearch\Interfaces\BulkIndexer { /** @var string */ private static $indexName; /** @var array<string, (string|int|float|bool)>|null */ private static $payload = []; public function addDataObject(DataObject $dataObject): void { $helper = new IndexingHelper(); $payload = $helper->getFieldsToIndex($dataObject); // as we are not indexing against a real free text search engine, add the ID into the payload for testing $payload['ID'] = $dataObject->ID; self::$payload[] = $payload; } public function indexDataObjects(): int { return \count(\array_keys(self::$payload)); } public function setIndex(string $newIndex): void { self::$indexName = $newIndex; } public static function getIndexName(): string { return self::$indexName; } /** @return array<string, (string|int|float|bool)>|null */ public static function getIndexedPayload(): ?array { return self::$payload; } public static function resetIndexedPayload(): void { self::$payload = []; } } |