Class ResponseDate

java.lang.Object
org.apache.hc.core5.http.protocol.ResponseDate
All Implemented Interfaces:
HttpResponseInterceptor

@Contract(threading=SAFE) public class ResponseDate extends Object implements HttpResponseInterceptor
This response interceptor is responsible for adding Date header to outgoing response messages.

This interceptor is recommended for the HTTP protocol conformance and the correct operation of the server-side message processing pipeline.

If the Date header is missing or considered invalid, and the alwaysReplace flag is set to true, the interceptor will replace it with the current system date and time.

Since:
4.0
  • Field Details

    • alwaysReplace

      private final boolean alwaysReplace
      Indicates whether to always replace an invalid or missing Date header.
      Since:
      5.4
    • INSTANCE

      public static final ResponseDate INSTANCE
  • Constructor Details

    • ResponseDate

      public ResponseDate()
    • ResponseDate

      public ResponseDate(boolean alwaysReplace)
      Constructs a ResponseDate interceptor.
      Parameters:
      alwaysReplace - Whether to replace an invalid Date header. If true, the interceptor will replace any detected invalid Date header with a valid value.
      Since:
      5.4
  • Method Details

    • process

      public void process(HttpResponse response, EntityDetails entity, HttpContext context) throws HttpException, IOException
      Description copied from interface: HttpResponseInterceptor
      Processes a response. On the server side, this step is performed before the response is sent to the client. On the client side, this step is performed on incoming messages before the message body is evaluated.
      Specified by:
      process in interface HttpResponseInterceptor
      Parameters:
      response - the response to process
      entity - the request entity details or null if not available
      context - the context for the request
      Throws:
      HttpException - in case of an HTTP protocol violation
      IOException - in case of an I/O error