Latest changes in the trunk 
===========================
* Ported HTTP request retry handling code from HttpClient 3.x to the new
API.

* Added HttpUriRequest interface extending HttpRequest with additional
support for java.net.URI. Standard HTTP methods retain a reference to an
instance of java.net.URI given at the request construction time that can
be re-used during request execution thus eliminating the need to parse
the request URI multiple times.

* Implemented request wrappers that can be used to revert to the state
of the original request by discarding the auto-generated headers in case
of a redirect or an authentication failure. Request wrappers can also be
used to re-write request URIs if required (for instance when routing
requests via a proxy).

* Changed HttpClient interface to take a single HttpUriRequest parameter
instead of the HttpHost / HttpRequest pair

Roland,

I have a few questions regarding your original code:

(1) What is the difference between a layered and a tunneled HTTP route?

(2) Do you envisage custom implementations of the RoutedRequest
interface? I think it is just a simple tuple of a request and its route
and it could be made a concrete class, whereas HttpRoute should be an
interface. Anyone who needs custom details in the RoutedRequest should
rather provide a custom implementation of the HttpRoute.

(3) Would you object removing #getConnectionManager() from HttpClient
interface? I suspect rather strongly ClientConnectionManager interface
in its present form cannot be used to manage NIO based connections. This
also causes HttpClient interface to be unusable for non-blocking
implementations.

Next steps
===========================
* Port redirect handling code

Evil Comrade Oleg


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to