Passed
Push — develop ( 53a66f...07e04a )
by Daniel
05:35
created

FeatureStackedItemFactory::create()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 8
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 7
nc 1
nop 1
dl 0
loc 9
ccs 8
cts 8
cp 1
crap 1
rs 9.6666
c 0
b 0
f 0
1
<?php
2
3
namespace Silverback\ApiComponentBundle\Factory\Entity\Component\Feature\Stacked;
4
5
use Silverback\ApiComponentBundle\Entity\Component\Feature\Stacked\FeatureStackedItem;
6
use Silverback\ApiComponentBundle\Entity\Content\AbstractContent;
7
use Silverback\ApiComponentBundle\Factory\Entity\Component\Feature\AbstractFeatureItemFactory;
8
9
class FeatureStackedItemFactory extends AbstractFeatureItemFactory
10
{
11
    /**
12
     * @inheritdoc
13
     */
14 1
    public function create(?array $ops = null): FeatureStackedItem
15
    {
16 1
        $component = new FeatureStackedItem();
17 1
        $this->init($component, $ops);
18 1
        $component->setDescription($this->ops['description']);
19 1
        $component->setButtonText($this->ops['buttonText']);
20 1
        $component->setButtonClass($this->ops['buttonClass']);
21 1
        $this->validate($component);
22 1
        return $component;
23
    }
24
25
    /**
26
     * @inheritdoc
27
     */
28 2
    public static function defaultOps(): array
29
    {
30 2
        return array_merge(
31 2
            parent::defaultOps(),
32
            [
33 2
                'description' => null,
34
                'buttonText' => null,
35
                'buttonClass' => null
36
            ]
37
        );
38
    }
39
}
40