meilisearch/Classes/System/Meilisearch/RequestFactory.php

45 lines
1.3 KiB
PHP
Raw Normal View History

2021-04-17 00:26:33 +02:00
<?php
declare(strict_types=1);
/*
* This file is part of the TYPO3 CMS project.
*
* It is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, either version 2
* of the License, or any later version.
*
* For the full copyright and license information, please read the
* LICENSE.txt file that was distributed with this source code.
*
* The TYPO3 project - inspiring people to share!
*/
2021-04-17 21:20:54 +02:00
namespace WapplerSystems\Meilisearch\System\Meilisearch;
2021-04-17 00:26:33 +02:00
use GuzzleHttp\Client as GuzzleClient;
use Psr\Http\Message\ResponseInterface;
use TYPO3\CMS\Core\Http\RequestFactory as CoreRequestFactory;
use TYPO3\CMS\Core\Utility\GeneralUtility;
class RequestFactory extends CoreRequestFactory
{
protected $clientOptions = [];
/**
* RequestFactory constructor.
* @param array $clientOptions
*/
public function __construct(array $clientOptions)
{
$this->clientOptions = $clientOptions;
}
public function request(string $uri, string $method = 'GET', array $options = []): ResponseInterface
{
/* @var GuzzleClient $client */
$client = GeneralUtility::makeInstance(GuzzleClient::class, $this->clientOptions);
return $client->request($method, $uri, $options);
}
}