Completed
Branch master (7f0c44)
by Artem
02:24
created

HttpFactory::createHttpClient()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 9
nc 1
nop 1
dl 0
loc 16
ccs 6
cts 6
cp 1
crap 1
rs 9.9666
c 0
b 0
f 0
1
<?php declare(strict_types=1);
2
3
namespace Gockets\Factory;
4
5
use Gockets\Model\Params;
6
use GuzzleHttp\Client as HttpClient;
7
8
/**
9
 * Http Client Factory
10
 *
11
 * Responsible for creating instance of HTTP client.
12
 *
13
 * @package Gockets\Factory
14
 * @author Artem Zakharchenko <[email protected]>
15
 */
16
class HttpFactory
17
{
18 1
    public static function createHttpClient(Params $params): HttpClient
19
    {
20 1
        $baseUri = "{$params->getHost()}:{$params->getPort()}/";
21
22
        // Communications through JSON
23
        $headers = [
24 1
            'Accept' => 'application/json',
25
            'Content-Type' => 'application/json',
26
        ];
27
28 1
        return new \GuzzleHttp\Client([
29 1
            'base_uri' => $baseUri,
30
            'defaults' => [
31 1
                'headers' => $headers,
32
            ],
33
            'http_errors' => false,
34
        ]);
35
    }
36
}
37