MessageReceived   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 81
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 6
eloc 14
c 1
b 0
f 0
dl 0
loc 81
rs 10

6 Methods

Rating   Name   Duplication   Size   Complexity  
A context() 0 3 1
A __construct() 0 10 1
A message() 0 3 1
A queue() 0 3 1
A receivedAt() 0 3 1
A name() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace BinaryCube\CarrotMQ\Event\Consumer;
6
7
use Interop\Queue\Context;
8
use Interop\Queue\Message;
9
use BinaryCube\CarrotMQ\Event\Event;
10
use BinaryCube\CarrotMQ\Entity\Queue;
11
12
/**
13
 * Class MessageReceived
14
 */
15
class MessageReceived extends Event
16
{
17
18
    /**
19
     * @var Queue
20
     */
21
    private $queue;
22
23
    /**
24
     * @var Context
25
     */
26
    private $context;
27
28
    /**
29
     * @var Message
30
     */
31
    private $message;
32
33
    /**
34
     * @var float
35
     */
36
    private $receivedAt;
37
38
    /**
39
     * @return string
40
     */
41
    public static function name(): string
42
    {
43
        return 'consumer.event.message.received';
44
    }
45
46
    /**
47
     * Constructor.
48
     *
49
     * @param Queue   $queue
50
     * @param Context $context
51
     * @param Message $message
52
     * @param float   $receivedAt
53
     */
54
    public function __construct(
55
        Queue $queue,
56
        Context $context,
57
        Message $message,
58
        float $receivedAt
59
    ) {
60
        $this->queue      = $queue;
61
        $this->context    = $context;
62
        $this->message    = $message;
63
        $this->receivedAt = $receivedAt;
64
    }
65
66
    /**
67
     * @return Queue
68
     */
69
    public function queue(): Queue
70
    {
71
        return $this->queue;
72
    }
73
74
    /**
75
     * @return Context
76
     */
77
    public function context(): Context
78
    {
79
        return $this->context;
80
    }
81
82
    /**
83
     * @return Message
84
     */
85
    public function message(): Message
86
    {
87
        return $this->message;
88
    }
89
90
    /**
91
     * @return float
92
     */
93
    public function receivedAt(): float
94
    {
95
        return $this->receivedAt;
96
    }
97
98
}
99