createIsFinalizingFailedOmsCondition()   A
last analyzed

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
c 0
b 0
f 0
rs 10
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\Zed\Heidelpay\Communication;
9
10
use Spryker\Zed\Kernel\Communication\AbstractCommunicationFactory;
11
use SprykerEco\Zed\Heidelpay\Communication\Oms\Command\DebitOnRegistrationOmsCommand;
12
use SprykerEco\Zed\Heidelpay\Communication\Oms\Command\HeidelpayOmsCommandByOrderInterface;
13
use SprykerEco\Zed\Heidelpay\Communication\Oms\Command\RefundOmsCommand;
14
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface;
15
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsAuthorizationFailedOmsCondition;
16
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsAuthorizationFinishedOmsCondition;
17
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsDebitOnRegistrationCompletedOmsCondition;
18
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsFinalizingFailedOmsCondition;
19
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsFinalizingFinishedOmsCondition;
20
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsOrderPaidOmsCondition;
21
use SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\IsRefundedOmsCondition;
22
use SprykerEco\Zed\Heidelpay\Dependency\Facade\HeidelpayToSalesFacadeInterface;
23
use SprykerEco\Zed\Heidelpay\HeidelpayDependencyProvider;
24
25
/**
26
 * @method \SprykerEco\Zed\Heidelpay\Persistence\HeidelpayQueryContainerInterface getQueryContainer()
27
 * @method \SprykerEco\Zed\Heidelpay\Persistence\HeidelpayRepositoryInterface getRepository()
28
 * @method \SprykerEco\Zed\Heidelpay\Persistence\HeidelpayEntityManagerInterface getEntityManager()
29
 * @method \SprykerEco\Zed\Heidelpay\HeidelpayConfig getConfig()
30
 * @method \SprykerEco\Zed\Heidelpay\Business\HeidelpayFacadeInterface getFacade()
31
 */
32
class HeidelpayCommunicationFactory extends AbstractCommunicationFactory
33
{
34
    /**
35
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
36
     */
37
    public function createIsAuthorizationFinishedOmsCondition(): HeidelpayOmsConditionInterface
38
    {
39
        return new IsAuthorizationFinishedOmsCondition($this->getRepository());
40
    }
41
42
    /**
43
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
44
     */
45
    public function createIsAuthorizationFailedOmsCondition(): HeidelpayOmsConditionInterface
46
    {
47
        return new IsAuthorizationFailedOmsCondition($this->getRepository());
48
    }
49
50
    /**
51
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
52
     */
53
    public function createIsFinalizingFinishedOmsCondition(): HeidelpayOmsConditionInterface
54
    {
55
        return new IsFinalizingFinishedOmsCondition($this->getRepository());
56
    }
57
58
    /**
59
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
60
     */
61
    public function createIsFinalizingFailedOmsCondition(): HeidelpayOmsConditionInterface
62
    {
63
        return new IsFinalizingFailedOmsCondition($this->getRepository());
64
    }
65
66
    /**
67
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
68
     */
69
    public function createIsOrderPaidOmsCondition(): HeidelpayOmsConditionInterface
70
    {
71
        return new IsOrderPaidOmsCondition(
72
            $this->getRepository(),
73
            $this->getSalesFacade()
74
        );
75
    }
76
77
    /**
78
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Command\HeidelpayOmsCommandByOrderInterface
79
     */
80
    public function createDebitOnRegistrationOmsCommand(): HeidelpayOmsCommandByOrderInterface
81
    {
82
        return new DebitOnRegistrationOmsCommand(
83
            $this->getFacade(),
84
            $this->getSalesFacade()
85
        );
86
    }
87
88
    /**
89
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Command\HeidelpayOmsCommandByOrderInterface
90
     */
91
    public function createRefundOmsCommand(): HeidelpayOmsCommandByOrderInterface
92
    {
93
        return new RefundOmsCommand(
94
            $this->getFacade(),
95
            $this->getSalesFacade()
96
        );
97
    }
98
99
    /**
100
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
101
     */
102
    public function createIsDebitOnRegistrationCompletedOmsCondition(): HeidelpayOmsConditionInterface
103
    {
104
        return new IsDebitOnRegistrationCompletedOmsCondition($this->getRepository());
105
    }
106
107
    /**
108
     * @return \SprykerEco\Zed\Heidelpay\Communication\Oms\Condition\HeidelpayOmsConditionInterface
109
     */
110
    public function createIsRefundedOmsCondition(): HeidelpayOmsConditionInterface
111
    {
112
        return new IsRefundedOmsCondition($this->getRepository());
113
    }
114
115
    /**
116
     * @return \SprykerEco\Zed\Heidelpay\Dependency\Facade\HeidelpayToSalesFacadeInterface
117
     */
118
    public function getSalesFacade(): HeidelpayToSalesFacadeInterface
119
    {
120
        return $this->getProvidedDependency(HeidelpayDependencyProvider::FACADE_SALES);
121
    }
122
}
123