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

HttpFactory   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 10
dl 0
loc 18
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A createHttpClient() 0 16 1
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