AuthorizationRequest::getRedirectUri()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
/**
3
 * Created by PhpStorm.
4
 * User: Alexandre
5
 * Date: 11/06/2018
6
 * Time: 21:05
7
 */
8
9
namespace OAuth2\Extensions\PKCE\Endpoints\Authorization;
10
11
12
use OAuth2\AuthorizationEndpointResponseTypes\ResponseTypeInterface;
13
use OAuth2\Endpoints\Authorization\AuthorizationRequestInterface;
14
use OAuth2\ResponseModes\ResponseModeInterface;
15
use OAuth2\Roles\ClientTypes\RegisteredClient;
16
use OAuth2\Roles\ResourceOwnerInterface;
17
use Psr\Http\Message\UriInterface;
18
19
class AuthorizationRequest implements AuthorizationRequestInterface
20
{
21
    /**
22
     * @var string
23
     */
24
    private $codeChallenge;
25
    /**
26
     * @var string
27
     */
28
    private $codeChallengeMethod;
29
    /**
30
     * @var \OAuth2\Endpoints\Authorization\AuthorizationRequest
31
     */
32
    private $authorizationRequest;
33
34
    /** @noinspection PhpMissingParentConstructorInspection
35
     * @param \OAuth2\Endpoints\Authorization\AuthorizationRequest $authorizationRequest
36
     * @param string $codeChallenge
37
     * @param string $codeChallengeMethod
38
     */
39
    public function __construct(\OAuth2\Endpoints\Authorization\AuthorizationRequest $authorizationRequest,
40
                                string $codeChallenge, string $codeChallengeMethod = 'plain')
41
    {
42
        $this->authorizationRequest = $authorizationRequest;
43
        $this->codeChallenge = $codeChallenge;
44
        $this->codeChallengeMethod = $codeChallengeMethod;
45
    }
46
47
48
    public function __call($name, $args) {
49
        $this->authorizationRequest->$name($args);
50
    }
51
52
    /**
53
     * @return string
54
     */
55
    public function getCodeChallenge(): string
56
    {
57
        return $this->codeChallenge;
58
    }
59
60
    /**
61
     * @return string
62
     */
63
    public function getCodeChallengeMethod(): string
64
    {
65
        return $this->codeChallengeMethod;
66
    }
67
68
    public function getData(): array
69
    {
70
       return $this->authorizationRequest->getData();
71
    }
72
73
    /**
74
     * @return ResourceOwnerInterface
75
     */
76
    public function getResourceOwner(): ResourceOwnerInterface
77
    {
78
        return $this->authorizationRequest->getResourceOwner();
79
    }
80
81
    /**
82
     * @return RegisteredClient
83
     */
84
    public function getClient(): RegisteredClient
85
    {
86
        return $this->authorizationRequest->getClient();
87
    }
88
89
    /**
90
     * @return UriInterface
91
     */
92
    public function getRedirectUri(): UriInterface
93
    {
94
        return $this->authorizationRequest->getRedirectUri();
95
    }
96
97
    /**
98
     * @return ResponseTypeInterface
99
     */
100
    public function getResponseType(): ResponseTypeInterface
101
    {
102
        return $this->authorizationRequest->getResponseType();
103
    }
104
105
    /**
106
     * @return ResponseModeInterface
107
     */
108
    public function getResponseMode(): ResponseModeInterface
109
    {
110
        return $this->authorizationRequest->getResponseMode();
111
    }
112
113
    /**
114
     * @return array
115
     */
116
    public function getScopes(): array
117
    {
118
        return $this->authorizationRequest->getScopes();
119
    }
120
121
    /**
122
     * @return array|null
123
     */
124
    public function getRequestedScopes(): ?array
125
    {
126
        return $this->authorizationRequest->getRequestedScopes();
127
    }
128
129
    /**
130
     * @return null|string
131
     */
132
    public function getState(): ?string
133
    {
134
        return $this->authorizationRequest->getState();
135
    }
136
}