Completed
Pull Request — master (#4)
by Oleksandr
17:46 queued 08:55
created

CrefoPayDependencyProvider   A

Complexity

Total Complexity 10

Size/Duplication

Total Lines 155
Duplicated Lines 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 46
c 3
b 0
f 0
dl 0
loc 155
rs 10
wmc 10

10 Methods

Rating   Name   Duplication   Size   Complexity  
A addCrefoPayApiFacade() 0 7 1
A addOmsFacade() 0 7 1
A addUtilTextService() 0 7 1
A addLocaleFacade() 0 7 1
A addRefundFacade() 0 7 1
A addCalculationFacade() 0 7 1
A addSalesFacade() 0 7 1
A provideCommunicationLayerDependencies() 0 8 1
A provideBusinessLayerDependencies() 0 11 1
A addCrefoPayService() 0 7 1
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\CrefoPay;
9
10
use Spryker\Zed\Kernel\AbstractBundleDependencyProvider;
11
use Spryker\Zed\Kernel\Container;
12
use SprykerEco\Zed\CrefoPay\Dependency\Facade\CrefoPayToCalculationFacadeBridge;
13
use SprykerEco\Zed\CrefoPay\Dependency\Facade\CrefoPayToCrefoPayApiFacadeBridge;
14
use SprykerEco\Zed\CrefoPay\Dependency\Facade\CrefoPayToLocaleFacadeBridge;
15
use SprykerEco\Zed\CrefoPay\Dependency\Facade\CrefoPayToOmsFacadeBridge;
16
use SprykerEco\Zed\CrefoPay\Dependency\Facade\CrefoPayToRefundFacadeBridge;
17
use SprykerEco\Zed\CrefoPay\Dependency\Facade\CrefoPayToSalesFacadeBridge;
18
use SprykerEco\Zed\CrefoPay\Dependency\Service\CrefoPayToUtilTextServiceBridge;
19
20
class CrefoPayDependencyProvider extends AbstractBundleDependencyProvider
21
{
22
    public const FACADE_CREFO_APY_API = 'FACADE_CREFO_APY_API';
23
    public const FACADE_SALES = 'FACADE_SALES';
24
    public const FACADE_CALCULATION = 'FACADE_CALCULATION';
25
    public const FACADE_LOCALE = 'FACADE_LOCALE';
26
    public const FACADE_OMS = 'FACADE_OMS';
27
    public const FACADE_REFUND = 'FACADE_REFUND';
28
29
    public const SERVICE_CREFO_PAY = 'SERVICE_CREFO_PAY';
30
    public const SERVICE_UTIL_TEXT = 'SERVICE_UTIL_TEXT';
31
32
    /**
33
     * @param \Spryker\Zed\Kernel\Container $container
34
     *
35
     * @return \Spryker\Zed\Kernel\Container
36
     */
37
    public function provideBusinessLayerDependencies(Container $container): Container
38
    {
39
        $container = parent::provideBusinessLayerDependencies($container);
40
        $container = $this->addCrefoPayApiFacade($container);
41
        $container = $this->addLocaleFacade($container);
42
        $container = $this->addOmsFacade($container);
43
        $container = $this->addCrefoPayService($container);
44
        $container = $this->addUtilTextService($container);
45
        $container = $this->addRefundFacade($container);
46
47
        return $container;
48
    }
49
50
    /**
51
     * @param \Spryker\Zed\Kernel\Container $container
52
     *
53
     * @return \Spryker\Zed\Kernel\Container
54
     */
55
    public function provideCommunicationLayerDependencies(Container $container): Container
56
    {
57
        $container = parent::provideCommunicationLayerDependencies($container);
58
        $container = $this->addSalesFacade($container);
59
        $container = $this->addCalculationFacade($container);
60
        $container = $this->addRefundFacade($container);
61
62
        return $container;
63
    }
64
65
    /**
66
     * @param \Spryker\Zed\Kernel\Container $container
67
     *
68
     * @return \Spryker\Zed\Kernel\Container
69
     */
70
    protected function addCrefoPayApiFacade(Container $container): Container
71
    {
72
        $container[static::FACADE_CREFO_APY_API] = function (Container $container) {
73
            return new CrefoPayToCrefoPayApiFacadeBridge($container->getLocator()->crefoPayApi()->facade());
74
        };
75
76
        return $container;
77
    }
78
79
    /**
80
     * @param \Spryker\Zed\Kernel\Container $container
81
     *
82
     * @return \Spryker\Zed\Kernel\Container
83
     */
84
    protected function addSalesFacade(Container $container): Container
85
    {
86
        $container[static::FACADE_SALES] = function (Container $container) {
87
            return new CrefoPayToSalesFacadeBridge($container->getLocator()->sales()->facade());
88
        };
89
90
        return $container;
91
    }
92
93
    /**
94
     * @param \Spryker\Zed\Kernel\Container $container
95
     *
96
     * @return \Spryker\Zed\Kernel\Container
97
     */
98
    protected function addCalculationFacade(Container $container): Container
99
    {
100
        $container[static::FACADE_CALCULATION] = function (Container $container) {
101
            return new CrefoPayToCalculationFacadeBridge($container->getLocator()->calculation()->facade());
102
        };
103
104
        return $container;
105
    }
106
107
    /**
108
     * @param \Spryker\Zed\Kernel\Container $container
109
     *
110
     * @return \Spryker\Zed\Kernel\Container
111
     */
112
    protected function addLocaleFacade(Container $container): Container
113
    {
114
        $container[static::FACADE_LOCALE] = function (Container $container) {
115
            return new CrefoPayToLocaleFacadeBridge($container->getLocator()->locale()->facade());
116
        };
117
118
        return $container;
119
    }
120
121
    /**
122
     * @param \Spryker\Zed\Kernel\Container $container
123
     *
124
     * @return \Spryker\Zed\Kernel\Container
125
     */
126
    protected function addOmsFacade(Container $container): Container
127
    {
128
        $container[static::FACADE_OMS] = function (Container $container) {
129
            return new CrefoPayToOmsFacadeBridge($container->getLocator()->oms()->facade());
130
        };
131
132
        return $container;
133
    }
134
135
    /**
136
     * @param \Spryker\Zed\Kernel\Container $container
137
     *
138
     * @return \Spryker\Zed\Kernel\Container
139
     */
140
    protected function addRefundFacade(Container $container): Container
141
    {
142
        $container[static::FACADE_REFUND] = function (Container $container) {
143
            return new CrefoPayToRefundFacadeBridge($container->getLocator()->refund()->facade());
144
        };
145
146
        return $container;
147
    }
148
149
    /**
150
     * @param \Spryker\Zed\Kernel\Container $container
151
     *
152
     * @return \Spryker\Zed\Kernel\Container
153
     */
154
    protected function addCrefoPayService(Container $container): Container
155
    {
156
        $container[static::SERVICE_CREFO_PAY] = function (Container $container) {
157
            return $container->getLocator()->crefoPay()->service();
158
        };
159
160
        return $container;
161
    }
162
163
    /**
164
     * @param \Spryker\Zed\Kernel\Container $container
165
     *
166
     * @return \Spryker\Zed\Kernel\Container
167
     */
168
    protected function addUtilTextService(Container $container): Container
169
    {
170
        $container[static::SERVICE_UTIL_TEXT] = function (Container $container) {
171
            return new CrefoPayToUtilTextServiceBridge($container->getLocator()->utilText()->service());
172
        };
173
174
        return $container;
175
    }
176
}
177