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]
