Completed
Push — master ( fdb7de...e17409 )
by Sergey
03:32
created

BasicReject::encode()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 5

Duplication

Lines 8
Ratio 100 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 8
loc 8
rs 9.4285
cc 1
eloc 5
nc 1
nop 0
1
<?php
2
/*
3
 * This file is automatically generated.
4
 */
5
6
namespace ButterAMQP\Framing\Method;
7
8
use ButterAMQP\Framing\Frame;
9
use ButterAMQP\Value;
10
11
/**
12
 * Reject an incoming message.
13
 *
14
 * @codeCoverageIgnore
15
 */
16
class BasicReject extends Frame
17
{
18
    /**
19
     * @var int
20
     */
21
    private $deliveryTag;
22
23
    /**
24
     * @var bool
25
     */
26
    private $requeue;
27
28
    /**
29
     * @param int  $channel
30
     * @param int  $deliveryTag
31
     * @param bool $requeue
32
     */
33
    public function __construct($channel, $deliveryTag, $requeue)
34
    {
35
        $this->deliveryTag = $deliveryTag;
36
        $this->requeue = $requeue;
37
38
        parent::__construct($channel);
39
    }
40
41
    /**
42
     * DeliveryTag.
43
     *
44
     * @return int
45
     */
46
    public function getDeliveryTag()
47
    {
48
        return $this->deliveryTag;
49
    }
50
51
    /**
52
     * Requeue the message.
53
     *
54
     * @return bool
55
     */
56
    public function isRequeue()
57
    {
58
        return $this->requeue;
59
    }
60
61
    /**
62
     * @return string
63
     */
64
    public function encode()
65
    {
66
        $data = "\x00\x3C\x00\x5A".
67
            Value\LongLongValue::encode($this->deliveryTag).
68
            Value\BooleanValue::encode($this->requeue);
69
70
        return "\x01".pack('nN', $this->channel, strlen($data)).$data."\xCE";
71
    }
72
}
73