|
3 | 3 | namespace CodebarAg\LaravelInstagram\Connectors; |
4 | 4 |
|
5 | 5 | use CodebarAg\LaravelInstagram\Authenticator\InstagramAuthenticator; |
6 | | -use CodebarAg\LaravelInstagram\Requests\Authentication\GetAccessTokenRequest; |
7 | | -use CodebarAg\LaravelInstagram\Requests\Authentication\GetShortLivedAccessTokenRequest; |
| 6 | +use CodebarAg\LaravelInstagram\Traits\AuthorizationCodeGrant; |
8 | 7 | use DateTimeImmutable; |
9 | 8 | use Saloon\Contracts\OAuthAuthenticator; |
10 | | -use Saloon\Exceptions\InvalidStateException; |
11 | | -use Saloon\Exceptions\OAuthConfigValidationException; |
12 | 9 | use Saloon\Helpers\OAuth2\OAuthConfig; |
13 | 10 | use Saloon\Http\Connector; |
14 | | -use Saloon\Http\Request; |
15 | | -use Saloon\Http\Response; |
16 | | -use Saloon\Traits\OAuth2\AuthorizationCodeGrant; |
17 | 11 |
|
18 | 12 | class InstagramConnector extends Connector |
19 | 13 | { |
@@ -61,51 +55,4 @@ protected function defaultOauthConfig(): OAuthConfig |
61 | 55 | ->setTokenEndpoint('https://api.instagram.com/oauth/access_token') |
62 | 56 | ->setUserEndpoint('/me'); |
63 | 57 | } |
64 | | - |
65 | | - /** |
66 | | - * Get the short lived access token. |
67 | | - * |
68 | | - * @template TRequest of \Saloon\Http\Request |
69 | | - * |
70 | | - * @param callable(TRequest): (void)|null $requestModifier |
71 | | - * |
72 | | - * @throws \Saloon\Exceptions\InvalidStateException |
73 | | - * @throws OAuthConfigValidationException |
74 | | - */ |
75 | | - public function getShortLivedAccessToken(string $code, ?string $state = null, ?string $expectedState = null, bool $returnResponse = false, ?callable $requestModifier = null): OAuthAuthenticator|Response |
76 | | - { |
77 | | - $this->oauthConfig()->validate(); |
78 | | - |
79 | | - if (! empty($state) && ! empty($expectedState) && $state !== $expectedState) { |
80 | | - throw new InvalidStateException; |
81 | | - } |
82 | | - |
83 | | - $request = $this->resolveShortLivedAccessTokenRequest($code, $this->oauthConfig()); |
84 | | - |
85 | | - $request = $this->oauthConfig()->invokeRequestModifier($request); |
86 | | - |
87 | | - if (is_callable($requestModifier)) { |
88 | | - $requestModifier($request); |
89 | | - } |
90 | | - |
91 | | - $response = $this->send($request); |
92 | | - |
93 | | - if ($returnResponse === true) { |
94 | | - return $response; |
95 | | - } |
96 | | - |
97 | | - $response->throw(); |
98 | | - |
99 | | - return $this->createOAuthAuthenticatorFromResponse($response); |
100 | | - } |
101 | | - |
102 | | - protected function resolveAccessTokenRequest(string $code, OAuthConfig $oauthConfig): Request |
103 | | - { |
104 | | - return new GetAccessTokenRequest($code, $oauthConfig); |
105 | | - } |
106 | | - |
107 | | - protected function resolveShortLivedAccessTokenRequest(string $code, OAuthConfig $oauthConfig): Request |
108 | | - { |
109 | | - return new GetShortLivedAccessTokenRequest($code, $oauthConfig); |
110 | | - } |
111 | 58 | } |
0 commit comments