Interface ProtocolHandler

All Known Implementing Classes:
AuthenticationProtocolHandler, ContinueProtocolHandler, ProxyAuthenticationProtocolHandler, RedirectProtocolHandler, UpgradeProtocolHandler, WWWAuthenticationProtocolHandler

public interface ProtocolHandler

A protocol handler performs HTTP protocol operations on behalf of the application, typically like a browser would.

A typical example is handling HTTP redirects. HttpClient could just return the redirect response to the application, but the application would have to implement the redirect functionality (while browsers do this automatically).

  • Method Details

    • getName

      String getName()
      Returns:
      a unique name among protocol handlers
    • accept

      boolean accept(Request request, Response response)

      Inspects the given request and response to detect whether this protocol handler should handle them.

      For example, a redirect protocol handler can inspect the response code and return true if it is a redirect response code.

      This method is being called just after the response line has been parsed, and before the response headers are available.

      Parameters:
      request - the request to accept
      response - the response to accept
      Returns:
      true if this protocol handler can handle the given request and response
    • getResponseListener

      Response.Listener getResponseListener()
      Returns:
      a response listener that will handle the request and response on behalf of the application.