Passed
Pull Request — master (#8)
by
unknown
14:36
created

getRevokeAccessTokenMethod()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
nc 1
cc 1
nop 0
1
<?php
2
3
namespace Bogstag\OAuth2\Client\Provider;
4
5
use GuzzleHttp\Exception\BadResponseException;
6
use League\OAuth2\Client\Provider\AbstractProvider;
7
use League\OAuth2\Client\Token\AccessTokenInterface;
8
9
abstract class AbstractExtendedProvider extends AbstractProvider
10
{
11
    /**
12
     * Returns the base URL for revoking an access token.
13
     *
14
     * Eg. https://oauth.service.com/revoke
15
     *
16
     * @return string
17
     */
18
    abstract public function getBaseRevokeAccessTokenUrl();
19
20
    /**
21
     * Revokes an access token.
22
     *
23
     * @param AccessTokenInterface $token
24
     * @throws BadResponseException
25
     * @return void
26
     */
27
    public function revokeAccessToken(AccessTokenInterface $token)
28
    {
29
        $params = [
30
            'client_id'     => $this->clientId,
31
            'client_secret' => $this->clientSecret,
32
            'token'         => $token->getToken(),
33
        ];
34
35
        $request = $this->getRevokeAccessTokenRequest($params);
36
37
        $this->getResponse($request);
38
    }
39
40
    protected function getRevokeAccessTokenRequest(array $params)
41
    {
42
        $method = $this->getRevokeAccessTokenMethod();
43
        $url    = $this->getBaseRevokeAccessTokenUrl();
44
45
        return $this->getRequest($method, $url, $params);
46
    }
47
48
    protected function getRevokeAccessTokenMethod()
49
    {
50
        return self::METHOD_POST;
51
    }
52
}
53