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

AbstractElement::inject()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 2
c 0
b 0
f 0
dl 0
loc 4
rs 10
cc 2
nc 2
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