MultipleBirthsTrait::getMultipleBirthOrderNumber()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
/**
4
 * The MIT License
5
 *
6
 * Copyright 2018  Peter Gee <https://github.com/pgee70>.
7
 *
8
 * Permission is hereby granted, free of charge, to any person obtaining a copy
9
 * of this software and associated documentation files (the "Software"), to deal
10
 * in the Software without restriction, including without limitation the rights
11
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
 * copies of the Software, and to permit persons to whom the Software is
13
 * furnished to do so, subject to the following conditions:
14
 *
15
 * The above copyright notice and this permission notice shall be included in
16
 * all copies or substantial portions of the Software.
17
 *
18
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
 * FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
21
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24
 * THE SOFTWARE.
25
 */
26
27
28
namespace i3Soft\CDA\Traits;
29
30
31
use i3Soft\CDA\RIM\Extensions\MultipleBirthInd;
32
use i3Soft\CDA\RIM\Extensions\MultipleBirthOrderNumber;
33
34
trait MultipleBirthsTrait
35
{
36
  /** @var MultipleBirthInd */
37
  private $birth_ind;
38
39
  /** @var MultipleBirthOrderNumber */
40
  private $birth_order;
41
42
43
  /**
44
   * @param MultipleBirthInd $birth_ind
45
   *
46
   * @return self
47
   */
48
  public function setMultipleBirthInd (MultipleBirthInd $birth_ind): self
49
  {
50
    $this->birth_ind = $birth_ind;
51
    return $this;
52
  }
53
54
  /**
55
   * @param MultipleBirthOrderNumber $birth_order
56
   *
57
   * @return self
58
   */
59
  public function setMultipleBirthOrderNumber (MultipleBirthOrderNumber $birth_order): self
60
  {
61
    $this->birth_order = $birth_order;
62
    return $this;
63
  }
64
65
  public function renderMultipleBirths (\DOMElement $el, \DOMDocument $doc): self
66
  {
67
    if ($this->hasMultipleBirthInd())
68
    {
69
      $el->appendChild($this->getMultipleBirthInd()->toDOMElement($doc));
70
      if ($this->hasMultipleBirthOrderNumber())
71
      {
72
        $el->appendChild($this->getMultipleBirthOrderNumber()->toDOMElement($doc));
73
      }
74
    }
75
    return $this;
76
  }
77
78
  /**
79
   * @return bool
80
   */
81
  public function hasMultipleBirthInd (): bool
82
  {
83
    return NULL !== $this->birth_ind;
84
  }
85
86
  /**
87
   * @return MultipleBirthInd
88
   */
89
  public function getMultipleBirthInd (): MultipleBirthInd
90
  {
91
    return $this->birth_ind;
92
  }
93
94
  /**
95
   * @return bool
96
   */
97
  public function hasMultipleBirthOrderNumber (): bool
98
  {
99
    return NULL !== $this->birth_order;
100
  }
101
102
  /**
103
   * @return MultipleBirthOrderNumber
104
   */
105
  public function getMultipleBirthOrderNumber (): MultipleBirthOrderNumber
106
  {
107
    return $this->birth_order;
108
  }
109
110
}