Completed
Push — 0.3 ( ef6084...d1608f )
by jean
10s
created

MappingTransformerStep   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 30
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
dl 0
loc 30
ccs 14
cts 14
cp 1
rs 10
c 0
b 0
f 0
wmc 5

4 Methods

Rating   Name   Duplication   Size   Complexity  
A execute() 0 7 2
A configureOptionResolver() 0 5 1
A __construct() 0 3 1
A isDeprecated() 0 3 1
1
<?php
2
3
namespace Darkilliant\ImportBundle\Step;
4
5
use Darkilliant\ImportBundle\Exception\TransformationException;
6
use Symfony\Component\OptionsResolver\OptionsResolver;
7
use Darkilliant\ImportBundle\Transformer\MappingTransformer;
8
use Darkilliant\ProcessBundle\State\ProcessState;
9
use Darkilliant\ProcessBundle\Step\AbstractConfigurableStep;
10
11
class MappingTransformerStep extends AbstractConfigurableStep
12
{
13
    /** @var MappingTransformer */
14
    private $transformer;
15
16 5
    public function __construct(MappingTransformer $transformer)
17
    {
18 5
        $this->transformer = $transformer;
19 5
    }
20
21 2
    public function execute(ProcessState $state)
22
    {
23
        try {
24 2
            $state->setData($this->transformer->transform([], $state->getOptions()['mapping']));
25 1
        } catch (TransformationException $exception) {
26 1
            $state->error($exception->getMessage());
27 1
            $state->markFail();
28
        }
29 2
    }
30
31 1
    public function configureOptionResolver(OptionsResolver $resolver): OptionsResolver
32
    {
33 1
        $resolver->setRequired(['mapping']);
34
35 1
        return parent::configureOptionResolver($resolver);
36
    }
37
38 1
    public static function isDeprecated(): bool
39
    {
40 1
        return true;
41
    }
42
}
43