Passed
Push — master ( 19e97f...f6e67c )
by Dieter
07:06 queued 02:46
created

GetFareFamilyDescription::__construct()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 13
rs 9.8333
c 0
b 0
f 0
cc 2
nc 2
nop 1
1
<?php
2
3
namespace Amadeus\Client\Struct\Fare;
4
5
use Amadeus\Client\RequestOptions\FareGetFareFamilyDescriptionOptions;
6
use Amadeus\Client\RequestOptions\Reference;
7
use Amadeus\Client\Struct\BaseWsMessage;
8
use Amadeus\Client\Struct\Fare\GetFareFamilyDescription\ReferenceDetails;
9
use Amadeus\Client\Struct\Fare\GetFareFamilyDescription\ReferenceInformation;
10
11
/**
12
 * Class GetFareFamilyDescription
13
 * @package Amadeus\Client\Struct\Fare
14
 */
15
class GetFareFamilyDescription extends BaseWsMessage
16
{
17
    /**
18
     * @var ReferenceInformation[]|array
19
     */
20
    public $referenceInformation;
21
22
    /**
23
     * GetFareFamilyDescription constructor.
24
     *
25
     * @param FareGetFareFamilyDescriptionOptions|null $options
26
     */
27
    public function __construct($options)
28
    {
29
        foreach ($options->referenceGroups as $referenceGroup) {
30
            $references = array_map(function (Reference $reference) {
31
                return new ReferenceDetails(
32
                    $reference->getType(),
33
                    $reference->getValue()
34
                );
35
            }, $referenceGroup->getReferences());
36
37
            $this->referenceInformation[] = new ReferenceInformation($references);
38
        }
39
    }
40
}
41