AsyncHttpClient.sendRequest() should return a future
----------------------------------------------------

                 Key: GERONIMO-3615
                 URL: https://issues.apache.org/jira/browse/GERONIMO-3615
             Project: Geronimo
          Issue Type: New Feature
      Security Level: public (Regular issues)
          Components: AsyncHttpClient
    Affects Versions: 1.x
            Reporter: Sangjin Lee


Currently the caller gets notified when the I/O is completed via 
AsyncHttpClientCallback.  While this works for many use cases, there may be 
situations where sendRequest() returning a future would lead to a much more 
straightforward programming model.  This will become much more powerful 
especially if one initiates requests to multiple URLs at once.

I would request that sendRequest() return a future object on which one can 
query the status of the operation, and also obtain the result or an error case 
(exception or timeout) by calling methods on the future.  It is desirable to 
have the return type implement java.util.concurrent.Future.

Furthermore, the implementation class of the Future could retain the reference 
to the callback.  Then one can have a consolidated and coherent mechanism of 
completion (callbacks firing as a result of future completion).

In other words, the suggestion is to change the return type of sendRequest() 
from void to java.util.concurrent.Future<HttpResponseMessage>.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to