Skip to content
Snippets Groups Projects
SearchClient.php 756 B
Newer Older
<?php

namespace IQDEV\ElasticSearchTests\Service;

use IQDEV\ElasticSearch\SearchService;
use IQDEV\ElasticSearch\Config\BaseConfiguration as Configuration;
use IQDEV\ElasticSearchTests\Factory\ClientFactory;
Nikita Chernykh's avatar
Nikita Chernykh committed
use IQDEV\ElasticSearch\Query\SearchQueryHandler;

class SearchClient
{
    private function __construct() { }

    protected static SearchQueryHandler $oInstance;

    public static function getInstance(): SearchQueryHandler
    {
        if (!isset(static::$oInstance)) {
            static::$oInstance = new SearchQueryHandler(
                new SearchService(
                    ClientFactory::create(),
                    new Configuration(),
                )
            );
        }
        
        return static::$oInstance;
    }
}