AbstractEvent::setResponse()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
/*
4
 * This file is part of the smsmode-bundle package.
5
 *
6
 * (c) 2019 WEBEWEB
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace WBW\Bundle\SmsModeBundle\Event;
13
14
use WBW\Bundle\CoreBundle\Event\AbstractEvent as BaseEvent;
15
use WBW\Library\SmsMode\Entity\SmsModeEntityInterface;
16
use WBW\Library\SmsMode\Request\AbstractRequest;
17
use WBW\Library\SmsMode\Response\AbstractResponse;
18
19
/**
20
 * Abstract event.
21
 *
22
 * @author webeweb <https://github.com/webeweb>
23
 * @package WBW\Bundle\SmsModeBundle\Event
24
 * @abstract
25
 */
26
abstract class AbstractEvent extends BaseEvent {
27
28
    /**
29
     * Entity.
30
     *
31
     * @var SmsModeEntityInterface|null
32
     */
33
    private $entity;
34
35
    /**
36
     * Request.
37
     *
38
     * @var AbstractRequest|null
39
     */
40
    private $request;
41
42
    /**
43
     * Response.
44
     *
45
     * @var AbstractResponse|null
46
     */
47
    private $response;
48
49
    /**
50
     * Constructor.
51
     *
52
     * @param string|null $eventName The event name.
53
     * @param SmsModeEntityInterface|null $entity The entity.
54
     */
55
    protected function __construct(string $eventName, ?SmsModeEntityInterface $entity) {
56
        parent::__construct($eventName);
57
58
        $this->setEntity($entity);
59
    }
60
61
    /**
62
     * Get the entity.
63
     *
64
     * @return SmsModeEntityInterface|null Returns the entity.
65
     */
66
    protected function getEntity(): ?SmsModeEntityInterface {
67
        return $this->entity;
68
    }
69
70
    /**
71
     * Get the request.
72
     *
73
     * @return AbstractRequest|null Returns the request.
74
     */
75
    protected function getRequest() {
76
        return $this->request;
77
    }
78
79
    /**
80
     * Get the response.
81
     *
82
     * @return AbstractResponse|null Returns the response.
83
     */
84
    protected function getResponse() {
85
        return $this->response;
86
    }
87
88
    /**
89
     * Set the entity.
90
     *
91
     * @param SmsModeEntityInterface|null $entity The entity.
92
     * @return AbstractEvent Returns this sMsmode event.
93
     */
94
    protected function setEntity(?SmsModeEntityInterface $entity): AbstractEvent {
95
        $this->entity = $entity;
96
        return $this;
97
    }
98
99
    /**
100
     * Set the request.
101
     *
102
     * @param AbstractRequest|null $request The request.
103
     * @return AbstractEvent Returns this sMsmode event.
104
     */
105
    public function setRequest(?AbstractRequest $request): AbstractEvent {
106
        $this->request = $request;
107
        return $this;
108
    }
109
110
    /**
111
     * Set the response.
112
     *
113
     * @param AbstractResponse|null $response The response.
114
     * @return AbstractEvent Returns this sMsmode event.
115
     */
116
    public function setResponse(?AbstractResponse $response): AbstractEvent {
117
        $this->response = $response;
118
        return $this;
119
    }
120
}
121