@Override
    protected HttpResponse doReceiveResponse(
        final HttpRequest          request,
        final HttpClientConnection conn,
        final HttpContext          context)
        throws HttpException, IOException {
        AWSRequestMetrics awsRequestMetrics = (AWSRequestMetrics) context
            .getAttribute(AWSRequestMetrics.SIMPLE_NAME);
        if (awsRequestMetrics == null) {
            return super.doReceiveResponse(request, conn, context);
        }
        awsRequestMetrics.startEvent(Field.HttpClientReceiveResponseTime);
        try {
            return super.doReceiveResponse(request, conn, context);
        } finally {
            awsRequestMetrics.endEvent(Field.HttpClientReceiveResponseTime);
        }
    }
Used to capture the http send-request and receive-response latency metrics
of the http client library, with no retries involved.
aws-java-sdk-core/src/main/java/com/amazonaws/http/protocol/SdkHttpRequestExecutor.java