Test Setup Failed
Pull Request — master (#11)
by
unknown
32:32
created

RiskCheckResponseConverter::convert()   B

Complexity

Conditions 2
Paths 2

Size

Total Lines 26
Code Lines 15

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 1
Metric Value
dl 0
loc 26
rs 8.8571
c 2
b 0
f 1
cc 2
eloc 15
nc 2
nop 1
1
<?php
2
3
/**
4
 * MIT License
5
 * Use of this software requires acceptance of the Evaluation License Agreement. See LICENSE file.
6
 */
7
8
namespace SprykerEco\Zed\ArvatoRss\Business\Api\Converter;
9
10
use Generated\Shared\Transfer\ArvatoRssAddressValidationResponseTransfer;
11
use Generated\Shared\Transfer\ArvatoRssRiskCheckResponseTransfer;
12
use stdClass;
13
14
class RiskCheckResponseConverter implements RiskCheckResponseConverterInterface
15
{
16
    /**
17
     * @param \stdClass $response
18
     *
19
     * @return \Generated\Shared\Transfer\ArvatoRssRiskCheckResponseTransfer
20
     */
21
    public function convert(stdClass $response)
22
    {
23
        $responseTransfer = new ArvatoRssRiskCheckResponseTransfer();
24
25
        $responseTransfer->setResult($response->Decision->Result);
26
        $responseTransfer->setResultCode($response->Decision->ResultCode);
27
        $responseTransfer->setActionCode($response->Decision->ActionCode);
28
        $responseTransfer->setResultText($response->Decision->ResultText);
29
        $responseTransfer->setCommunicationToken($response->Decision->CommunicationToken);
30
31
        if (isset($response->Details)) {
32
            $responseTransfer->setBillingAddressValidation(
33
                $this->convertAddressValidationResponse(
34
                    $response->Details->BillingCustomerResult->ServiceResults->AddressValidationResponse
35
                )
36
            );
37
38
            $responseTransfer->setDeliveryAddressValidation(
39
                $this->convertAddressValidationResponse(
40
                    $response->Details->DeliveryCustomerResult->ServiceResults->AddressValidationResponse
41
                )
42
            );
43
        }
44
45
        return $responseTransfer;
46
    }
47
48
    /**
49
     * @param \stdClass $response
50
     *
51
     * @return \Generated\Shared\Transfer\ArvatoRssAddressValidationResponseTransfer
52
     */
53
    protected function convertAddressValidationResponse(stdClass $response)
54
    {
55
        $addressValidationResponse = new ArvatoRssAddressValidationResponseTransfer();
56
57
        $addressValidationResponse->setReturnCode($response->ReturnCode);
58
        $addressValidationResponse->setStreet($response->Street);
59
        $addressValidationResponse->setStreetNumber($response->StreetNumber);
60
        $addressValidationResponse->setZipCode($response->ZipCode);
61
        $addressValidationResponse->setCity($response->City);
62
        $addressValidationResponse->setCountry($response->Country);
63
64
        return $addressValidationResponse;
65
    }
66
}
67