Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Jakarta-httpclient 
Wiki" for change notification.

The following page has been changed by OlegKalnichevski:
http://wiki.apache.org/jakarta-httpclient/HttpClientApiRedesign

------------------------------------------------------------------------------
  
  == http-common ==
  
- possible package name: '''org.apache.http'''
+ Package name: '''org.apache.http'''
  
  depends on 
  
-  * Java 1.4 (* see notes)
-  * commons-logging (** see notes)
+  * Java 1.4 compile time; Java 1.3 runtime
+ 
+ Public interfaces and classes (API) require Java 1.2 only
+ 
+ Impl classes based on the old IO model require Java 1.3
+ 
+ Impl classes based on the new IO (NIO) model require Java 1.4
  
  provides
  
   * Http header primitives as defined in RFC 822
     
-    a. {{{ HttpHeader }}} class
+    a. {{{ Header }}} class
-    a. {{{ HttpHeaderElement }}} class
+    a. {{{ HeaderElement }}} class
-    a. {{{ HttpHeaderGroup }}} class
  
   * Http request line and Http status line primitives as defined in RFC 2616
  
@@ -43, +47 @@

  
     a. {{{ HttpParams }}} interface
     a. {{{ DefaultHttpParams }}} class implementing {{{ HttpParams }}} 
interface
+    a. {{{ HttpConnectionParams }}} adaptor class providing easy access to 
TCP/IP specific parameters
+    a. {{{ HttpProtocolParams }}} adaptor class providing easy access to HTTP 
protocol specific parameters
  
   * Http request and Http response interfaces as defined in RFC 2616
  
-    a. {{{ HttpMessage }}} interface
-    a. {{{ HttpRequest }}} interface extending {{{ HttpMessage }}}
+    a. {{{ HttpMessage }}} interface. This interface represents an abstract 
immutable HTTP message
+    a. {{{ HttpRequest }}} interface extending {{{ HttpMessage }}}. This 
interface represents an immutable HTTP request
+    a. {{{ HttpResponse }}} interface extending  {{{ HttpMessage }}}. This 
interface represents an immutable HTTP response
+    a. {{{ HttpEntityEnclosingRequest }}} interface extending  {{{ HttpRequest 
}}}. This interface represents an immutable HTTP response that can enclose a 
request entity
-    a. {{{ HttpResponse }}} interface extending  {{{ HttpMessage }}}
+    a. {{{ HttpMutableMessage }}} interface extending {{{ HttpMessage }}}
-    a. {{{ HttpEntityEnclosingMessage }}} interface
-    a. {{{ HttpRequestParams }}} class
+    a. {{{ HttpMutableRequest }}} interface extending {{{ HttpRequest }}}. 
Classes implementing this interface can be used on the client side to assemble 
outgoing HTTP requests and/or on the server side to assemble incoming HTTP 
requests
+    a. {{{ HttpMutableResponse }}} interface extending {{{ HttpResponse }}}. 
Classes implementing this interface can be used on the server side to assemble 
outgoing HTTP responses and/or on the client side to assemble incoming HTTP 
responses
+    a. {{{ HttpMutableEntityEnclosingRequest }}} interface extending {{{ 
HttpEntityEnclosingRequest }}}. Classes implementing this interface can be used 
on the client side to assemble outgoing HTTP entity enclosing requests and/or 
on the server side to assemble incoming HTTP requests (such as POST and PUT)
  
   * 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 }}}
-    a. {{{ BasicHttpEntityEnclosingRequest }}} class extending {{{ 
BasicHttpRequest }}} and implementing {{{ HttpEntityEnclosingMessage }}}
+    a. {{{ BasicHttpEntityEnclosingRequest }}} class extending {{{ 
BasicHttpRequest }}} and implementing {{{ HttpEntityEnclosingRequest }}}
  
-  * Http parser interface and the RFC 2616 compliant implementation of it. The 
parser only has to be able to parse well formed Http requests and responses.
+  * Http data transmitter and receiver interfaces and their RFC 2616 compliant 
implementation. Data transmitters and receivers are capable of sending and 
receiving the most primitive data types such as array of bytes and lines of 
text.
  
-    a. {{{ HttpParser }}} interface
+    a. {{{ HttpDataTransmitter }}} interface
-    a. {{{ NIOHttpParser }}} class based on NIO (makes use of {{{ 
SocketChannel }}} and {{{ CharBuffer }}} )
+    a. {{{ HttpDataReceiver }}} interface
+    a. {{{ NIOHttpDataTransmitter }}} class implementing {{{ 
HttpDataTransmitter }}} interface. This class makes use of {{{ SocketChannel 
}}}, {{{ ByteBuffer }}} and {{{ CharBuffer }}} NIO specific classes.
+    a. {{{ NIOHttpDataReceiver }}} class implementing {{{ HttpDataReceiver }}} 
interface. This class makes use of {{{ SocketChannel }}}, {{{ ByteBuffer }}} 
and {{{ CharBuffer }}} NIO specific classes.
+    a. {{{ OldIOHttpDataTransmitter }}} class implementing {{{ 
HttpDataTransmitter }}} interface. This class makes use of {{{ Socket }}} and 
{{{ OutputStream }}} classes.
+    a. {{{ OldIOHttpDataReceiver }}} class implementing {{{ HttpDataReceiver 
}}} interface. This class makes use of {{{ Socket }}} and {{{ InputStream }}} 
classes.
  
   * Http entity interfaces for sending and receiving entities in Http messages
  
