hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matt Inger (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HTTPASYNC-76) CachingHttpAsyncClient does not follow same pattern as Caching HttpClient
Date Mon, 05 May 2014 18:13:14 GMT
Matt Inger created HTTPASYNC-76:

             Summary: CachingHttpAsyncClient does not follow same pattern as Caching HttpClient

                 Key: HTTPASYNC-76
                 URL: https://issues.apache.org/jira/browse/HTTPASYNC-76
             Project: HttpComponents HttpAsyncClient
          Issue Type: Improvement
    Affects Versions: 4.0.1
            Reporter: Matt Inger

I would have expected the Caching version of the HttpAsyncClient library to following same
pattern as the non async version.  In the non-async version, we have a CachingHttpClientBuilder
class which extends the HttpClientBuilder, and they both end up returning the same client
implementation:  CloseableHttpClient.  

I would have expected the same from the async version.  Instead it uses CachingHttpAsyncClient
as a decorator approach.

This is unfortunate, because i really want to be able to not care about the implementation
and do this:

    CloseableHttpAysncClient client = clientFactory.create("test");

But i cannot do this, due to the design.  I also considered this:

    HttpAysncClient client = clientFactory.create("test");

But this does not guarantee that it implements Closeable, and in fact, CachingHttpAsyncClient
does not implement that interface.

I'd like to see it more in line with the synchronous version.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org

View raw message