NoKeySectionApi   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Importance

Changes 1
Bugs 1 Features 0
Metric Value
wmc 2
c 1
b 1
f 0
lcom 1
cbo 3
dl 0
loc 30
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 7 1
A update() 0 7 1
1
<?php
2
namespace Tarioch\EveapiFetcherBundle\Component\Section;
3
4
use JMS\DiExtraBundle\Annotation as DI;
5
use Tarioch\PhealBundle\DependencyInjection\PhealFactory;
6
use Tarioch\EveapiFetcherBundle\Entity\ApiCall;
7
use Tarioch\EveapiFetcherBundle\Component\EveApi\SpecificApiFactory;
8
9
/**
10
 * @DI\Service(public=false)
11
 */
12
class NoKeySectionApi implements SectionApi
13
{
14
    private $phealFactory;
15
    private $specificApiFactory;
16
17
    /**
18
     * @DI\InjectParams({
19
     * "phealFactory" = @DI\Inject("tarioch.pheal.factory"),
20
     * "specificApiFactory" = @DI\Inject("tarioch.eveapi_fetcher_bundle.component.eve_api.specific_api_factory")
21
     * })
22
     */
23
    public function __construct(
24
        PhealFactory $phealFactory,
25
        SpecificApiFactory $specificApiFactory
26
    ) {
27
        $this->phealFactory = $phealFactory;
28
        $this->specificApiFactory = $specificApiFactory;
29
    }
30
31
    /**
32
     * @inheritdoc
33
     */
34
    public function update(ApiCall $call)
35
    {
36
        $pheal = $this->phealFactory->createEveOnline();
37
        $specificApi = $this->specificApiFactory->create($call->getApi());
38
39
        return new \DateTime($specificApi->update($call, $pheal));
40
    }
41
}
42