Completed
Push — master ( caad37...82c5ce )
by Dmitriy
06:13
created

Children::add()   A

Complexity

Conditions 4
Paths 3

Size

Total Lines 10
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 5
CRAP Score 4.3731

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 10
ccs 5
cts 7
cp 0.7143
rs 9.2
cc 4
eloc 6
nc 3
nop 1
crap 4.3731
1
<?php
2
3
namespace Yandex\Market\Content\Models;
4
5
use Yandex\Common\ObjectModel;
6
7
class Children extends ObjectModel
8
{
9
    /**
10
     * Constructor
11
     *
12
     * @param array $data
13
     */
14 1
    public function __construct($data = array())
15
    {
16
        // fix children inheritance
17 1
        if (isset($data['models'])
18 1
            && count($data['models']) > 0
19 1
        ) {
20 1
            $data = $data['models'];
21 1
        }
22
23 1
        parent::__construct($data);
24 1
    }
25
26
    /**
27
     * Add childModel to collection
28
     *
29
     * @param ModelChild|array $childModel
30
     *
31
     * @return Children
32
     */
33 1
    public function add($childModel)
34
    {
35 1
        if (is_array($childModel)) {
36 1
            $this->collection[] = new ModelChild($childModel);
37 1
        } elseif (is_object($childModel) && $childModel instanceof ModelChild) {
38
            $this->collection[] = $childModel;
39
        }
40
41 1
        return $this;
42
    }
43
44
    /**
45
     * Retrieve the collection property
46
     *
47
     * @return Children
48
     */
49
    public function getAll()
50
    {
51
        return $this->collection;
52
    }
53
}
54