Passed
Push — master ( 2b2d6e...305862 )
by Rutger
13:36
created

Oauth2RequestHelper::getClientCredentials()

Size

Total Lines 25
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 5
c 1
b 0
f 0
dl 0
loc 25
nc 1
nop 1

3 Methods

Rating   Name   Duplication   Size   Complexity  
A Oauth2RequestHelper.php$0 ➔ respondToAccessTokenRequest() 0 3 1
A Oauth2RequestHelper.php$0 ➔ getClientCredentialsFromYiiRequest() 0 3 1
A Oauth2RequestHelper.php$0 ➔ getIdentifier() 0 2 1
1
<?php
2
3
namespace rhertogh\Yii2Oauth2Server\helpers;
4
5
use League\OAuth2\Server\Grant\AbstractGrant;
6
use League\OAuth2\Server\ResponseTypes\RedirectResponse;
7
use League\OAuth2\Server\ResponseTypes\ResponseTypeInterface;
8
use Psr\Http\Message\ServerRequestInterface;
9
use yii\web\Request;
10
11
class Oauth2RequestHelper
12
{
13
    /**
14
     * @param Request $request
15
     * @return array
16
     */
17
    public static function getClientCredentials(Request $request)
18
    {
19
        // Piggyback on underlying Oauth2 server in order to maintain same client identification methods.
20
        $grant = new class extends AbstractGrant
21
        {
22
            public function getIdentifier() {
23
                return 'dummy';
24
            }
25
26
            public function respondToAccessTokenRequest(ServerRequestInterface $request, ResponseTypeInterface $responseType, \DateInterval $accessTokenTTL)
27
            {
28
                return new RedirectResponse();
29
            }
30
31
            /**
32
             * @param Request $request
33
             * @return array
34
             */
35
            public function getClientCredentialsFromYiiRequest(Request $request)
36
            {
37
                return parent::getClientCredentials(Psr7Helper::yiiToPsr7Request($request));
38
            }
39
        };
40
41
        return $grant->getClientCredentialsFromYiiRequest($request);
42
    }
43
}
44