createPostSaveEasyCredit()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 1
c 1
b 0
f 0
dl 0
loc 3
rs 10
cc 1
nc 1
nop 0
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\Computop\Business;
9
10
use Spryker\Zed\Kernel\Business\AbstractBusinessFactory;
11
use SprykerEco\Service\ComputopApi\ComputopApiServiceInterface;
12
use SprykerEco\Zed\Computop\Business\Hook\ComputopPostSaveHook;
13
use SprykerEco\Zed\Computop\Business\Hook\ComputopPostSaveHookInterface;
14
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitCreditCardMapper;
15
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitDirectDebitMapper;
16
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitEasyCreditMapper;
17
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitIdealMapper;
18
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface;
19
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitPaydirektMapper;
20
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitPayNowMapper;
21
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitPayPalMapper;
22
use SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitSofortMapper;
23
use SprykerEco\Zed\Computop\Business\Logger\ComputopResponseLogger as ComputopLogger;
24
use SprykerEco\Zed\Computop\Business\Logger\LoggerInterface;
25
use SprykerEco\Zed\Computop\Business\Oms\Command\AuthorizeCommandHandler;
26
use SprykerEco\Zed\Computop\Business\Oms\Command\CancelCommandHandler;
27
use SprykerEco\Zed\Computop\Business\Oms\Command\CaptureCommandHandler;
28
use SprykerEco\Zed\Computop\Business\Oms\Command\CommandHandlerInterface;
29
use SprykerEco\Zed\Computop\Business\Oms\Command\Manager\AuthorizeManager;
30
use SprykerEco\Zed\Computop\Business\Oms\Command\Manager\CancelManager;
31
use SprykerEco\Zed\Computop\Business\Oms\Command\Manager\CancelManagerInterface;
32
use SprykerEco\Zed\Computop\Business\Oms\Command\Manager\CaptureManager;
33
use SprykerEco\Zed\Computop\Business\Oms\Command\Manager\ManagerInterface;
34
use SprykerEco\Zed\Computop\Business\Oms\Command\Manager\RefundManager;
35
use SprykerEco\Zed\Computop\Business\Oms\Command\RefundCommandHandler;
36
use SprykerEco\Zed\Computop\Business\Order\ComputopBusinessOrderFactory;
37
use SprykerEco\Zed\Computop\Business\Order\ComputopBusinessOrderFactoryInterface;
38
use SprykerEco\Zed\Computop\Business\Order\OrderManager;
39
use SprykerEco\Zed\Computop\Business\Order\OrderManagerInterface;
40
use SprykerEco\Zed\Computop\Business\Payment\Handler\Logger\ComputopResponseLogger;
41
use SprykerEco\Zed\Computop\Business\Payment\Handler\Logger\ComputopResponseLoggerInterface;
42
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\AuthorizeHandler;
43
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\CaptureHandler;
44
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\EasyCreditAuthorizeHandler;
45
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface as PostPlaceHandlerInterface;
46
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\InquireHandler;
47
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\RefundHandler;
48
use SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\ReverseHandler;
49
use SprykerEco\Zed\Computop\Business\Payment\Handler\PrePlace\EasyCreditStatusHandler;
50
use SprykerEco\Zed\Computop\Business\Payment\Handler\PrePlace\PrePlaceHandlerInterface;
51
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\AuthorizeSaver;
52
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\CaptureSaver;
53
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\CreditCardResponseSaver;
54
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\DirectDebitResponseSaver;
55
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\EasyCreditResponseSaver;
56
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\IdealResponseSaver;
57
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface;
58
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\PaydirektResponseSaver;
59
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\PayNowResponseSaver;
60
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\PayPalResponseSaver;
61
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\SofortResponseSaver;
62
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\InquireSaver;
63
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\RefundSaver;
64
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\ReverseSaver;
65
use SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\SaverInterface;
66
use SprykerEco\Zed\Computop\Business\Payment\PaymentMethodFilter;
67
use SprykerEco\Zed\Computop\Business\Payment\PaymentMethodFilterInterface;
68
use SprykerEco\Zed\Computop\Business\Payment\Reader\ComputopPaymentReader;
69
use SprykerEco\Zed\Computop\Business\Payment\Reader\ComputopPaymentReaderInterface;
70
use SprykerEco\Zed\Computop\Business\Processor\NotificationProcessor;
71
use SprykerEco\Zed\Computop\Business\Processor\NotificationProcessorInterface;
72
use SprykerEco\Zed\Computop\Business\RiskCheck\Handler\CrifHandler;
73
use SprykerEco\Zed\Computop\Business\RiskCheck\Handler\HandlerInterface;
74
use SprykerEco\Zed\Computop\Business\RiskCheck\Saver\CrifSaver;
75
use SprykerEco\Zed\Computop\Business\RiskCheck\Saver\RiskCheckSaverInterface;
76
use SprykerEco\Zed\Computop\ComputopDependencyProvider;
77
use SprykerEco\Zed\Computop\Dependency\ComputopToStoreInterface;
78
use SprykerEco\Zed\Computop\Dependency\Facade\ComputopToComputopApiFacadeInterface;
79
use SprykerEco\Zed\Computop\Dependency\Facade\ComputopToMessengerFacadeInterface;
80
use SprykerEco\Zed\Computop\Dependency\Facade\ComputopToMoneyFacadeInterface;
81
use SprykerEco\Zed\Computop\Dependency\Facade\ComputopToOmsFacadeInterface;
82
83
/**
84
 * @method \SprykerEco\Zed\Computop\ComputopConfig getConfig()
85
 * @method \SprykerEco\Zed\Computop\Persistence\ComputopQueryContainerInterface getQueryContainer()
86
 * @method \SprykerEco\Zed\Computop\Persistence\ComputopEntityManagerInterface getEntityManager()
87
 */
