Completed
Pull Request — master (#286)
by
unknown
03:20
created

AccessRequestFrame   A

Complexity

Total Complexity 7

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Importance

Changes 0
Metric Value
dl 0
loc 40
rs 10
c 0
b 0
f 0
wmc 7
lcom 1
cbo 0

1 Method

Rating   Name   Duplication   Size   Complexity  
C create() 0 27 7
1
<?php
2
3
namespace PHPDaemon\Clients\AMQP\Driver\Protocol\v091\Protocol\Access;
4
5
use PHPDaemon\Clients\AMQP\Driver\Protocol\v091\Protocol\MethodFrame;
6
use PHPDaemon\Clients\AMQP\Driver\Protocol\v091\Protocol\OutgoingFrame;
7
8
/**
9
 * Class AccessRequestFrame
10
 * @author Aleksey I. Kuleshov YOU GLOBAL LIMITED
11
 * @package PHPDaemon\Clients\AMQP\Driver\Protocol\v091\Protocol\Access
12
 */
13
class AccessRequestFrame implements MethodFrame, OutgoingFrame
14
{
15
    const METHOD_ID = 0x001e000a;
16
17
    public $frameChannelId = 0;
18
    public $realm = '/data'; // shortstr
19
    public $exclusive = false; // bit
20
    public $passive = true; // bit
21
    public $active = true; // bit
22
    public $write = true; // bit
23
    public $read = true; // bit
24
25
    public static function create(
26
        $realm = null, $exclusive = null, $passive = null, $active = null, $write = null, $read = null
27
    )
28
    {
29
        $frame = new self();
30
31
        if (null !== $realm) {
32
            $frame->realm = $realm;
33
        }
34
        if (null !== $exclusive) {
35
            $frame->exclusive = $exclusive;
36
        }
37
        if (null !== $passive) {
38
            $frame->passive = $passive;
39
        }
40
        if (null !== $active) {
41
            $frame->active = $active;
42
        }
43
        if (null !== $write) {
44
            $frame->write = $write;
45
        }
46
        if (null !== $read) {
47
            $frame->read = $read;
48
        }
49
50
        return $frame;
51
    }
52
}
53