h69/content-mapping-adapter-elasticsearch

Adapter for the elasticsearch-php client inside the h69/content-mapping mini framework.

1.0.0 2016-09-03 15:37 UTC

This package is auto-updated.

Last update: 2022-04-21 14:23:12 UTC


README

Build Status Coverage Status

Adapter for the elasticsearch-php client inside the h69/content-mapping mini framework.

Installation

composer require h69/content-mapping-adapter-elasticsearch

Usage

use Elasticsearch\ClientBuilder;
use H69\ContentMapping\Synchronizer;
use H69\ContentMapping\Elasticsearch\Adapter as ElasticsearchAdapter;

$elasticsearchClient = ClientBuilder::create()->build();
$elasticsearchIndex = 'myIndex';

$sourceAdapter = ...;
$destinationAdapter = new ElasticsearchAdapter($elasticsearchClient, $elasticsearchIndex);
$typeToSynchronize = 'pages';

$synchronizer = new Synchronizer($sourceAdapter, $destinationAdapter);
$synchronizer->synchronize($typeToSynchronize, function($objectA, $objectB){
    ...
    //return Result::unchanged();
    return Result::changed($updatedObjectB);
});

Credits, Copyright and License

This project/copy was started and developed by h69 Copyright 2016. Code released under the MIT license.