22
33import com .github .scribejava .apis .ImgurApi ;
44import com .github .scribejava .core .builder .api .DefaultApi20 ;
5- import com .github .scribejava .core .model .*;
5+ import com .github .scribejava .core .model .AbstractRequest ;
6+ import com .github .scribejava .core .model .OAuthConfig ;
7+ import com .github .scribejava .core .model .OAuthConstants ;
8+ import com .github .scribejava .core .model .OAuthRequest ;
9+ import com .github .scribejava .core .model .Token ;
10+ import com .github .scribejava .core .model .Verifier ;
611import com .github .scribejava .core .oauth .OAuth20ServiceImpl ;
712
813public final class ImgurOAuthServiceImpl extends OAuth20ServiceImpl {
@@ -13,14 +18,18 @@ public ImgurOAuthServiceImpl(final DefaultApi20 api, final OAuthConfig config) {
1318
1419 @ Override
1520 public Token getAccessToken (final Token requestToken , final Verifier verifier ) {
16- final boolean oob = ((ImgurApi ) getApi ()).isOob (getConfig ());
17-
1821 final OAuthRequest request = new OAuthRequest (getApi ().getAccessTokenVerb (),
1922 getApi ().getAccessTokenEndpoint (), this );
2023 request .addBodyParameter (OAuthConstants .CLIENT_ID , getConfig ().getApiKey ());
2124 request .addBodyParameter (OAuthConstants .CLIENT_SECRET , getConfig ().getApiSecret ());
22- request .addBodyParameter (OAuthConstants .GRANT_TYPE , oob ? "pin" : OAuthConstants .AUTHORIZATION_CODE );
23- request .addBodyParameter (oob ? "pin" : OAuthConstants .CODE , verifier .getValue ());
25+
26+ if (ImgurApi .isOob (getConfig ())) {
27+ request .addBodyParameter (OAuthConstants .GRANT_TYPE , "pin" );
28+ request .addBodyParameter ("pin" , verifier .getValue ());
29+ } else {
30+ request .addBodyParameter (OAuthConstants .GRANT_TYPE , OAuthConstants .AUTHORIZATION_CODE );
31+ request .addBodyParameter (OAuthConstants .CODE , verifier .getValue ());
32+ }
2433
2534 return getApi ().getAccessTokenExtractor ().extract (request .send ().getBody ());
2635 }
0 commit comments