hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From httpclient-...@jakarta.apache.org
Subject [Jakarta-HttpClient Wiki] Updated: HttpClientApiRedesign
Date Tue, 08 Feb 2005 19:24:57 GMT
   Date: 2005-02-08T11:24:57
   Editor: RolandWeber
   Wiki: Jakarta-HttpClient Wiki
   Page: HttpClientApiRedesign
   URL: http://wiki.apache.org/jakarta-httpclient/HttpClientApiRedesign

   http context, sequence handler, and refactored authentication

Change Log:

------------------------------------------------------------------------------
@@ -40,13 +40,16 @@
    a. {{{ HttpParams }}} interface
    a. {{{ DefaultHttpParams }}} class implementing {{{ HttpParams }}} interface
 
- * Http request and Http response interfaces as defined in RFC 2616 and their generic implementation
+ * Http request and Http response interfaces as defined in RFC 2616
 
    a. {{{ HttpMessage }}} interface
    a. {{{ HttpRequest }}} interface extending {{{ HttpMessage }}}
    a. {{{ HttpResponse }}} interface extending  {{{ HttpMessage }}}
    a. {{{ HttpEntityEnclosingMessage }}} interface
    a. {{{ HttpRequestParams }}} class
+
+ * generic implementations of the Http request and response interfaces
+ 
    a. {{{ BasicHttpMessage }}} class implementing {{{ HttpMessage }}} interface
    a. {{{ BasicHttpRequest }}} class extending {{{ BasicHttpMessage }}} and implementing
{{{ HttpRequest }}}
    a. {{{ BasicHttpResponse }}} class extending {{{ BasicHttpMessage }}} and implementing
{{{ HttpResponse }}}, {{{ HttpEntityEnclosingMessage }}}
@@ -83,11 +86,18 @@
    
    a. {{{ HttpFilter }}} interface
 
- * Http method executor capable of executing http requests and receiving Http responses.
This class also is capable of retrying failed requests and provides a means of injecting a
number of Http filters. This class DOES NOT provide connection pooling/management facilities,
and DOES NOT handle redirects and authentication challenges.
+ * Http method executor capable of executing http requests and receiving Http responses.
This class also is capable of retrying failed requests and handling followup requests through
generic interfaces. It DOES NOT provide connection pooling/management facilities, and DOES
NOT implement redirects and authentication itself.
 
    a. {{{ HttpMethodExecutor }}} class
-   a. {{{ HttpRequestRetryHandler }}} interface
+   a. {{{ HttpContext }}} class to keep all kinds of data related to the execution of a request
+   a. {{{ HttpRequestRetryHandler }}} interface, to decide whether to retry after a communication
error
+   a. {{{ HttpSequenceHandler }}} interface, to generate followup requests if required
+
+ * implementations of retry and sequence handlers
+
    a. {{{ DefaultHttpRequestRetryHandler }}} class implementing {{{ HttpRequestRetryHandler
}}} interface
+   a. {{{ DefaultRedirectSequenceHandler }}} class implementing {{{ HttpSequenceHandler }}},
to handle 30x responses
+   a. {{{ SequenceHandlerChain }}} class implementing {{{ HttpSequenceHandler }}}, to manage
a list of sequence handlers
 
  * Most common Http request types: GET, POST, PUT, HEAD, TRACE
 
@@ -174,6 +184,13 @@
    a. {{{ NTLMScheme }}} class implementing {{{ AuthScheme }}}
    a. {{{ AuthChallengeParser }}} class
 
+ * Handling of 401 and 407 responses
+
+   a. {{{ StdAuthChallengeHandler }}} class implementing {{{ HttpSequenceHandler }}} interface
+   a. {{{ AuthorizationFilter }}} class implementing {{{ HttpFilter }}}, to insert authorization
headers into requests
+   a. {{{ AuthorizationContext }}} class for data sharing between the sequence handler and
the filter. Made available through the {{{ HttpContext }}} for a request.
+
+
 == http-conn ==
 
 possible package name: '''org.apache.http.connections'''
@@ -278,13 +295,9 @@
  * Http agent primitives
    
    a. {{{ HttpClientParams }}} class
-   a. {{{ AuthChallengeHandler }}} interface
-   a. {{{ StdAuthChallengeHandler }}} class implementing {{{ AuthChallengeHandler }}} interface
-   a. {{{ RedirectHandler }}} interface
-   a. {{{ StdRedirectHandler }}} class implementing {{{ RedirectHandler }}} interface
    a. {{{ HttpHostParams }}} class
    a. {{{ HostConfig }}} class
-   a. {{{ HttpClient }}} class. Supports a simple dependency injection mechanism to inject
{{{ HttpConnectionManager }}}, {{{ AuthChallengeHandler }}}, {{{ RedirectHandler }}}, {{{
HttpFilter }}} and possibly other dependencies.
+   a. {{{ HttpClient }}} class. Sets up the {{{ HttpContext }}} for method executions. Supports
a simple dependency injection mechanism to inject {{{ HttpConnectionManager }}}, {{{ HttpSequenceHandler
}}}, {{{ HttpFilter }}}, {{{ CookieStore }}} and possibly other dependencies.
 
  * Complex entity types, based on commons-codec
 

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


Mime
View raw message