Class AuthorizationCodeInstalledApp
- java.lang.Object
-
- com.google.api.client.extensions.java6.auth.oauth2.AuthorizationCodeInstalledApp
-
public class AuthorizationCodeInstalledApp extends Object
OAuth 2.0 authorization code flow for an installed Java application that persists end-user credentials.Implementation is thread-safe.
- Since:
- 1.11
- Author:
- Yaniv Inbar
-
-
Constructor Summary
Constructors Constructor Description AuthorizationCodeInstalledApp(AuthorizationCodeFlow flow, VerificationCodeReceiver receiver)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Credential
authorize(String userId)
Authorizes the installed application to access user's protected data.static void
browse(String url)
Open a browser at the given URL usingDesktop
if available, or alternatively output the URL toSystem.out
for command-line applications.AuthorizationCodeFlow
getFlow()
Returns the authorization code flow.VerificationCodeReceiver
getReceiver()
Returns the verification code receiver.protected void
onAuthorization(AuthorizationCodeRequestUrl authorizationUrl)
Handles user authorization by redirecting to the OAuth 2.0 authorization server.
-
-
-
Constructor Detail
-
AuthorizationCodeInstalledApp
public AuthorizationCodeInstalledApp(AuthorizationCodeFlow flow, VerificationCodeReceiver receiver)
- Parameters:
flow
- authorization code flowreceiver
- verification code receiver
-
-
Method Detail
-
authorize
public Credential authorize(String userId) throws IOException
Authorizes the installed application to access user's protected data.- Parameters:
userId
- user ID ornull
if not using a persisted credential store- Returns:
- credential
- Throws:
IOException
-
onAuthorization
protected void onAuthorization(AuthorizationCodeRequestUrl authorizationUrl) throws IOException
Handles user authorization by redirecting to the OAuth 2.0 authorization server.Default implementation is to call
browse(authorizationUrl.build())
. Subclasses may override to provide optional parameters such as the recommended state parameter. Sample implementation:@Override protected void onAuthorization(AuthorizationCodeRequestUrl authorizationUrl) throws IOException { authorizationUrl.setState("xyz"); super.onAuthorization(authorizationUrl); }
- Parameters:
authorizationUrl
- authorization URL- Throws:
IOException
- I/O exception
-
browse
public static void browse(String url)
Open a browser at the given URL usingDesktop
if available, or alternatively output the URL toSystem.out
for command-line applications.- Parameters:
url
- URL to browse
-
getFlow
public final AuthorizationCodeFlow getFlow()
Returns the authorization code flow.
-
getReceiver
public final VerificationCodeReceiver getReceiver()
Returns the verification code receiver.
-
-