Completed
Push — master ( 90d78c...a53f78 )
by Андрей
07:14 queued 04:39
created

ResourceLoaderInitializer::runResourceLoader()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 1
1
<?php
2
/**
3
 * @link    https://github.com/nnx-framework/doctrine-fixture-module
4
 * @author  Malofeykin Andrey  <[email protected]>
5
 */
6
namespace Nnx\DoctrineFixtureModule\FixtureInitializer;
7
8
use Doctrine\Fixture\Event\FixtureEvent;
9
use Doctrine\Fixture\Fixture;
10
use Nnx\DoctrineFixtureModule\ResourceLoader\ResourceLoaderServiceInterface;
11
12
13
/**
14
 * Class ObjectManagerNameInitializer
15
 *
16
 * @package Nnx\DoctrineFixtureModule\FixtureInitializer
17
 */
18
class ResourceLoaderInitializer extends AbstractContextInitializer
19
{
20
    /**
21
     * Сервис отвечающий за загрузку ресурсов для фикстуры
22
     *
23
     * @var ResourceLoaderServiceInterface
24
     */
25
    protected $resourceLoaderService;
26
27
    /**
28
     * ResourceLoaderInitializer constructor.
29
     *
30
     * @param ResourceLoaderServiceInterface $resourceLoaderService
31
     */
32
    public function __construct(ResourceLoaderServiceInterface $resourceLoaderService)
33
    {
34
        $this->setResourceLoaderService($resourceLoaderService);
35
    }
36
37
    /**
38
     * {@inheritdoc}
39
     * @throws \Nnx\DoctrineFixtureModule\FixtureInitializer\Exception\RuntimeException
40
     */
41
    public function purge(FixtureEvent $event)
42
    {
43
        $fixture = $event->getFixture();
44
        $this->runResourceLoader($fixture);
45
    }
46
47
    /**
48
     * {@inheritdoc}
49
     * @throws \Nnx\DoctrineFixtureModule\FixtureInitializer\Exception\RuntimeException
50
     */
51
    public function import(FixtureEvent $event)
52
    {
53
        $fixture = $event->getFixture();
54
        $this->runResourceLoader($fixture);
55
    }
56
57
    /**
58
     * Загрузка ресуров для фикстуры
59
     *
60
     * @param Fixture $fixture
61
     */
62
    protected function runResourceLoader(Fixture $fixture)
63
    {
64
        $this->getResourceLoaderService()->loadResourceForFixture($fixture);
65
    }
66
67
    /**
68
     * Возвращает сервис отвечающий за загрузку ресурсов для фикстуры
69
     *
70
     * @return ResourceLoaderServiceInterface
71
     */
72
    public function getResourceLoaderService()
73
    {
74
        return $this->resourceLoaderService;
75
    }
76
77
    /**
78
     * Устанавливает сервис отвечающий за загрузку ресурсов для фикстуры
79
     *
80
     * @param ResourceLoaderServiceInterface $resourceLoaderService
81
     *
82
     * @return $this
83
     */
84
    public function setResourceLoaderService(ResourceLoaderServiceInterface $resourceLoaderService)
85
    {
86
        $this->resourceLoaderService = $resourceLoaderService;
87
88
        return $this;
89
    }
90
}
91