Class GoogleAuthorizationCodeRequestUrl (2.5.0)

public class GoogleAuthorizationCodeRequestUrl extends AuthorizationCodeRequestUrl

Google-specific implementation of the OAuth 2.0 URL builder for an authorization web page to allow the end user to authorize the application to access their protected resources and that returns an authorization code, as specified in Using OAuth 2.0 for Web Server Applications.

The default for #getResponseTypes() is "code". Use AuthorizationCodeResponseUrl to parse the redirect response after the end user grants/denies the request. Using the authorization code in this response, use GoogleAuthorizationCodeTokenRequest to request the access token.

Sample usage for a web application:


 public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {
      String url = new GoogleAuthorizationCodeRequestUrl(
           "812741506391.apps.googleusercontent.com",
           "https://oauth2-login-demo.appspot.com/code",
           Arrays.asList("https://www.googleapis.com/auth/userinfo.email",
                   "https://www.googleapis.com/auth/userinfo.profile"))
           .setState("/profile").build();
      response.sendRedirect(url);
 }
 

Implementation is not thread-safe.

Inheritance

Object > java.util.AbstractMap > com.google.api.client.util.GenericData > com.google.api.client.http.GenericUrl > com.google.api.client.auth.oauth2.AuthorizationRequestUrl > com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl > GoogleAuthorizationCodeRequestUrl

Constructors

GoogleAuthorizationCodeRequestUrl(GoogleClientSecrets clientSecrets, String redirectUri, Collection<String> scopes)

public GoogleAuthorizationCodeRequestUrl(GoogleClientSecrets clientSecrets, String redirectUri, Collection<String> scopes)
Parameters
Name Description
clientSecrets GoogleClientSecrets

OAuth 2.0 client secrets JSON model as specified in client_secrets.json file format

redirectUri String

URI that the authorization server directs the resource owner's user-agent back to the client after a successful authorization grant

scopes Collection<String>

scopes (see #setScopes(Collection))

GoogleAuthorizationCodeRequestUrl(String authorizationServerEncodedUrl, String clientId, String redirectUri, Collection<String> scopes)

public GoogleAuthorizationCodeRequestUrl(String authorizationServerEncodedUrl, String clientId, String redirectUri, Collection<String> scopes)
Parameters
Name Description
authorizationServerEncodedUrl String

authorization server encoded URL

clientId String

client identifier

redirectUri String

URI that the authorization server directs the resource owner's user-agent back to the client after a successful authorization grant

scopes Collection<String>

scopes (see #setScopes(Collection))

GoogleAuthorizationCodeRequestUrl(String clientId, String redirectUri, Collection<String> scopes)

public GoogleAuthorizationCodeRequestUrl(String clientId, String redirectUri, Collection<String> scopes)
Parameters
Name Description
clientId String

client identifier

redirectUri String

URI that the authorization server directs the resource owner's user-agent back to the client after a successful authorization grant

scopes Collection<String>

scopes (see #setScopes(Collection))

Methods

clone()

public GoogleAuthorizationCodeRequestUrl clone()
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.clone()

getAccessType()

public final String getAccessType()

Returns the access type ("online" to request online access or "offline" to request offline access) or null for the default behavior of "online".

Returns
Type Description
String

getApprovalPrompt()

public final String getApprovalPrompt()

Returns the approval prompt behavior ("auto" to request auto-approval or "force" to force the approval UI to show) or null for the default behavior of "auto".

Returns
Type Description
String

set(String fieldName, Object value)

public GoogleAuthorizationCodeRequestUrl set(String fieldName, Object value)
Parameters
Name Description
fieldName String
value Object
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.set(java.lang.String,java.lang.Object)

setAccessType(String accessType)

public GoogleAuthorizationCodeRequestUrl setAccessType(String accessType)

Sets the access type ("online" to request online access or "offline" to request offline access) or null for the default behavior of "online".

Overriding is only supported for the purpose of calling the super implementation and changing the return type, but nothing else.

Parameter
Name Description
accessType String
Returns
Type Description
GoogleAuthorizationCodeRequestUrl

setApprovalPrompt(String approvalPrompt)

public GoogleAuthorizationCodeRequestUrl setApprovalPrompt(String approvalPrompt)

Sets the approval prompt behavior ("auto" to request auto-approval or "force" to force the approval UI to show) or null for the default behavior of "auto".

Overriding is only supported for the purpose of calling the super implementation and changing the return type, but nothing else.

Parameter
Name Description
approvalPrompt String
Returns
Type Description
GoogleAuthorizationCodeRequestUrl

setClientId(String clientId)

public GoogleAuthorizationCodeRequestUrl setClientId(String clientId)
Parameter
Name Description
clientId String
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.setClientId(java.lang.String)

setRedirectUri(String redirectUri)

public GoogleAuthorizationCodeRequestUrl setRedirectUri(String redirectUri)
Parameter
Name Description
redirectUri String
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.setRedirectUri(java.lang.String)

setResponseTypes(Collection<String> responseTypes)

public GoogleAuthorizationCodeRequestUrl setResponseTypes(Collection<String> responseTypes)
Parameter
Name Description
responseTypes Collection<String>
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.setResponseTypes(java.util.Collection<java.lang.String>)

setScopes(Collection<String> scopes)

public GoogleAuthorizationCodeRequestUrl setScopes(Collection<String> scopes)
Parameter
Name Description
scopes Collection<String>
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.setScopes(java.util.Collection<java.lang.String>)

setState(String state)

public GoogleAuthorizationCodeRequestUrl setState(String state)
Parameter
Name Description
state String
Returns
Type Description
GoogleAuthorizationCodeRequestUrl
Overrides
com.google.api.client.auth.oauth2.AuthorizationCodeRequestUrl.setState(java.lang.String)