Completed
Push — master ( 90d759...521f4e )
by Sergey
12:23
created

Api::getOrganizationId()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
3
namespace seregazhuk\Favro\Api;
4
5
use seregazhuk\Favro\Api\Endpoints\Cards;
6
use seregazhuk\Favro\Api\Endpoints\Tasks;
7
use seregazhuk\Favro\Api\Endpoints\Users;
8
use seregazhuk\Favro\Api\Endpoints\Columns;
9
use seregazhuk\Favro\Api\Endpoints\Widgets;
10
use seregazhuk\Favro\Api\Endpoints\Endpoint;
11
use seregazhuk\Favro\Api\Endpoints\Collections;
12
use seregazhuk\Favro\Api\Endpoints\Organizations;
13
use seregazhuk\Favro\Api\Endpoints\EndpointsContainer;
14
15
/**
16
 * Class Api
17
 *
18
 * @property Organizations $organizations
19
 * @property Users $users
20
 * @property Collections $collections
21
 * @property Widgets $widgets
22
 * @property Columns $columns
23
 * @property Cards $cards
24
 * @property Tasks $tasks
25
 */
26
class Api
27
{
28
    /**
29
     * @var EndpointsContainer
30
     */
31
    protected $endpointsContainer;
32
33
    /**
34
     * @var string
35
     */
36
    protected $organizationId;
37
38
    public function __construct(EndpointsContainer $endpointsContainer)
39
    {
40
        $this->endpointsContainer = $endpointsContainer;
41
    }
42
43
    /**
44
     * Magic method to access different endpoints.
45
     *
46
     * @param string $endpoint
47
     *
48
     * @return Endpoint
49
     */
50
    public function __get($endpoint)
51
    {
52
        $endpoint = $this->endpointsContainer->resolveEndpoint($endpoint);
53
54
        if (method_exists($endpoint, 'setOrganizationId')) {
55
            $endpoint->setOrganizationId($this->organizationId);
56
        }
57
58
        return $endpoint;
59
    }
60
61
    /**
62
     * @param int $organizationId
63
     * @return $this
64
     */
65
    public function setOrganization($organizationId)
66
    {
67
        $this->organizationId = $organizationId;
0 ignored issues
show
Documentation Bug introduced by
The property $organizationId was declared of type string, but $organizationId is of type integer. Maybe add a type cast?

This check looks for assignments to scalar types that may be of the wrong type.

To ensure the code behaves as expected, it may be a good idea to add an explicit type cast.

$answer = 42;

$correct = false;

$correct = (bool) $answer;
Loading history...
68
69
        return $this;
70
    }
71
72
    /**
73
     * @return string
74
     */
75
    public function getOrganizationId()
76
    {
77
        return $this->organizationId;
78
    }
79
}