@Override
    public <T> T execute(final ClassicHttpRequest request,
            final HttpClientResponseHandler<? extends T> responseHandler) throws IOException {
        return execute(request, null, responseHandler);
    }
Executes a request using the default context and processes the
response using the given response handler. The content entity associated
with the response is fully consumed and the underlying connection is
released back to the connection manager automatically in all cases
relieving individual {@link HttpClientResponseHandler}s from having to manage
resource deallocation internally.

@param request   the request to execute
@param responseHandler the response handler

@return  the response object as generated by the response handler.
@throws IOException in case of a problem or the connection was aborted
@throws ClientProtocolException in case of an http protocol error
httpclient5/src/main/java/org/apache/hc/client5/http/impl/classic/CloseableHttpClient.java