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 > GoogleAuthorizationCodeRequestUrlConstructors
GoogleAuthorizationCodeRequestUrl(GoogleClientSecrets clientSecrets, String redirectUri, Collection<String> scopes)
public GoogleAuthorizationCodeRequestUrl(GoogleClientSecrets clientSecrets, String redirectUri, Collection<String> scopes)
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)
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)
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()
Type | Description |
GoogleAuthorizationCodeRequestUrl |
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"
.
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"
.
Type | Description |
String |
set(String fieldName, Object value)
public GoogleAuthorizationCodeRequestUrl set(String fieldName, Object value)
Name | Description |
fieldName | String |
value | Object |
Type | Description |
GoogleAuthorizationCodeRequestUrl |
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.
Name | Description |
accessType | String |
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.
Name | Description |
approvalPrompt | String |
Type | Description |
GoogleAuthorizationCodeRequestUrl |
setClientId(String clientId)
public GoogleAuthorizationCodeRequestUrl setClientId(String clientId)
Name | Description |
clientId | String |
Type | Description |
GoogleAuthorizationCodeRequestUrl |
setRedirectUri(String redirectUri)
public GoogleAuthorizationCodeRequestUrl setRedirectUri(String redirectUri)
Name | Description |
redirectUri | String |
Type | Description |
GoogleAuthorizationCodeRequestUrl |
setResponseTypes(Collection<String> responseTypes)
public GoogleAuthorizationCodeRequestUrl setResponseTypes(Collection<String> responseTypes)
Name | Description |
responseTypes | Collection<String> |
Type | Description |
GoogleAuthorizationCodeRequestUrl |
setScopes(Collection<String> scopes)
public GoogleAuthorizationCodeRequestUrl setScopes(Collection<String> scopes)
Name | Description |
scopes | Collection<String> |
Type | Description |
GoogleAuthorizationCodeRequestUrl |
setState(String state)
public GoogleAuthorizationCodeRequestUrl setState(String state)
Name | Description |
state | String |
Type | Description |
GoogleAuthorizationCodeRequestUrl |