@Override
    public void process(final HttpResponse response,
                        final EntityDetails entity,
                        final HttpContext context) throws HttpException, IOException {
        if (response.getCode() == HttpStatus.SC_NOT_MODIFIED) {
            for (final String headerName : DISALLOWED_ENTITY_HEADERS) {
                response.removeHeaders(headerName);
            }
        }
        if (!response.containsHeader(HttpHeaders.DATE)) {
            response.addHeader(new BasicHeader(HttpHeaders.DATE, Instant.now()));
        }
    }
This response interceptor removes common {@literal Content-} headers from the 304
response messages based on the provision of the HTTP specification that 304
status code represents a confirmation that the requested resource content has
not changed since its retrieval or the last update and adds {@literal Date}
header if it is not present in the response message..
httpclient5-cache/src/main/java/org/apache/hc/client5/http/impl/cache/ResponseCacheConformance.java