public T buildUnconditionalRequest(final T request) {
        final T newRequest = messageCopier.create(request);
        newRequest.addHeader(HttpHeaders.CACHE_CONTROL,HeaderConstants.CACHE_CONTROL_NO_CACHE);
        newRequest.removeHeaders(HttpHeaders.IF_RANGE);
        newRequest.removeHeaders(HttpHeaders.IF_MATCH);
        newRequest.removeHeaders(HttpHeaders.IF_NONE_MATCH);
        newRequest.removeHeaders(HttpHeaders.IF_UNMODIFIED_SINCE);
        newRequest.removeHeaders(HttpHeaders.IF_MODIFIED_SINCE);
        return newRequest;
    }
Returns a request to unconditionally validate a cache entry with
the origin. In certain cases (due to multiple intervening caches)
our cache may actually receive a response to a normal conditional
validation where the Date header is actually older than that of
our current cache entry. In this case, the protocol recommendation
is to retry the validation and force syncup with the origin.
@param request client request we are trying to satisfy
@return an unconditional validation request
httpclient5-cache/src/main/java/org/apache/hc/client5/http/impl/cache/ConditionalRequestBuilder.java