Params   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Test Coverage

Coverage 66.67%

Importance

Changes 0
Metric Value
wmc 4
lcom 1
cbo 0
dl 0
loc 37
ccs 6
cts 9
cp 0.6667
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A get() 0 8 2
A all() 0 4 1
1
<?php
2
3
namespace PhpJsonRpc\Server\Request;
4
5
class Params
6
{
7
    /**
8
     * @var \stdClass|array $params
9
     */
10
    protected $params;
11
12
    /**
13
     * @param \stdClass|array $params
14
     */
15 33
    public function __construct($params)
16
    {
17 33
        $this->params = $params;
18 33
    }
19
20
    /**
21
     * @param string|int $identifier
22
     *
23
     * @return mixed
24
     */
25 30
    public function get($identifier)
26
    {
27 30
        if (is_array($this->params)) {
28
            return $this->params[$identifier];
29
        }
30
31 30
        return $this->params->{$identifier};
32
    }
33
34
    /**
35
     * @return array|\stdClass
36
     */
37
    public function all()
38
    {
39
        return $this->params;
40
    }
41
}
42