Completed
Push — master ( 0eab77...b2f729 )
by Paul
05:35
created

APIBusinessEntity   A

Complexity

Total Complexity 13

Size/Duplication

Total Lines 131
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Importance

Changes 0
Metric Value
wmc 13
lcom 1
cbo 1
dl 0
loc 131
rs 10
c 0
b 0
f 0

11 Methods

Rating   Name   Duplication   Size   Complexity  
A getResource() 0 4 1
A setResource() 0 4 1
A getEndpoint() 0 4 1
A setEndpoint() 0 4 1
A getType() 0 4 1
A getGetMethod() 0 4 1
A setGetMethod() 0 4 1
A getListMethod() 0 10 3
A setListMethod() 0 4 1
A getPagerParameter() 0 4 1
A setPagerParameter() 0 4 1
1
<?php
2
3
namespace Victoire\Bundle\APIBusinessEntityBundle\Entity;
4
5
use Doctrine\ORM\Mapping as ORM;
6
use Victoire\Bundle\BusinessEntityBundle\Entity\BusinessEntity;
7
8
/**
9
 * The API business Entity.
10
 *
11
 * @ORM\Entity(repositoryClass="Victoire\Bundle\ORMBusinessEntityBundle\Entity\ORMBusinessEntityRepository")
12
 */
13
class APIBusinessEntity extends BusinessEntity
14
{
15
    const TYPE = 'api';
16
17
    /**
18
     * @var string
19
     *
20
     * @ORM\Column(name="resource", type="string", length=255)
21
     */
22
    protected $resource;
23
24
    /**
25
     * @var string
26
     *
27
     * @ORM\Column(name="getMethod", type="text")
28
     */
29
    protected $getMethod;
30
31
    /**
32
     * @var string
33
     *
34
     * @ORM\Column(name="listMethod", type="text")
35
     */
36
    protected $listMethod;
37
38
    /**
39
     * @var string
40
     *
41
     * @ORM\Column(name="pagerParameter", type="text")
42
     */
43
    protected $pagerParameter;
44
45
    /**
46
     * @var APIEndpoint
47
     *
48
     * @ORM\ManyToOne(targetEntity="APIEndpoint")
49
     * @ORM\JoinColumn(name="endpoint_id", referencedColumnName="id", onDelete="SET NULL"))
50
     */
51
    protected $endpoint;
52
53
    /**
54
     * @return string
55
     */
56
    public function getResource()
57
    {
58
        return $this->resource;
59
    }
60
61
    /**
62
     * @param string $resource
63
     */
64
    public function setResource($resource)
65
    {
66
        $this->resource = $resource;
67
    }
68
69
    /**
70
     * @return APIEndpoint
71
     */
72
    public function getEndpoint()
73
    {
74
        return $this->endpoint;
75
    }
76
77
    /**
78
     * @param APIEndpoint $endpoint
79
     */
80
    public function setEndpoint($endpoint)
81
    {
82
        $this->endpoint = $endpoint;
83
    }
84
85
    public function getType()
86
    {
87
        return self::TYPE;
88
    }
89
90
    /**
91
     * @return string
92
     */
93
    public function getGetMethod()
94
    {
95
        return $this->getMethod;
96
    }
97
98
    /**
99
     * @param string $getMethod
100
     */
101
    public function setGetMethod($getMethod)
102
    {
103
        $this->getMethod = $getMethod;
104
    }
105
106
    /**
107
     * @return string
108
     */
109
    public function getListMethod($page = null)
110
    {
111
        $listMethod = $this->listMethod;
112
        if ($page) {
113
            $listMethod .= (false !== strpos($listMethod, '?') ? '&' : '?')
114
                .str_replace('{{page}}', $page, $this->pagerParameter);
115
        }
116
117
        return $listMethod;
118
    }
119
120
    /**
121
     * @param string $listMethod
122
     */
123
    public function setListMethod($listMethod)
124
    {
125
        $this->listMethod = $listMethod;
126
    }
127
128
    /**
129
     * @return string
130
     */
131
    public function getPagerParameter()
132
    {
133
        return $this->pagerParameter;
134
    }
135
136
    /**
137
     * @param string $pagerParameter
138
     */
139
    public function setPagerParameter($pagerParameter)
140
    {
141
        $this->pagerParameter = $pagerParameter;
142
    }
143
}
144