Completed
Push — master ( bd84b9...b5be07 )
by zacksleo
05:55 queued 04:45
created

AccessToken::getAccessToken()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 8
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 0
Metric Value
dl 0
loc 8
ccs 0
cts 8
cp 0
rs 9.4285
c 0
b 0
f 0
cc 2
eloc 5
nc 2
nop 1
crap 6
1
<?php
2
3
namespace zacksleo\yii2\oauth2\common\models\storage;
4
5
use yii;
6
use zacksleo\yii2\oauth2\common\helpers\Predis;
7
use OAuth2\Storage\AccessTokenInterface;
8
9
class AccessToken implements AccessTokenInterface
10
{
11
    public function getAccessToken($oauthToken)
12
    {
13
        $oauthAccessToken = Predis::getInstance()->getClient()->getToken($oauthToken);
14
        if (empty($oauthAccessToken)) {
15
            return [];
16
        }
17
        return $oauthAccessToken;
18
    }
19
20
    public function setAccessToken($oauthToken, $clientId, $userId, $expires, $scope = null)
21
    {
22
        $model = Yii::$container->get('user_credentials');
23
        $user = $model::findIdentity($userId);
24
        $value = [
25
            'access_token' => $oauthToken,
26
            'client_id' => $clientId,
27
            'user_id' => $userId,
28
            'expires' => $expires,
29
            'scope' => null,
30
            'union_id' => $user->getUnionId()
31
        ];
32
        Predis::getInstance()->getClient()->setToken($oauthToken, $value);
33
    }
34
}
35