Class AbstractCallbackServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
com.google.api.client.extensions.servlet.auth.AbstractCallbackServlet
- All Implemented Interfaces:
Serializable,javax.servlet.Servlet,javax.servlet.ServletConfig
@Beta
public abstract class AbstractCallbackServlet
extends javax.servlet.http.HttpServlet
Beta Callback that will retrieve and complete a
ThreeLeggedFlow when redirected to by a token
server or service provider. Developer should subclass to provide the necessary information
tailored to their specific use case.
Warning: starting with version 1.7, usage of this for OAuth 2.0 is deprecated. Instead use AbstractAuthorizationCodeCallbackServlet.
- Since:
- 1.4
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Stringprivate Stringprivate static final Stringprivate Class<? extends ThreeLeggedFlow> private final com.google.api.client.http.HttpTransportprivate final com.google.api.client.json.JsonFactoryprivate static final Loggerprivate javax.jdo.PersistenceManagerFactoryprivate Stringprivate static final long -
Constructor Summary
ConstructorsConstructorDescriptionConstructor with will ask the concrete subclass for all required information on the environment. -
Method Summary
Modifier and TypeMethodDescriptionprotected final voiddoGet(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp) protected abstract Stringprotected abstract Class<? extends ThreeLeggedFlow> protected abstract Stringprotected final com.google.api.client.http.HttpTransportReturn theHttpTransportinstance for this servlet.protected final com.google.api.client.json.JsonFactoryReturn theJsonFactoryinstance for this servlet.protected abstract javax.jdo.PersistenceManagerFactoryOverride with your chosen method to get a PersistenceManagerFactory.protected abstract Stringprotected abstract Stringprotected abstract com.google.api.client.http.HttpTransportCreate a newHttpTransportinstance.protected abstract com.google.api.client.json.JsonFactoryCreate a newJsonFactoryinstance.Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service, serviceMethods inherited from class javax.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, init, log, log
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
LOG
-
ERROR_PARAM
- See Also:
-
pmf
private javax.jdo.PersistenceManagerFactory pmf -
flowType
-
redirectUrl
-
deniedRedirectUrl
-
completionCodeQueryParam
-
httpTransport
private final com.google.api.client.http.HttpTransport httpTransport -
jsonFactory
private final com.google.api.client.json.JsonFactory jsonFactory
-
-
Constructor Details
-
AbstractCallbackServlet
public AbstractCallbackServlet()Constructor with will ask the concrete subclass for all required information on the environment.
-
-
Method Details
-
getJsonFactory
protected final com.google.api.client.json.JsonFactory getJsonFactory()Return theJsonFactoryinstance for this servlet. -
getHttpTransport
protected final com.google.api.client.http.HttpTransport getHttpTransport()Return theHttpTransportinstance for this servlet. -
getPersistenceManagerFactory
protected abstract javax.jdo.PersistenceManagerFactory getPersistenceManagerFactory()Override with your chosen method to get a PersistenceManagerFactory. For app engine applications this should be a singleton.- Returns:
- PersistenceManagerFactory instance.
-
getConcreteFlowType
- Returns:
- Specific ThreeLeggedFlow type that this callback should retreieve and complete.
-
getSuccessRedirectUrl
- Returns:
- Url to redirect the user to upon a successful credential exchange.
-
getDeniedRedirectUrl
- Returns:
- Url to redirect the user to upon failure.
-
getCompletionCodeQueryParam
- Returns:
- Specific query parameter keyword to key off of to get completion code. (e.g. "code" for OAuth2 and "verifier" for OAuth1)
-
getUserId
- Returns:
- Get a string representation of a userId that can be used to associate credentials and flows with a specific user.
-
newHttpTransportInstance
protected abstract com.google.api.client.http.HttpTransport newHttpTransportInstance()Create a newHttpTransportinstance. Implementations can create any type of applicable transport and should be as simple as:new NetHttpTransport();
- Returns:
HttpTransportinstance for your particular environment
-
newJsonFactoryInstance
protected abstract com.google.api.client.json.JsonFactory newJsonFactoryInstance()Create a newJsonFactoryinstance. Implementations can create any type of applicable json factory and should be as simple as:new JacksonFactory();
- Returns:
JsonFactoryinstance for your particular environment
-
doGet
protected final void doGet(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp) throws IOException, javax.servlet.ServletException - Overrides:
doGetin classjavax.servlet.http.HttpServlet- Throws:
IOExceptionjavax.servlet.ServletException
-