Skip to content

Latest commit

 

History

History
60 lines (43 loc) · 1.72 KB

File metadata and controls

60 lines (43 loc) · 1.72 KB
Schranz Search Logo with a Seal on it with a magnifying glass

Schranz Search SEAL
Multi Adapter



The MultiAdapter allows to write into multiple adapters.

Note: This is part of the schranz-search/schranz-search project create issues in the main repository.

Note: This project is heavily under development and any feedback is greatly appreciated.

Usage

It is mostly used in combination with the ReadWriteAdapter to still write into both indexes.

The following code shows how to create an Engine using this Adapter:

<?php

use Schranz\Search\SEAL\Adapter\Elasticsearch\ElasticsearchAdapter;
use Schranz\Search\SEAL\Adapter\Multi\MultiAdapter;
use Schranz\Search\SEAL\Adapter\ReadWrite\ReadWriteAdapter;
use Schranz\Search\SEAL\Engine;

$readAdapter = new ElasticsearchAdapter(/* .. */); // can be any adapter
$writeAdapter = new ElasticsearchAdapter(/* .. */); // can be any adapter

$engine = new Engine(
    new ReadWriteAdapter(
        $readAdapter,
        new MultiAdapter(
            $readAdapter,
            $writeAdapter,
        ),
    ),
    $schema,
);

Via DSN for your favorite framework:

multi://readAdapter?adapters[]=writeAdapter
read-write://readAdapter?write=multiAdapter

Note The MultiAdapter does not support the search method and so the ReadWriteAdapter is required.

Authors