Passed
Pull Request — master (#62)
by Romain
05:24 queued 01:46
created

injectSlotDispatcher()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
/*
4
 * Copyright (C) 2018
5
 * Nathan Boiron <[email protected]>
6
 * Romain Canon <[email protected]>
7
 *
8
 * This file is part of the TYPO3 NotiZ project.
9
 * It is free software; you can redistribute it and/or modify it
10
 * under the terms of the GNU General Public License, either
11
 * version 3 of the License, or any later version.
12
 *
13
 * For the full copyright and license information, see:
14
 * http://www.gnu.org/licenses/gpl-3.0.html
15
 */
16
17
namespace CuyZ\Notiz\Domain\Event\Form;
18
19
use TYPO3\CMS\Extbase\SignalSlot\Dispatcher;
20
use TYPO3\CMS\Form\Domain\Finishers\AbstractFinisher;
21
22
class DispatchFormNotificationFinisher extends AbstractFinisher
23
{
24
    const NOTIFICATION_DISPATCH_SIGNAL = 'dispatchNotification';
25
26
    /**
27
     * @var Dispatcher
28
     */
29
    protected $slotDispatcher;
30
31
    /**
32
     * This finisher dispatches a signal that will be caught by NotiZ and allow
33
     * notifications to be sent.
34
     */
35
    protected function executeInternal()
36
    {
37
        $this->slotDispatcher->dispatch(
38
            self::class,
39
            self::NOTIFICATION_DISPATCH_SIGNAL,
40
            [$this->finisherContext]
41
        );
42
    }
43
44
    /**
45
     * @param Dispatcher $slotDispatcher
46
     */
47
    public function injectSlotDispatcher(Dispatcher $slotDispatcher)
48
    {
49
        $this->slotDispatcher = $slotDispatcher;
50
    }
51
}
52