Passed
Pull Request — master (#57)
by Ihor
33:01 queued 22:17
created

createDirectDebitRegistrationResponseMapper()   A

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
 * MIT License
5
 * For full license information, please view the LICENSE file that was distributed with this source code.
6
 */
7
8
namespace SprykerEco\Client\Heidelpay;
9
10
use Spryker\Client\Kernel\AbstractFactory;
11
use Spryker\Client\Session\SessionClientFactoryTrait;
12
use Spryker\Client\ZedRequest\ZedRequestClientInterface;
13
use SprykerEco\Client\Heidelpay\Dependency\Client\HeidelpayToLocaleClientInterface;
14
use SprykerEco\Client\Heidelpay\Dependency\Client\HeidelpayToQuoteClientInterface;
15
use SprykerEco\Client\Heidelpay\Mapper\ApiResponseToRegistrationRequestTransfer;
16
use SprykerEco\Client\Heidelpay\Mapper\ApiResponseToRegistrationResponseTransferInterface;
17
use SprykerEco\Client\Heidelpay\Mapper\DirectDebitRegistrationResponseMapper;
18
use SprykerEco\Client\Heidelpay\Mapper\DirectDebitRegistrationResponseMapperInterface;
19
use SprykerEco\Client\Heidelpay\Sdk\CreditCardRegistrationResponseParser;
20
use SprykerEco\Client\Heidelpay\Sdk\CreditCardRegistrationResponseParserInterface;
21
use SprykerEco\Client\Heidelpay\Sdk\DirectDebitRegistrationResponseParser;
22
use SprykerEco\Client\Heidelpay\Sdk\DirectDebitRegistrationResponseParserInterface;
23
use SprykerEco\Client\Heidelpay\Sdk\HeidelpayApiAdapter;
24
use SprykerEco\Client\Heidelpay\Sdk\HeidelpayApiAdapterInterface;
25
use SprykerEco\Client\Heidelpay\Zed\HeidelpayStub;
26
use SprykerEco\Client\Heidelpay\Zed\HeidelpayStubInterface;
27
28
/**
29
 * @method \SprykerEco\Client\Heidelpay\HeidelpayConfig getConfig()
30
 */
31
class HeidelpayFactory extends AbstractFactory
32
{
33
    use SessionClientFactoryTrait;
0 ignored issues
show
Deprecated Code introduced by
The trait Spryker\Client\Session\SessionClientFactoryTrait has been deprecated: Will be removed without replacement. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

33
    use /** @scrutinizer ignore-deprecated */ SessionClientFactoryTrait;

This trait has been deprecated. The supplier of the trait has supplied an explanatory message.

The explanatory message should give you some clue as to whether and when the trait will be removed and what other trait to use instead.

Loading history...
34
35
    /**
36
     * @return \Spryker\Client\ZedRequest\ZedRequestClientInterface
37
     */
38
    public function getZedRequestClient(): ZedRequestClientInterface
39
    {
40
        return $this->getProvidedDependency(HeidelpayDependencyProvider::CLIENT_ZED_REQUEST);
41
    }
42
43
    /**
44
     * @return \SprykerEco\Client\Heidelpay\Sdk\HeidelpayApiAdapterInterface
45
     */
46
    public function createHeidelpayApiAdapter(): HeidelpayApiAdapterInterface
47
    {
48
        return new HeidelpayApiAdapter();
49
    }
50
51
    /**
52
     * @return \SprykerEco\Client\Heidelpay\Dependency\Client\HeidelpayToLocaleClientInterface
53
     */
54
    public function getLocaleClient(): HeidelpayToLocaleClientInterface
55
    {
56
        return $this->getProvidedDependency(HeidelpayDependencyProvider::CLIENT_LOCALE);
57
    }
58
59
    /**
60
     * @return \SprykerEco\Client\Heidelpay\Dependency\Client\HeidelpayToQuoteClientInterface
61
     */
62
    public function getQuoteClient(): HeidelpayToQuoteClientInterface
63
    {
64
        return $this->getProvidedDependency(HeidelpayDependencyProvider::CLIENT_QUOTE);
65
    }
66
67
    /**
68
     * @return \SprykerEco\Client\Heidelpay\Zed\HeidelpayStubInterface
69
     */
70
    public function createZedStub(): HeidelpayStubInterface
71
    {
72
        return new HeidelpayStub($this->getZedRequestClient());
73
    }
74
75
    /**
76
     * @return \SprykerEco\Client\Heidelpay\Sdk\CreditCardRegistrationResponseParserInterface
77
     */
78
    public function createExternalResponseValidator(): CreditCardRegistrationResponseParserInterface
79
    {
80
        return new CreditCardRegistrationResponseParser(
81
            $this->createApiResponseToRegistrationResponseTransferMapper(),
82
            $this->getConfig()
83
        );
84
    }
85
86
    /**
87
     * @return \SprykerEco\Client\Heidelpay\Sdk\DirectDebitRegistrationResponseParserInterface
88
     */
89
    public function createDirectDebitRegistrationResponseParser(): DirectDebitRegistrationResponseParserInterface
90
    {
91
        return new DirectDebitRegistrationResponseParser(
92
            $this->createDirectDebitRegistrationResponseMapper(),
93
            $this->getConfig()
94
        );
95
    }
96
97
    /**
98
     * @return \SprykerEco\Client\Heidelpay\Mapper\ApiResponseToRegistrationResponseTransferInterface
99
     */
100
    public function createApiResponseToRegistrationResponseTransferMapper(): ApiResponseToRegistrationResponseTransferInterface
101
    {
102
        return new ApiResponseToRegistrationRequestTransfer();
103
    }
104
105
    /**
106
     * @return \SprykerEco\Client\Heidelpay\Mapper\DirectDebitRegistrationResponseMapperInterface
107
     */
108
    public function createDirectDebitRegistrationResponseMapper(): DirectDebitRegistrationResponseMapperInterface
109
    {
110
        return new DirectDebitRegistrationResponseMapper();
111
    }
112
}
113