Completed
Push — master ( c34cac...3c68a7 )
by Pieter
04:47
created

MockPlugin   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 12
c 1
b 0
f 0
dl 0
loc 23
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getApiResourceFactory() 0 12 1
A __construct() 0 3 1
1
<?php
2
3
namespace W2w\Lib\Apie\Plugins\Mock;
4
5
use W2w\Lib\Apie\Interfaces\ApiResourceFactoryInterface;
6
use W2w\Lib\Apie\PluginInterfaces\ApieAwareInterface;
7
use W2w\Lib\Apie\PluginInterfaces\ApieAwareTrait;
8
use W2w\Lib\Apie\PluginInterfaces\ApiResourceFactoryProviderInterface;
9
use W2w\Lib\Apie\Plugins\Mock\DataLayers\MockApiResourceDataLayer;
10
use W2w\Lib\Apie\Plugins\Mock\ResourceFactories\MockApiResourceFactory;
11
12
final class MockPlugin implements ApiResourceFactoryProviderInterface, ApieAwareInterface
13
{
14
    use ApieAwareTrait;
15
16
    private $ignoreList = [];
17
18
    public function __construct(array $ignoreList = [])
19
    {
20
        $this->ignoreList = $ignoreList;
21
    }
22
23
    public function getApiResourceFactory(array $next = []): ApiResourceFactoryInterface
24
    {
25
        $apie = $this->getApie();
26
27
        return new MockApiResourceFactory(
28
            new MockApiResourceDataLayer(
29
                $this->getApie()->getCacheItemPool(),
30
                $this->getApie()->getIdentifierExtractor(),
31
                $this->getApie()->getPropertyAccessor()
32
            ),
33
            $apie,
34
            $this->ignoreList
35
        );
36
    }
37
}
38