## HTTPClient
Class DefaultModule

    java.lang.Object
      HTTPClient.DefaultModule

All Implemented Interfaces:
  HTTPClientModule, HTTPClientModuleConstants

class DefaultModule
extends Object
implements HTTPClientModule

This is the default module which gets called after all other modules have done their stuff.

Field Summary

Fields inherited from interface HTTPClient.HTTPClientModuleConstants
`REQ_CONTINUE, REQ_NEWCON_RST, REQ_NEWCON_SND, REQ_RESPONSE, REQ_RESTART, REQ_RETURN, REQ_SHORTCIRC, RSP_CONTINUE, RSP_NEWCON_REQ, RSP_NEWCON_SND, RSP_REQUEST, RSP_RESTART, RSP_SEND, RSP_SHORTCIRC`

Constructor Summary
`(package private)` `DefaultModule()` Three retries upon receipt of a 408.

Method Summary
`int` `requestHandler(Request req, Response[] resp)` Invoked by the HTTPClient.
`void` `responsePhase1Handler(Response resp, RoRequest req)` Invoked by the HTTPClient.
`int` `responsePhase2Handler(Response resp, Request req)` Invoked by the HTTPClient.
`void` `responsePhase3Handler(Response resp, RoRequest req)` Invoked by the HTTPClient.
`void` `trailerHandler(Response resp, RoRequest req)` Invoked by the HTTPClient.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### DefaultModule

    DefaultModule()

  Three retries upon receipt of a 408.

Method Detail

### requestHandler

    public int requestHandler(Request req,
                              Response[] resp)

  Invoked by the HTTPClient.

  Specified by:
    `requestHandler` in interface `HTTPClientModule`
  Parameters:
    `req` - the request - may be modified as needed
    `resp` - the response if the status is REQ_RESPONSE or REQ_RETURN
  Returns:
    status code REQ_XXX specifying further action

### responsePhase1Handler

    public void responsePhase1Handler(Response resp,
                                      RoRequest req)

  Invoked by the HTTPClient.

  Specified by:
    `responsePhase1Handler` in interface `HTTPClientModule`
  Parameters:
    `resp` - the response - may be modified
    `req` - the original request

### responsePhase2Handler

    public int responsePhase2Handler(Response resp,
                                     Request req)
                              throws IOException

  Invoked by the HTTPClient.

  Specified by:
    `responsePhase2Handler` in interface `HTTPClientModule`
  Parameters:
    `resp` - the response - may be modified
    `req` - the request; if the status is RSP_REQUEST then this must contain the new request; however do not modify this if you don't return a RSP_REQUEST status.
  Returns:
    status code RSP_XXX specifying further action
  Throws:
    `IOException` - if an IOException occurs on the socket

### responsePhase3Handler

    public void responsePhase3Handler(Response resp,
                                      RoRequest req)

  Invoked by the HTTPClient.

  Specified by:
    `responsePhase3Handler` in interface `HTTPClientModule`
  Parameters:
    `resp` - the response - may be modified
    `req` - the original request

### trailerHandler

    public void trailerHandler(Response resp,
                               RoRequest req)

  Invoked by the HTTPClient.

  Specified by:
    `trailerHandler` in interface `HTTPClientModule`
  Parameters:
    `resp` - the response
    `req` - the request