SequenceComponent::normalize()   B
last analyzed

Complexity

Conditions 7
Paths 16

Size

Total Lines 17
Code Lines 11

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 7
eloc 11
nc 16
nop 4
dl 0
loc 17
rs 8.8333
c 0
b 0
f 0
1
<?php
2
/**
3
 * Copyright © Vaimo Group. All rights reserved.
4
 * See LICENSE_VAIMO.txt for license details.
5
 */
6
namespace Vaimo\ComposerPatches\Patch\Definition\NormalizerComponents;
7
8
use Vaimo\ComposerPatches\Patch\Definition as PatchDefinition;
9
10
class SequenceComponent implements \Vaimo\ComposerPatches\Interfaces\DefinitionNormalizerComponentInterface
11
{
12
    public function normalize($target, $label, array $data, array $ownerConfig)
13
    {
14
        if (isset($data[PatchDefinition::BEFORE]) && !is_array($data[PatchDefinition::BEFORE])) {
15
            $data[PatchDefinition::BEFORE] = array($data[PatchDefinition::BEFORE]);
16
        }
17
18
        if (isset($data[PatchDefinition::AFTER]) && !is_array($data[PatchDefinition::AFTER])) {
19
            $data[PatchDefinition::AFTER] = array($data[PatchDefinition::AFTER]);
20
        }
21
22
        return array(
23
            PatchDefinition::BEFORE => isset($data[PatchDefinition::BEFORE])
24
                ? $data[PatchDefinition::BEFORE]
25
                : array(),
26
            PatchDefinition::AFTER => isset($data[PatchDefinition::AFTER])
27
                ? $data[PatchDefinition::AFTER]
28
                : array()
29
        );
30
    }
31
}
32