Code Duplication    Length = 75-75 lines in 2 locations

src/MessageMutation/Pipeline/Incoming/IncomingLogicalMessageMutationContext.php 1 location

@@ 7-81 (lines=75) @@
4
5
use PSB\Core\Util\Guard;
6
7
class IncomingLogicalMessageMutationContext
8
{
9
    /**
10
     * @var object
11
     */
12
    private $message;
13
14
    /**
15
     * @var array
16
     */
17
    private $headers;
18
19
    /**
20
     * @var bool
21
     */
22
    private $hasMessageChanged = false;
23
24
    /**
25
     * @param object $message
26
     * @param array  $headers
27
     */
28
    public function __construct($message, array $headers)
29
    {
30
        Guard::againstNull('message', $message);
31
        Guard::againstNonObject('message', $message);
32
33
        $this->message = $message;
34
        $this->headers = $headers;
35
    }
36
37
    /**
38
     * @return object
39
     */
40
    public function getMessage()
41
    {
42
        return $this->message;
43
    }
44
45
    /**
46
     * @return array
47
     */
48
    public function getHeaders()
49
    {
50
        return $this->headers;
51
    }
52
53
    /**
54
     * @return bool
55
     */
56
    public function hasMessageChanged()
57
    {
58
        return $this->hasMessageChanged;
59
    }
60
61
    /**
62
     * @param object $message
63
     */
64
    public function updateMessage($message)
65
    {
66
        Guard::againstNull('message', $message);
67
        Guard::againstNonObject('message', $message);
68
69
        $this->message = $message;
70
        $this->hasMessageChanged = true;
71
    }
72
73
    /**
74
     * @param string $name
75
     * @param string $value
76
     */
77
    public function setHeader($name, $value)
78
    {
79
        $this->headers[$name] = $value;
80
    }
81
}
82

src/MessageMutation/Pipeline/Outgoing/OutgoingLogicalMessageMutationContext.php 1 location

@@ 7-81 (lines=75) @@
4
5
use PSB\Core\Util\Guard;
6
7
class OutgoingLogicalMessageMutationContext
8
{
9
    /**
10
     * @var object
11
     */
12
    private $message;
13
14
    /**
15
     * @var array
16
     */
17
    private $headers;
18
19
    /**
20
     * @var bool
21
     */
22
    private $hasMessageChanged = false;
23
24
    /**
25
     * @param object $message
26
     * @param array  $headers
27
     */
28
    public function __construct($message, array $headers)
29
    {
30
        Guard::againstNull('message', $message);
31
        Guard::againstNonObject('message', $message);
32
33
        $this->message = $message;
34
        $this->headers = $headers;
35
    }
36
37
    /**
38
     * @return object
39
     */
40
    public function getMessage()
41
    {
42
        return $this->message;
43
    }
44
45
    /**
46
     * @return array
47
     */
48
    public function getHeaders()
49
    {
50
        return $this->headers;
51
    }
52
53
    /**
54
     * @return bool
55
     */
56
    public function hasMessageChanged()
57
    {
58
        return $this->hasMessageChanged;
59
    }
60
61
    /**
62
     * @param object $message
63
     */
64
    public function updateMessage($message)
65
    {
66
        Guard::againstNull('message', $message);
67
        Guard::againstNonObject('message', $message);
68
69
        $this->message = $message;
70
        $this->hasMessageChanged = true;
71
    }
72
73
    /**
74
     * @param string $name
75
     * @param string $value
76
     */
77
    public function setHeader($name, $value)
78
    {
79
        $this->headers[$name] = $value;
80
    }
81
}
82