Passed
Branch master (b34e2b)
by Rait
01:39
created

AbstractElement::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 1
c 0
b 0
f 0
dl 0
loc 3
rs 10
cc 1
nc 1
nop 1
1
<?php
2
3
namespace Raigu\XRoad\SoapEnvelope\Element;
4
5
use DOMDocument;
6
7
/**
8
 * I am an abstract XML element.
9
 *
10
 * I can aggregate zero to many elements.
11
 * I can inject all elements into given XML.
12
 */
13
abstract class AbstractElement implements XmlInjectable
14
{
15
    /**
16
     * @var XmlInjectable[]
17
     */
18
    private $elements;
19
20
    public function inject(DOMDocument $dom): void
21
    {
22
        foreach ($this->elements as $element) {
23
            $element->inject($dom);
24
        }
25
    }
26
27
    public function __construct(XmlInjectable ...$elements)
28
    {
29
        $this->elements = $elements;
30
    }
31
}
32