RequestObject   A
last analyzed

Complexity

Total Complexity 7

Size/Duplication

Total Lines 53
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Importance

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

6 Methods

Rating   Name   Duplication   Size   Complexity  
A setPayload() 0 4 1
A rules() 0 3 1
A validationGroup() 0 3 1
A get() 0 5 2
A has() 0 4 1
A all() 0 4 1
1
<?php
2
3
namespace Fesor\RequestObject;
4
5
use Symfony\Component\Validator\Constraint;
6
7
class RequestObject
8
{
9
    private $payload;
10
11
    public function setPayload(array $payload = [])
12
    {
13
        $this->payload = $payload;
14
    }
15
16
    /**
17
     * @return Constraint|Constraint[]
18
     */
19
    public function rules()
20
    {
21
    }
22
23
    /**
24
     * @return array|void
25
     */
26
    public function validationGroup(array $payload)
27
    {
28
    }
29
30
    /**
31
     * @param string     $name
32
     * @param mixed|null $default
33
     *
34
     * @return mixed
35
     */
36
    public function get($name, $default = null)
37
    {
38
        return $this->has($name) ?
39
            $this->payload[$name] : $default;
40
    }
41
42
    /**
43
     * @param string $name
44
     *
45
     * @return bool
46
     */
47
    public function has($name)
48
    {
49
        return array_key_exists($name, $this->payload);
50
    }
51
52
    /**
53
     * @return array
54
     */
55
    public function all()
56
    {
57
        return $this->payload;
58
    }
59
}
60