Class 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
    Author:
    moshenko@google.com (Jacob Moshenko)
    See Also:
    Serialized Form
    • Constructor Detail

      • AbstractCallbackServlet

        public AbstractCallbackServlet()
        Constructor with will ask the concrete subclass for all required information on the environment.
    • Method Detail

      • getJsonFactory

        protected final com.google.api.client.json.JsonFactory getJsonFactory()
        Return the JsonFactory instance for this servlet.
      • getHttpTransport

        protected final com.google.api.client.http.HttpTransport getHttpTransport()
        Return the HttpTransport instance 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

        protected abstract Class<? extends ThreeLeggedFlow> getConcreteFlowType()
        Returns:
        Specific ThreeLeggedFlow type that this callback should retreieve and complete.
      • getSuccessRedirectUrl

        protected abstract String getSuccessRedirectUrl()
        Returns:
        Url to redirect the user to upon a successful credential exchange.
      • getDeniedRedirectUrl

        protected abstract String getDeniedRedirectUrl()
        Returns:
        Url to redirect the user to upon failure.
      • getCompletionCodeQueryParam

        protected abstract String getCompletionCodeQueryParam()
        Returns:
        Specific query parameter keyword to key off of to get completion code. (e.g. "code" for OAuth2 and "verifier" for OAuth1)
      • getUserId

        protected abstract String 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 new HttpTransport instance. Implementations can create any type of applicable transport and should be as simple as:
          new NetHttpTransport();
         
        Returns:
        HttpTransport instance for your particular environment
      • newJsonFactoryInstance

        protected abstract com.google.api.client.json.JsonFactory newJsonFactoryInstance()
        Create a new JsonFactory instance. Implementations can create any type of applicable json factory and should be as simple as:
          new JacksonFactory();
         
        Returns:
        JsonFactory instance 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:
        doGet in class javax.servlet.http.HttpServlet
        Throws:
        IOException
        javax.servlet.ServletException