ContactDetails::createFromXml()   B
last analyzed

Complexity

Conditions 8
Paths 128

Size

Total Lines 27
Code Lines 16

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 72

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 8
eloc 16
c 1
b 0
f 0
nc 128
nop 1
dl 0
loc 27
ccs 0
cts 25
cp 0
crap 72
rs 8.2111
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Genkgo\Camt\Decoder\Factory\DTO;
6
7
use Genkgo\Camt\DTO;
8
use SimpleXMLElement;
9
10
class ContactDetails
11
{
12
    public static function createFromXml(SimpleXMLElement $xmlContactDetails): DTO\ContactDetails
13
    {
14
        $contactDetails = new DTO\ContactDetails();
15
16
        if (isset($xmlContactDetails->NmPrfx)) {
17
            $contactDetails->setNamePrefix((string) $xmlContactDetails->NmPrfx);
18
        }
19
        if (isset($xmlContactDetails->Nm)) {
20
            $contactDetails->setName((string) $xmlContactDetails->Nm);
21
        }
22
        if (isset($xmlContactDetails->PhneNb)) {
23
            $contactDetails->setPhoneNumber((string) $xmlContactDetails->PhneNb);
24
        }
25
        if (isset($xmlContactDetails->MobNb)) {
26
            $contactDetails->setMobileNumber((string) $xmlContactDetails->MobNb);
27
        }
28
        if (isset($xmlContactDetails->FaxNb)) {
29
            $contactDetails->setFaxNumber((string) $xmlContactDetails->FaxNb);
30
        }
31
        if (isset($xmlContactDetails->EmailAdr)) {
32
            $contactDetails->setEmailAddress((string) $xmlContactDetails->EmailAdr);
33
        }
34
        if (isset($xmlContactDetails->Othr)) {
35
            $contactDetails->setOther((string) $xmlContactDetails->Othr);
36
        }
37
38
        return $contactDetails;
39
    }
40
}
41