88
class ComputopBusinessFactory extends AbstractBusinessFactory
89
{
90
    /**
91
     * @return \SprykerEco\Zed\Computop\Business\Order\OrderManagerInterface
92
     */
93
    public function createOrderSaver(): OrderManagerInterface
94
    {
95
        $orderSaver = new OrderManager($this->getConfig());
96
97
        $orderSaver->registerMapper($this->createOrderFactory()->createInitCreditCardMapper());
98
        $orderSaver->registerMapper($this->createOrderFactory()->createInitPayNowMapper());
99
        $orderSaver->registerMapper($this->createOrderFactory()->createInitPayPalMapper());
100
        $orderSaver->registerMapper($this->createOrderFactory()->createInitDirectDebitMapper());
101
        $orderSaver->registerMapper($this->createOrderFactory()->createInitSofortMapper());
102
        $orderSaver->registerMapper($this->createOrderFactory()->createInitPaydirektMapper());
103
        $orderSaver->registerMapper($this->createOrderFactory()->createInitIdealMapper());
104
        $orderSaver->registerMapper($this->createOrderFactory()->createInitEasyCreditMapper());
105
106
        return $orderSaver;
107
    }
108
109
    /**
110
     * @return \SprykerEco\Zed\Computop\Business\Hook\ComputopPostSaveHookInterface
111
     */
112
    public function createPostSaveHook(): ComputopPostSaveHookInterface
113
    {
114
        $postSaveHook = new ComputopPostSaveHook($this->getConfig());
115
        $postSaveHook->registerMapper($this->createPostSaveSofortMapper());
116
        $postSaveHook->registerMapper($this->createPostSavePaydirektMapper());
117
        $postSaveHook->registerMapper($this->createPostSaveIdealMapper());
118
        $postSaveHook->registerMapper($this->createPostSaveCreditCart());
119
        $postSaveHook->registerMapper($this->createPostSavePayNowMapper());
120
        $postSaveHook->registerMapper($this->createPostSavePayPal());
121
        $postSaveHook->registerMapper($this->createPostSaveDirectDebit());
122
        $postSaveHook->registerMapper($this->createPostSaveEasyCredit());
123
124
        return $postSaveHook;
125
    }
126
127
    /**
128
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
129
     */
130
    public function createSofortResponseSaver(): InitResponseSaverInterface
131
    {
132
        return new SofortResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
133
    }
134
135
    /**
136
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
137
     */
138
    public function createIdealResponseSaver(): InitResponseSaverInterface
139
    {
140
        return new IdealResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
141
    }
142
143
    /**
144
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
145
     */
146
    public function createPaydirektResponseSaver(): InitResponseSaverInterface
147
    {
148
        return new PaydirektResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
149
    }
150
151
    /**
152
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
153
     */
154
    public function createCreditCardResponseSaver(): InitResponseSaverInterface
155
    {
156
        return new CreditCardResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
157
    }
158
159
    /**
160
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
161
     */
162
    public function createPayNowResponseSaver(): InitResponseSaverInterface
163
    {
164
        return new PayNowResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
165
    }
166
167
    /**
168
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
169
     */
170
    public function createPayPalResponseSaver(): InitResponseSaverInterface
171
    {
172
        return new PayPalResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
173
    }
174
175
    /**
176
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
177
     */
178
    public function createDirectDebitResponseSaver(): InitResponseSaverInterface
179
    {
180
        return new DirectDebitResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
181
    }
182
183
    /**
184
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\Init\InitResponseSaverInterface
185
     */
186
    public function createEasyCreditResponseSaver(): InitResponseSaverInterface
187
    {
188
        return new EasyCreditResponseSaver($this->getQueryContainer(), $this->getOmsFacade(), $this->getConfig());
189
    }
190
191
    /**
192
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Logger\ComputopResponseLoggerInterface
193
     */
194
    public function createComputopResponseLogger(): ComputopResponseLoggerInterface
195
    {
196
        return new ComputopResponseLogger();
197
    }
198
199
    /**
200
     * @return \SprykerEco\Zed\Computop\Dependency\ComputopToStoreInterface
201
     */
202
    public function getStore(): ComputopToStoreInterface
203
    {
204
        return $this->getProvidedDependency(ComputopDependencyProvider::STORE);
205
    }
206
207
    /**
208
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\CommandHandlerInterface
209
     */
210
    public function createAuthorizeCommandHandler(): CommandHandlerInterface
211
    {
212
        return new AuthorizeCommandHandler(
213
            $this->createAuthorizeHandler(),
214
            $this->createAuthorizeManager()
215
        );
216
    }
217
218
    /**
219
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\CommandHandlerInterface
220
     */
221
    public function createCancelCommandHandler(): CommandHandlerInterface
222
    {
223
        return new CancelCommandHandler(
224
            $this->createInquireHandler(),
225
            $this->createReverseHandler(),
226
            $this->createCancelManager(),
227
            $this->getFlashMessengerFacade()
228
        );
229
    }
230
231
    /**
232
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\CommandHandlerInterface
233
     */
234
    public function createCaptureCommandHandler(): CommandHandlerInterface
235
    {
236
        return new CaptureCommandHandler(
237
            $this->createCaptureHandler(),
238
            $this->createCaptureManager()
239
        );
240
    }
241
242
    /**
243
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\CommandHandlerInterface
244
     */
245
    public function createRefundCommandHandler(): CommandHandlerInterface
246
    {
247
        return new RefundCommandHandler(
248
            $this->createRefundHandler(),
249
            $this->createRefundManager()
250
        );
251
    }
252
253
    /**
254
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\CommandHandlerInterface
255
     */
256
    public function createEasyCreditAuthorizeCommandHandler(): CommandHandlerInterface
257
    {
258
        return new AuthorizeCommandHandler(
259
            $this->createEasyCreditAuthorizeHandler(),
260
            $this->createAuthorizeManager()
261
        );
262
    }
263
264
    /**
265
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PrePlace\PrePlaceHandlerInterface
266
     */
267
    public function createEasyCreditStatusHandler(): PrePlaceHandlerInterface
268
    {
269
        return new EasyCreditStatusHandler(
270
            $this->getComputopApiFacade(),
271
            $this->getMoneyFacade(),
272
            $this->createComputopResponseLogger()
273
        );
274
    }
275
276
    /**
277
     * @return \SprykerEco\Zed\Computop\Business\RiskCheck\Handler\HandlerInterface
278
     */
279
    public function createCrifHandler(): HandlerInterface
280
    {
281
        return new CrifHandler(
282
            $this->getComputopApiFacade(),
283
            $this->createCrifSaver(),
284
            $this->getConfig()
285
        );
286
    }
287
288
    /**
289
     * @return \SprykerEco\Zed\Computop\Business\Logger\LoggerInterface
290
     */
291
    public function createComputopLogger(): LoggerInterface
292
    {
293
        return new ComputopLogger();
294
    }
295
296
    /**
297
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface
298
     */
299
    public function createEasyCreditAuthorizeHandler(): PostPlaceHandlerInterface
300
    {
301
        return new EasyCreditAuthorizeHandler(
302
            $this->getComputopApiFacade(),
303
            $this->createAuthorizeSaver()
304
        );
305
    }
306
307
    /**
308
     * @return \SprykerEco\Zed\Computop\Business\Payment\Reader\ComputopPaymentReaderInterface
309
     */
310
    public function createPaymentReader(): ComputopPaymentReaderInterface
311
    {
312
        return new ComputopPaymentReader($this->getQueryContainer());
313
    }
314
315
    /**
316
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface
317
     */
318
    public function createAuthorizeHandler(): PostPlaceHandlerInterface
319
    {
320
        return new AuthorizeHandler(
321
            $this->getComputopApiFacade(),
322
            $this->createAuthorizeSaver()
323
        );
324
    }
325
326
    /**
327
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface
328
     */
329
    public function createReverseHandler(): PostPlaceHandlerInterface
330
    {
331
        return new ReverseHandler(
332
            $this->getComputopApiFacade(),
333
            $this->createReverseSaver()
334
        );
335
    }
336
337
    /**
338
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface
339
     */
340
    public function createInquireHandler(): PostPlaceHandlerInterface
341
    {
342
        return new InquireHandler(
343
            $this->getComputopApiFacade(),
344
            $this->createInquireSaver()
345
        );
346
    }
347
348
    /**
349
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface
350
     */
351
    public function createCaptureHandler(): PostPlaceHandlerInterface
352
    {
353
        return new CaptureHandler(
354
            $this->getComputopApiFacade(),
355
            $this->createCaptureSaver()
356
        );
357
    }
358
359
    /**
360
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\PostPlace\HandlerInterface
361
     */
362
    public function createRefundHandler(): PostPlaceHandlerInterface
363
    {
364
        return new RefundHandler(
365
            $this->getComputopApiFacade(),
366
            $this->createRefundSaver()
367
        );
368
    }
369
370
    /**
371
     * @return \SprykerEco\Zed\Computop\Business\RiskCheck\Saver\RiskCheckSaverInterface
372
     */
373
    public function createCrifSaver(): RiskCheckSaverInterface
374
    {
375
        return new CrifSaver(
376
            $this->getQueryContainer(),
377
            $this->createComputopLogger(),
378
            $this->getConfig()
379
        );
380
    }
381
382
    /**
383
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\SaverInterface
384
     */
385
    public function createAuthorizeSaver(): SaverInterface
386
    {
387
        return new AuthorizeSaver(
388
            $this->getQueryContainer(),
389
            $this->createComputopResponseLogger(),
390
            $this->getConfig()
391
        );
392
    }
393
394
    /**
395
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\SaverInterface
396
     */
397
    public function createReverseSaver(): SaverInterface
398
    {
399
        return new ReverseSaver(
400
            $this->getQueryContainer(),
401
            $this->createComputopResponseLogger(),
402
            $this->getConfig()
403
        );
404
    }
405
406
    /**
407
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\SaverInterface
408
     */
409
    public function createInquireSaver(): SaverInterface
410
    {
411
        return new InquireSaver(
412
            $this->getQueryContainer(),
413
            $this->createComputopResponseLogger(),
414
            $this->getConfig()
415
        );
416
    }
417
418
    /**
419
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\SaverInterface
420
     */
421
    public function createCaptureSaver(): SaverInterface
422
    {
423
        return new CaptureSaver(
424
            $this->getQueryContainer(),
425
            $this->createComputopResponseLogger(),
426
            $this->getConfig()
427
        );
428
    }
429
430
    /**
431
     * @return \SprykerEco\Zed\Computop\Business\Payment\Handler\Saver\SaverInterface
432
     */
433
    public function createRefundSaver(): SaverInterface
434
    {
435
        return new RefundSaver(
436
            $this->getQueryContainer(),
437
            $this->createComputopResponseLogger(),
438
            $this->getConfig()
439
        );
440
    }
441
442
    /**
443
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\Manager\ManagerInterface
444
     */
445
    public function createAuthorizeManager(): ManagerInterface
446
    {
447
        return new AuthorizeManager($this->getQueryContainer(), $this->getConfig());
448
    }
449
450
    /**
451
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\Manager\CancelManagerInterface
452
     */
453
    public function createCancelManager(): CancelManagerInterface
454
    {
455
        return new CancelManager($this->getQueryContainer(), $this->getConfig());
456
    }
457
458
    /**
459
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\Manager\ManagerInterface
460
     */
461
    public function createCaptureManager(): ManagerInterface
462
    {
463
        return new CaptureManager($this->getQueryContainer(), $this->getConfig());
464
    }
465
466
    /**
467
     * @return \SprykerEco\Zed\Computop\Business\Oms\Command\Manager\ManagerInterface
468
     */
469
    public function createRefundManager(): ManagerInterface
470
    {
471
        return new RefundManager($this->getQueryContainer(), $this->getConfig());
472
    }
473
474
    /**
475
     * @return \SprykerEco\Zed\Computop\Business\Order\ComputopBusinessOrderFactoryInterface
476
     */
477
    public function createOrderFactory(): ComputopBusinessOrderFactoryInterface
478
    {
479
        return new ComputopBusinessOrderFactory();
480
    }
481
482
    /**
483
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
484
     */
485
    public function createPostSaveSofortMapper(): InitMapperInterface
486
    {
487
        return new InitSofortMapper($this->getConfig(), $this->getComputopApiService());
488
    }
489
490
    /**
491
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
492
     */
493
    public function createPostSaveCreditCart(): InitMapperInterface
494
    {
495
        return new InitCreditCardMapper($this->getConfig(), $this->getComputopApiService());
496
    }
497
498
    /**
499
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
500
     */
501
    public function createPostSavePayNowMapper(): InitMapperInterface
502
    {
503
        return new InitPayNowMapper($this->getConfig(), $this->getComputopApiService());
504
    }
505
506
    /**
507
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
508
     */
509
    public function createPostSavePayPal(): InitMapperInterface
510
    {
511
        return new InitPayPalMapper($this->getConfig(), $this->getComputopApiService());
512
    }
513
514
    /**
515
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
516
     */
517
    public function createPostSaveDirectDebit(): InitMapperInterface
518
    {
519
        return new InitDirectDebitMapper($this->getConfig(), $this->getComputopApiService());
520
    }
521
522
    /**
523
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
524
     */
525
    public function createPostSaveEasyCredit(): InitMapperInterface
526
    {
527
        return new InitEasyCreditMapper($this->getConfig(), $this->getComputopApiService());
528
    }
529
530
    /**
531
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
532
     */
533
    public function createPostSavePaydirektMapper(): InitMapperInterface
534
    {
535
        return new InitPaydirektMapper($this->getConfig(), $this->getComputopApiService());
536
    }
537
538
    /**
539
     * @return \SprykerEco\Zed\Computop\Business\Hook\Mapper\Init\InitMapperInterface
540
     */
541
    public function createPostSaveIdealMapper(): InitMapperInterface
542
    {
543
        return new InitIdealMapper($this->getConfig(), $this->getComputopApiService());
544
    }
545
546
    /**
547
     * @return \SprykerEco\Zed\Computop\Business\Payment\PaymentMethodFilterInterface
548
     */
549
    public function createPaymentMethodFilter(): PaymentMethodFilterInterface
550
    {
551
        return new PaymentMethodFilter($this->getConfig());
552
    }
553
554
    /**
555
     * @return \SprykerEco\Zed\Computop\Business\Processor\NotificationProcessorInterface
556
     */
557
    public function createNotificationProcessor(): NotificationProcessorInterface
558
    {
559
        return new NotificationProcessor($this->getEntityManager());
560
    }
561
562
    /**
563
     * @return \SprykerEco\Service\ComputopApi\ComputopApiServiceInterface
564
     */
565
    public function getComputopApiService(): ComputopApiServiceInterface
566
    {
567
        return $this->getProvidedDependency(ComputopDependencyProvider::SERVICE_COMPUTOP_API);
568
    }
569
570
    /**
571
     * @return \SprykerEco\Zed\Computop\Dependency\Facade\ComputopToOmsFacadeInterface
572
     */
573
    public function getOmsFacade(): ComputopToOmsFacadeInterface
574
    {
575
        return $this->getProvidedDependency(ComputopDependencyProvider::FACADE_OMS);
576
    }
577
578
    /**
579
     * @return \SprykerEco\Zed\Computop\Dependency\Facade\ComputopToMessengerFacadeInterface
580
     */
581
    public function getFlashMessengerFacade(): ComputopToMessengerFacadeInterface
582
    {
583
        return $this->getProvidedDependency(ComputopDependencyProvider::FACADE_FLASH_MESSENGER);
584
    }
585
586
    /**
587
     * @return \SprykerEco\Zed\Computop\Dependency\Facade\ComputopToMoneyFacadeInterface
588
     */
589
    public function getMoneyFacade(): ComputopToMoneyFacadeInterface
590
    {
591
        return $this->getProvidedDependency(ComputopDependencyProvider::FACADE_MONEY);
592
    }
593
594
    /**
595
     * @return \SprykerEco\Zed\Computop\Dependency\Facade\ComputopToComputopApiFacadeInterface
596
     */
597
    public function getComputopApiFacade(): ComputopToComputopApiFacadeInterface
598
    {
599
        return $this->getProvidedDependency(ComputopDependencyProvider::FACADE_COMPUTOP_API);
600
    }
601
}
602