+    a. {{{ HttpEntity }}} interface. This interface represents an immutable 
entity
+    a. {{{ HttpMutableEntity }}} interface. Classes implementing this 
interface can be used to assemble incoming entities either on the client or 
server side
-    a. {{{ HttpEntity }}} interface
-    a. {{{ HttpIncomingEntity }}} interface extending {{{ HttpEntity }}} 
interface
-    a. {{{ HttpOutgoingEntity }}} interface extending {{{ HttpEntity }}} 
interface
-    a. {{{ BasicHttpEntity }}} class implementing {{{ HttpEntity }}} interface
+    a. {{{ BasicHttpEntity }}} class implementing {{{ HttpMutableEntity }}} 
interface
+    a. {{{ ByteArrayEntity }}} class implementing {{{ HttpEntity }}} 
interface. This class represents an outgoing entity backed by a byte array
+    a. {{{ StringEntity }}} class implementing {{{ HttpEntity }}} interface. 
This class represents an outgoing entity backed by a string
+    a. {{{ InputStreamEntity }}} class implementing {{{ HttpEntity }}} 
interface. This class represents an outgoing entity backed by a input stream
  
   * Http connection interface including a simple dependency mechanism to 
inject an Http parser implementation, and a generic implementation of Http 
connection
  
+    a. {{{ HttpConnection }}} interface. Defines basic properties of a HTTP 
connection
-    a. {{{ HttpConnection }}} interface. Defines basic read/write operations, 
provides Http parser plugin mechanism
-    a. {{{ HttpConnectionParams }}} class
     a. {{{ HttpClientConnection }}} interface extends {{{ HttpConnection }}}. 
Sends Http requests / receives Http responses
-    a. {{{ HttpServerConnection }}} interface extends {{{ HttpConnection }}}. 
Waits/polls for Http requests / submits Http responses
+    a. {{{ HttpServerConnection }}} interface extends {{{ HttpConnection }}}. 
Receives Http requests / sends Http responses
-    a. {{{ NIOHttpClientConnection }}} class implements {{{ 
HttpClientConnection }}} based on NIO (makes use of {{{ SocketChannel }}} )
-    a. {{{ NIOHttpServerConnection }}} class implements {{{ 
HttpServerConnection }}} based on NIO (makes use of {{{ SocketChannel }}} )
+    a. {{{ DefaultHttpClientConnection }}} class implements {{{ 
HttpClientConnection }}}. This class uses NIO based data transmitter and 
receiver if NIO is supported, otherwise old IO based data transmitter and 
receiver are used
+    a. {{{ DefaultHttpServerConnection }}} class implements {{{ 
HttpServerConnection }}}. This class uses NIO based data transmitter and 
receiver if NIO is supported, otherwise old IO based data transmitter and 
receiver are used
     a. {{{ HttpHost }}} class
  
   * Input / output chunking streams
@@ -92, +106 @@

  
   * 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. {{{ HttpRequestExecutor }}} class
     a. {{{ HttpContext }}} interface to access 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 context, retry handler and sequence handler
  
-    a. {{{ StdHttpContext }}} class implementing {{{ HttpContext }}}
+    a. {{{ BasicHttpContext }}} class implementing {{{ HttpContext }}}
     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
@@ -112, +126 @@

     a. {{{ HeadRequest }}} class implementing {{{ HttpRequest }}} interface
     a. {{{ TraceRequest }}} class implementing {{{ HttpRequest }}} interface
  
-  * Frequently used Http entity types
- 
-    a. {{{ StringEntity }}} class extending {{{ BasicHttpEntity }}} and 
implementing {{{ HttpIncomingEntity }}}, {{{ HttpOutgoingEntity }}}
-    a. {{{ ByteArrayEntity }}} class extending {{{ BasicHttpEntity }}} and 
implementing {{{ HttpIncomingEntity }}}, {{{ HttpOutgoingEntity }}}
-    a. {{{ StreamIcEntity }}} class extending {{{ BasicHttpEntity }}} and 
implementing {{{ HttpIncomingEntity }}} [[BR]] for piping received data into an 
output stream
-    a. {{{ StreamOgEntity }}} class extending {{{ BasicHttpEntity }}} and 
implementing {{{ HttpOutgoingEntity }}} [[BR]] for sending data available from 
an input stream
- 
   * Basic Http proxy support
  
-    a. {{{ ProxyConnectRequest }}} class implementing {{{ HttpRequest }}} 
interface
+    a. {{{ HttpConnectRequest }}} class implementing {{{ HttpRequest }}} 
interface
     a. {{{ HttpProxyHost }}} class
  
   * Http proxy chain support

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

Reply via email to