ServerRepository   A
last analyzed

Complexity

Total Complexity 5

Size/Duplication

Total Lines 58
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

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

4 Methods

Rating   Name   Duplication   Size   Complexity  
A injectObjectManager() 0 3 1
A injectConfigurationProvider() 0 3 1
A findAllByPage() 0 13 2
A injectServerFactory() 0 3 1
1
<?php
2
namespace Aoe\Asdis\Domain\Repository;
3
4
use Aoe\Asdis\Domain\Model\Server\Collection;
5
use Aoe\Asdis\Domain\Model\Server\Factory;
6
use Aoe\Asdis\System\Configuration\Provider;
7
8
/**
9
 * Repository for server objects.
10
 */
11
class ServerRepository
12
{
13
    /**
14
     * @var \TYPO3\CMS\Extbase\Object\ObjectManagerInterface
15
     */
16
    private $objectManager;
17
18
    /**
19
     * @var \Aoe\Asdis\System\Configuration\Provider
20
     */
21
    private $configurationProvider;
22
23
    /**
24
     * @var \Aoe\Asdis\Domain\Model\Server\Factory
25
     */
26
    private $serverFactory;
27
28
    /**
29
     * @param \TYPO3\CMS\Extbase\Object\ObjectManagerInterface $objectManager
30
     */
31 1
    public function injectObjectManager(\TYPO3\CMS\Extbase\Object\ObjectManagerInterface $objectManager)
32
    {
33 1
        $this->objectManager = $objectManager;
34 1
    }
35
36
    /**
37
     * @param \Aoe\Asdis\System\Configuration\Provider $configurationProvider
38
     */
39 1
    public function injectConfigurationProvider(Provider $configurationProvider)
40
    {
41 1
        $this->configurationProvider = $configurationProvider;
42 1
    }
43
44
    /**
45
     * @param \Aoe\Asdis\Domain\Model\Server\Factory $serverFactory
46
     */
47 1
    public function injectServerFactory(Factory $serverFactory)
48
    {
49 1
        $this->serverFactory = $serverFactory;
50 1
    }
51
52
    /**
53
     * @param \Aoe\Asdis\Domain\Model\Page $page
54
     * @return \Aoe\Asdis\Domain\Model\Server\Collection
55
     */
56 1
    public function findAllByPage(\Aoe\Asdis\Domain\Model\Page $page)
0 ignored issues
show
Unused Code introduced by
The parameter $page is not used and could be removed. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-unused  annotation

56
    public function findAllByPage(/** @scrutinizer ignore-unused */ \Aoe\Asdis\Domain\Model\Page $page)

This check looks for parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
57
    {
58
        /** @var \Aoe\Asdis\Domain\Model\Server\Collection $servers */
59 1
        $servers = new Collection();
60 1
        $serverDefinitions = $this->configurationProvider->getServerDefinitions();
61 1
        foreach($serverDefinitions as $serverDefinition) {
62 1
            $servers->append($this->serverFactory->createServer(
63 1
                $serverDefinition['identifier'],
64 1
                $serverDefinition['domain'],
65 1
                $serverDefinition['protocol']
66
            ));
67
        }
68 1
        return $servers;
69
    }
70
71
}