HttpFactory   A
last analyzed

Complexity

Total Complexity 7

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 3
Bugs 0 Features 0
Metric Value
wmc 7
eloc 8
c 3
b 0
f 0
dl 0
loc 35
ccs 14
cts 14
cp 1
rs 10

7 Methods

Rating   Name   Duplication   Size   Complexity  
A locate() 0 3 1
A streamFactory() 0 3 1
A serverRequestFactory() 0 3 1
A uploadedFileFactory() 0 3 1
A responseFactory() 0 3 1
A uriFactory() 0 3 1
A requestFactory() 0 3 1
1
<?php
2
declare(strict_types=1);
3
4
namespace Http\Factory\Discovery;
5
6
use Psr\Http\Message\RequestFactoryInterface;
7
use Psr\Http\Message\ResponseFactoryInterface;
8
use Psr\Http\Message\ServerRequestFactoryInterface;
9
use Psr\Http\Message\StreamFactoryInterface;
10
use Psr\Http\Message\UploadedFileFactoryInterface;
11
use Psr\Http\Message\UriFactoryInterface;
12
13
final class HttpFactory extends DiscoveryCache
14
{
15 1
    public static function requestFactory(): RequestFactoryInterface
16
    {
17 1
        return self::makeInstance(RequestFactoryInterface::class);
18
    }
19
20 1
    public static function responseFactory(): ResponseFactoryInterface
21
    {
22 1
        return self::makeInstance(ResponseFactoryInterface::class);
23
    }
24
25 1
    public static function serverRequestFactory(): ServerRequestFactoryInterface
26
    {
27 1
        return self::makeInstance(ServerRequestFactoryInterface::class);
28
    }
29
30 1
    public static function streamFactory(): StreamFactoryInterface
31
    {
32 1
        return self::makeInstance(StreamFactoryInterface::class);
33
    }
34
35 1
    public static function uploadedFileFactory(): UploadedFileFactoryInterface
36
    {
37 1
        return self::makeInstance(UploadedFileFactoryInterface::class);
38
    }
39
40 1
    public static function uriFactory(): UriFactoryInterface
41
    {
42 1
        return self::makeInstance(UriFactoryInterface::class);
43
    }
44
45 6
    protected static function locate(string $interface): string
46
    {
47 6
        return FactoryLocator::locate($interface);
48
    }
49
}
50