StatusRetrieverFallbackFactory   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 48
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 7
c 1
b 0
f 0
dl 0
loc 48
rs 10
wmc 5

5 Methods

Rating   Name   Duplication   Size   Complexity  
A hasApiResourceRetrieverInstance() 0 3 1
A __construct() 0 3 1
A hasApiResourcePersisterInstance() 0 3 1
A getApiResourceRetrieverInstance() 0 3 1
A getApiResourcePersisterInstance() 0 3 1
1
<?php
2
3
namespace Apie\StatusCheckPlugin\ResourceFactories;
4
5
use Apie\Core\Exceptions\BadConfigurationException;
6
use Apie\Core\Interfaces\ApiResourceFactoryInterface;
7
use Apie\Core\Interfaces\ApiResourcePersisterInterface;
8
use Apie\Core\Interfaces\ApiResourceRetrieverInterface;
9
use Apie\StatusCheckPlugin\DataLayers\StatusCheckRetriever;
10
11
class StatusRetrieverFallbackFactory implements ApiResourceFactoryInterface
12
{
13
    private $statusChecks;
14
15
    public function __construct(iterable $statusChecks)
16
    {
17
        $this->statusChecks = $statusChecks;
18
    }
19
    /**
20
     * Returns true if this factory can create this identifier.
21
     *
22
     * @param string $identifier
23
     * @return bool
24
     */
25
    public function hasApiResourceRetrieverInstance(string $identifier): bool
26
    {
27
        return $identifier === StatusCheckRetriever::class;
28
    }
29
30
    /**
31
     * Gets an instance of ApiResourceRetrieverInstance
32
     * @param string $identifier
33
     * @return ApiResourceRetrieverInterface
34
     */
35
    public function getApiResourceRetrieverInstance(string $identifier): ApiResourceRetrieverInterface
36
    {
37
        return new StatusCheckRetriever($this->statusChecks);
38
    }
39
40
    /**
41
     * Returns true if this factory can create this identifier.
42
     *
43
     * @param string $identifier
44
     * @return bool
45
     */
46
    public function hasApiResourcePersisterInstance(string $identifier): bool
47
    {
48
        return false;
49
    }
50
51
    /**
52
     * Gets an instance of ApiResourceRetrieverInstance
53
     * @param string $identifier
54
     * @return ApiResourcePersisterInterface
55
     */
56
    public function getApiResourcePersisterInstance(string $identifier): ApiResourcePersisterInterface
57
    {
58
        throw new BadConfigurationException('This call is not supposed to be called');
59
    }
60
}
61