Passed
Push — master ( f8ce69...b14078 )
by payever
03:35
created

toConvertedPaymentOptions()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 15
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 15
rs 9.9666
cc 2
nc 2
nop 0
1
<?php
2
/**
3
 * PHP version 5.4 and 7
4
 *
5
 * @package   Payever\Payments
6
 * @author    Hennadii.Shymanskyi <[email protected]>
7
 * @copyright 2017-2019 payever GmbH
8
 * @license   MIT <https://opensource.org/licenses/MIT>
9
 */
10
11
namespace Payever\ExternalIntegration\Payments\Http\MessageEntity;
12
13
/**
14
 * PHP version 5.4 and 7
15
 *
16
 * @package   Payever\Payments
17
 * @author    payever GmbH <[email protected]>
18
 * @author    Hennadii.Shymanskyi <[email protected]>
19
 * @copyright 2017-2019 payever GmbH
20
 * @license   MIT <https://opensource.org/licenses/MIT>
21
 *
22
 * @method array|PaymentOptionVariantEntity[] getVariants()
23
 */
24
class ListPaymentOptionsVariantsResultEntity extends AbstractPaymentOptionEntity
25
{
26
    /** @var array|PaymentOptionVariantEntity[] */
27
    protected $variants = array();
28
29
    /**
30
     * @param array $rawVariants
31
     *
32
     * @return $this
33
     */
34
    public function setVariants(array $rawVariants)
35
    {
36
        foreach ($rawVariants as $rawVariant) {
37
            $this->variants[] = new PaymentOptionVariantEntity($rawVariant);
38
        }
39
40
        return $this;
41
    }
42
43
    /**
44
     * @return array|ConvertedPaymentOptionEntity[]
45
     */
46
    public function toConvertedPaymentOptions()
47
    {
48
        $result = array();
49
        $baseData = $this->toArray();
50
51
        foreach ($this->getVariants() as $variant) {
52
            $convertedOption = new ConvertedPaymentOptionEntity($baseData);
53
            $convertedOption->setVariantId($variant->getId());
54
            $convertedOption->setAcceptFee($variant->getAcceptFee());
55
            $convertedOption->setVariantName($variant->getName());
56
57
            $result[$variant->getId()] = $convertedOption;
58
        }
59
60
        return $result;
61
    }
62
}
63