blob: 79530571db0f8eb3a040b30021c8549b66506f95 [file] [log] [blame]
Release 4.0 Alpha 4
-------------------
The forth ALPHA version of HttpComponents Core has been released.
The ALPHA4 release fixes a number of bugs and adds a number of
improvements to HttpCore base and HttpCore NIO extensions.
HttpCore NIO can be used to build HTTP services intended to handle
thousands of simultaneous connections with a small number of I/O
threads. This release also introduces NIOSSL extensions that can be
used to extend HttpCore non-blocking transport components with
ability to transparently encrypt data in transit using SSL/TLS protocol.
* [HTTPCORE-49]: DefaultConnectingIOReactor can now correctly handle
unresolved socket addresses. It no longer terminates with the
UnresolvedAddressException runtime exception.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-42]: Added server side API for the expectation verification.
Improved support for the 'expect: continue' handshake in HttpCore and
HttpCore NIO.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-26]: Added SSL support for HttpCore NIO.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-40]: API classes no longer reference impl classes in module-main.
Contributed by Roland Weber <rolandw at apache.org>
* [HTTPCORE-39]: Refactored HttpStatus, spun off [English]ReasonPhraseFactory.
Contributed by Roland Weber <rolandw at apache.org>
* [HTTPCORE-32]: HttpRequestInterceptorList, HttpResponseInterceptorList
Contributed by Roland Weber <rolandw at apache.org>
* [HTTPCORE-38]: Packages nio.impl.* are now impl.nio.*, same for examples.
Contributed by Roland Weber <rolandw at apache.org>
* [HTTPCORE-27]: I/O reactors can now accept a thread factory as an optional
parameter.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-36]: Fixed #setHandlers() method and matching of request URIs
with a query part in HttpRequestHandlerRegistry
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-28]: DefaultConnectingIOReactor now maintains a queue of connect
requests and registers new sessions with the selector on the I/O thread.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-29] DefaultConnectingIOReactor changed to ensure IOExceptions
are correctly propagated to the caller, if an exception is thrown while
initializing a newly connected socket.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-24] Fixed bug in non-blocking connection implementations, which
prevented the session buffer from being correctly flushed when the content
coding process has been completed.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-23] Fixed threading bug in DefaultConnectingIOReactor.
Contributed by Asankha C. Perera <asankha at wso2.com>
HttpCore API changes (generated by JarDiff 0.2)
--------------------------------------
Class removed:
public abstract org.apache.http.ReasonPhraseCatalog extends java.lang.Object
Class removed:
public org.apache.http.impl.EnglishReasonPhraseCatalog extends java.lang.Object implements org.apache.http.ReasonPhraseCatalog
Class removed:
public org.apache.http.impl.NoConnectionReuseStrategy extends java.lang.Object implements org.apache.http.ConnectionReuseStrategy
Class removed:
public org.apache.http.impl.io.ChunkedInputStream extends java.io.InputStream
Class removed:
public org.apache.http.impl.io.ChunkedOutputStream extends java.io.OutputStream
Class removed:
public org.apache.http.impl.io.ContentLengthInputStream extends java.io.InputStream
Class removed:
public org.apache.http.impl.io.ContentLengthOutputStream extends java.io.OutputStream
Class removed:
public org.apache.http.impl.io.HttpDataInputStream extends java.io.InputStream
Class removed:
public org.apache.http.impl.io.HttpDataOutputStream extends java.io.OutputStream
Class removed:
public org.apache.http.impl.io.IdentityOutputStream extends java.io.OutputStream
Class removed:
public org.apache.http.message.BasicHttpVersionFormat extends java.lang.Object
Class removed:
public org.apache.http.params.BasicHttpParams extends java.lang.Object implements org.apache.http.params.HttpParams, java.io.Serializable
Class removed:
public abstract org.apache.http.protocol.HttpExpectationVerifier extends java.lang.Object
Class removed:
public abstract org.apache.http.protocol.HttpRequestInterceptorList extends java.lang.Object
Class removed:
public abstract org.apache.http.protocol.HttpResponseInterceptorList extends java.lang.Object
Class removed:
public org.apache.http.util.HeaderGroup extends java.lang.Object
Class removed:
public abstract org.apache.http.util.concurrent.Executor extends java.lang.Object
Class removed:
public abstract org.apache.http.util.concurrent.ThreadFactory extends java.lang.Object
Class added:
public org.apache.http.impl.DefaultHttpParams extends java.lang.Object implements org.apache.http.params.HttpParams, java.io.Serializable
Class added:
public org.apache.http.impl.HeaderGroup extends java.lang.Object
Class added:
public org.apache.http.io.ChunkedInputStream extends java.io.InputStream
Class added:
public org.apache.http.io.ChunkedOutputStream extends java.io.OutputStream
Class added:
public org.apache.http.io.ContentLengthInputStream extends java.io.InputStream
Class added:
public org.apache.http.io.ContentLengthOutputStream extends java.io.OutputStream
Class added:
public org.apache.http.io.HttpDataInputStream extends java.io.InputStream
Class added:
public org.apache.http.io.HttpDataOutputStream extends java.io.OutputStream
Class added:
public org.apache.http.io.IdentityOutputStream extends java.io.OutputStream
Class added:
public org.apache.http.message.BasicHttpVersion extends org.apache.http.HttpVersion
Class changed: org.apache.http.HttpConnection
Methods removed:
public abstract int getSocketTimeout();
public abstract void setSocketTimeout(int);
Class changed: org.apache.http.HttpInetConnection
Methods removed:
public abstract int getLocalPort();
public abstract int getRemotePort();
Class changed: org.apache.http.HttpResponse
Methods removed:
public abstract java.util.Locale getLocale();
public abstract void setLocale(java.util.Locale);
public abstract void setReasonPhrase(java.lang.String) throws java.lang.IllegalStateException;
public abstract void setStatusLine(org.apache.http.HttpVersion, int, java.lang.String);
Method changed:
old:
public abstract void setStatusCode(int) throws java.lang.IllegalStateException;
new:
public abstract void setStatusCode(int);
Class changed: org.apache.http.HttpResponseFactory
Methods removed:
public abstract org.apache.http.HttpResponse newHttpResponse(org.apache.http.HttpVersion, int, org.apache.http.protocol.HttpContext);
public abstract org.apache.http.HttpResponse newHttpResponse(org.apache.http.StatusLine, org.apache.http.protocol.HttpContext);
Methods added:
public abstract org.apache.http.HttpResponse newHttpResponse(org.apache.http.HttpVersion, int);
public abstract org.apache.http.HttpResponse newHttpResponse(org.apache.http.StatusLine);
Class changed: org.apache.http.HttpStatus
Methods added:
public HttpStatus();
public static java.lang.String getStatusText(int);
Class descriptor changed:
old:
public abstract org.apache.http.HttpStatus extends java.lang.Object
new:
public org.apache.http.HttpStatus extends java.lang.Object
Class changed: org.apache.http.HttpVersion
Class descriptor changed:
old:
public final org.apache.http.HttpVersion extends java.lang.Object implements java.lang.Comparable, java.io.Serializable
new:
public org.apache.http.HttpVersion extends java.lang.Object implements java.lang.Comparable
Class changed: org.apache.http.impl.DefaultHttpClientConnection
Methods removed:
public java.lang.String toString();
Class changed: org.apache.http.impl.DefaultHttpResponseFactory
Methods removed:
public DefaultHttpResponseFactory(org.apache.http.ReasonPhraseCatalog);
protected java.util.Locale determineLocale(org.apache.http.protocol.HttpContext);
public org.apache.http.HttpResponse newHttpResponse(org.apache.http.HttpVersion, int, org.apache.http.protocol.HttpContext);
public org.apache.http.HttpResponse newHttpResponse(org.apache.http.StatusLine, org.apache.http.protocol.HttpContext);
Methods added:
public org.apache.http.HttpResponse newHttpResponse(org.apache.http.HttpVersion, int);
public org.apache.http.HttpResponse newHttpResponse(org.apache.http.StatusLine);
Fields removed:
protected final org.apache.http.ReasonPhraseCatalog reasonCatalog;
Class changed: org.apache.http.impl.DefaultHttpServerConnection
Methods removed:
public java.lang.String toString();
Class changed: org.apache.http.impl.SocketHttpClientConnection
Methods removed:
public int getLocalPort();
public int getRemotePort();
public int getSocketTimeout();
public void setSocketTimeout(int);
Class changed: org.apache.http.impl.SocketHttpServerConnection
Methods removed:
public int getLocalPort();
public int getRemotePort();
public int getSocketTimeout();
public void setSocketTimeout(int);
Class changed: org.apache.http.message.BasicHttpResponse
Methods removed:
public BasicHttpResponse(org.apache.http.HttpVersion, int, java.lang.String);
public BasicHttpResponse(org.apache.http.StatusLine, org.apache.http.ReasonPhraseCatalog, java.util.Locale);
public java.util.Locale getLocale();
protected java.lang.String getReason(int);
public void setLocale(java.util.Locale);
public void setReasonPhrase(java.lang.String);
public void setStatusLine(org.apache.http.HttpVersion, int, java.lang.String);
Methods added:
public BasicHttpResponse(org.apache.http.HttpVersion, int);
Class changed: org.apache.http.message.BasicStatusLine
Methods added:
public BasicStatusLine(org.apache.http.HttpVersion, int);
Class changed: org.apache.http.params.HttpProtocolParams
Fields removed:
public final static java.lang.String WAIT_FOR_CONTINUE = http.protocol.wait-for-continue;
Class changed: org.apache.http.protocol.BasicHttpProcessor
Methods removed:
public void addRequestInterceptor(org.apache.http.HttpRequestInterceptor);
public void addResponseInterceptor(org.apache.http.HttpResponseInterceptor);
public void clearRequestInterceptors();
public void clearResponseInterceptors();
public org.apache.http.HttpRequestInterceptor getRequestInterceptor(int);
public int getRequestInterceptorCount();
public org.apache.http.HttpResponseInterceptor getResponseInterceptor(int);
public int getResponseInterceptorCount();
Methods added:
public void removeInterceptor(org.apache.http.HttpRequestInterceptor);
public void removeInterceptor(org.apache.http.HttpResponseInterceptor);
public void removeInterceptors(java.lang.Class);
Class descriptor changed:
old:
public org.apache.http.protocol.BasicHttpProcessor extends java.lang.Object implements org.apache.http.protocol.HttpProcessor, org.apache.http.protocol.HttpRequestInterceptorList, org.apache.http.protocol.HttpResponseInterceptorList
new:
public org.apache.http.protocol.BasicHttpProcessor extends java.lang.Object implements org.apache.http.protocol.HttpProcessor
Method changed:
old:
public final void addInterceptor(org.apache.http.HttpRequestInterceptor);
new:
public void addInterceptor(org.apache.http.HttpRequestInterceptor);
Method changed:
old:
public final void addInterceptor(org.apache.http.HttpResponseInterceptor);
new:
public void addInterceptor(org.apache.http.HttpResponseInterceptor);
Class changed: org.apache.http.protocol.HttpRequestExecutor
Fields added:
protected final static int WAIT_FOR_CONTINUE_MS = 10000;
Class changed: org.apache.http.protocol.HttpRequestHandlerRegistry
Methods removed:
public void setHandlers(java.util.Map);
Methods added:
public void setHandlers(java.util.Properties);
Class changed: org.apache.http.protocol.HttpService
Methods removed:
public void setExpectationVerifier(org.apache.http.protocol.HttpExpectationVerifier);
Class changed: org.apache.http.util.DateUtils
Class descriptor changed:
old:
public final org.apache.http.util.DateUtils extends java.lang.Object
new:
public org.apache.http.util.DateUtils extends java.lang.Object
Class changed: org.apache.http.util.EncodingUtils
Class descriptor changed:
old:
public final org.apache.http.util.EncodingUtils extends java.lang.Object
new:
public org.apache.http.util.EncodingUtils extends java.lang.Object
Class changed: org.apache.http.util.EntityUtils
Class descriptor changed:
old:
public final org.apache.http.util.EntityUtils extends java.lang.Object
new:
public org.apache.http.util.EntityUtils extends java.lang.Object
Class changed: org.apache.http.util.ExceptionUtils
Class descriptor changed:
old:
public final org.apache.http.util.ExceptionUtils extends java.lang.Object
new:
public org.apache.http.util.ExceptionUtils extends java.lang.Object
Class changed: org.apache.http.util.HeaderUtils
Class descriptor changed:
old:
public final org.apache.http.util.HeaderUtils extends java.lang.Object
new:
public org.apache.http.util.HeaderUtils extends java.lang.Object
Class changed: org.apache.http.util.LangUtils
Class descriptor changed:
old:
public final org.apache.http.util.LangUtils extends java.lang.Object
new:
public org.apache.http.util.LangUtils extends java.lang.Object
HttpCore NIO API changes (generated by JarDiff 0.2)
--------------------------------------
Class removed:
public org.apache.http.impl.nio.DefaultClientIOEventDispatch extends java.lang.Object implements org.apache.http.nio.reactor.IOEventDispatch
Class removed:
public org.apache.http.impl.nio.DefaultNHttpClientConnection extends org.apache.http.impl.nio.NHttpConnectionBase implements org.apache.http.nio.NHttpClientConnection
Class removed:
public org.apache.http.impl.nio.DefaultNHttpServerConnection extends org.apache.http.impl.nio.NHttpConnectionBase implements org.apache.http.nio.NHttpServerConnection
Class removed:
public org.apache.http.impl.nio.DefaultServerIOEventDispatch extends java.lang.Object implements org.apache.http.nio.reactor.IOEventDispatch
Class removed:
public org.apache.http.impl.nio.NHttpConnectionBase extends java.lang.Object implements org.apache.http.nio.NHttpConnection, org.apache.http.HttpInetConnection, org.apache.http.nio.reactor.SessionBufferStatus
Class removed:
public abstract org.apache.http.impl.nio.codecs.AbstractContentDecoder extends java.lang.Object implements org.apache.http.nio.ContentDecoder
Class removed:
public abstract org.apache.http.impl.nio.codecs.AbstractContentEncoder extends java.lang.Object implements org.apache.http.nio.ContentEncoder
Class removed:
public org.apache.http.impl.nio.codecs.ChunkDecoder extends org.apache.http.impl.nio.codecs.AbstractContentDecoder
Class removed:
public org.apache.http.impl.nio.codecs.ChunkEncoder extends org.apache.http.impl.nio.codecs.AbstractContentEncoder
Class removed:
public abstract org.apache.http.impl.nio.codecs.HttpMessageParser extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.codecs.HttpRequestParser extends org.apache.http.impl.nio.codecs.HttpMessageParser
Class removed:
public org.apache.http.impl.nio.codecs.HttpResponseParser extends org.apache.http.impl.nio.codecs.HttpMessageParser
Class removed:
public org.apache.http.impl.nio.codecs.IdentityDecoder extends org.apache.http.impl.nio.codecs.AbstractContentDecoder
Class removed:
public org.apache.http.impl.nio.codecs.IdentityEncoder extends org.apache.http.impl.nio.codecs.AbstractContentEncoder
Class removed:
public org.apache.http.impl.nio.codecs.LengthDelimitedDecoder extends org.apache.http.impl.nio.codecs.AbstractContentDecoder
Class removed:
public org.apache.http.impl.nio.codecs.LengthDelimitedEncoder extends org.apache.http.impl.nio.codecs.AbstractContentEncoder
Class removed:
public abstract org.apache.http.impl.nio.reactor.AbstractIOReactor extends java.lang.Object implements org.apache.http.nio.reactor.IOReactor
Class removed:
public abstract org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor extends java.lang.Object implements org.apache.http.nio.reactor.IOReactor
Class removed:
public org.apache.http.impl.nio.reactor.BaseIOReactor extends org.apache.http.impl.nio.reactor.AbstractIOReactor
Class removed:
public org.apache.http.impl.nio.reactor.ChannelEntry extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.ChannelQueue extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor extends org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor implements org.apache.http.nio.reactor.ConnectingIOReactor
Class removed:
public org.apache.http.impl.nio.reactor.DefaultListeningIOReactor extends org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor implements org.apache.http.nio.reactor.ListeningIOReactor
Class removed:
public abstract org.apache.http.impl.nio.reactor.SessionClosedCallback extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.SessionHandle extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.SessionInputBuffer extends org.apache.http.nio.util.ExpandableBuffer
Class removed:
public org.apache.http.impl.nio.reactor.SessionOutputBuffer extends org.apache.http.nio.util.ExpandableBuffer
Class removed:
public org.apache.http.impl.nio.reactor.SessionQueue extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.SessionRequestHandle extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.SessionRequestQueue extends java.lang.Object
Class removed:
public org.apache.http.impl.nio.reactor.SessionSet extends java.lang.Object
Class removed:
public abstract org.apache.http.nio.IOControl extends java.lang.Object
Class removed:
public final org.apache.http.nio.params.HttpNIOParams extends java.lang.Object
Class removed:
public org.apache.http.nio.protocol.BufferingHttpClientHandler extends java.lang.Object implements org.apache.http.nio.NHttpClientHandler
Class removed:
public org.apache.http.nio.protocol.BufferingHttpServiceHandler extends java.lang.Object implements org.apache.http.nio.NHttpServiceHandler
Class removed:
public abstract org.apache.http.nio.protocol.EventListener extends java.lang.Object
Class removed:
public abstract org.apache.http.nio.protocol.HttpRequestExecutionHandler extends java.lang.Object
Class removed:
public org.apache.http.nio.protocol.ThrottlingHttpServiceHandler extends java.lang.Object implements org.apache.http.nio.NHttpServiceHandler
Class removed:
public org.apache.http.nio.reactor.IOReactorException extends java.io.IOException
Class removed:
public abstract org.apache.http.nio.reactor.IOReactorExceptionHandler extends java.lang.Object
Class removed:
public org.apache.http.nio.util.SharedInputBuffer extends org.apache.http.nio.util.ExpandableBuffer implements org.apache.http.nio.util.ContentInputBuffer
Class removed:
public org.apache.http.nio.util.SharedOutputBuffer extends org.apache.http.nio.util.ExpandableBuffer implements org.apache.http.nio.util.ContentOutputBuffer
Class removed:
public org.apache.http.nio.util.SimpleInputBuffer extends org.apache.http.nio.util.ExpandableBuffer implements org.apache.http.nio.util.ContentInputBuffer
Class removed:
public org.apache.http.nio.util.SimpleOutputBuffer extends org.apache.http.nio.util.ExpandableBuffer implements org.apache.http.nio.util.ContentOutputBuffer
Class added:
public abstract org.apache.http.nio.ContentIOControl extends java.lang.Object
Class added:
public org.apache.http.nio.impl.DefaultClientIOEventDispatch extends java.lang.Object implements org.apache.http.nio.reactor.IOEventDispatch
Class added:
public org.apache.http.nio.impl.DefaultNHttpClientConnection extends org.apache.http.nio.impl.NHttpConnectionBase implements org.apache.http.nio.NHttpClientConnection
Class added:
public org.apache.http.nio.impl.DefaultNHttpServerConnection extends org.apache.http.nio.impl.NHttpConnectionBase implements org.apache.http.nio.NHttpServerConnection
Class added:
public org.apache.http.nio.impl.DefaultServerIOEventDispatch extends java.lang.Object implements org.apache.http.nio.reactor.IOEventDispatch
Class added:
public org.apache.http.nio.impl.NHttpConnectionBase extends java.lang.Object implements org.apache.http.nio.NHttpConnection, org.apache.http.HttpInetConnection, org.apache.http.nio.reactor.SessionBufferStatus
Class added:
public abstract org.apache.http.nio.impl.codecs.AbstractContentDecoder extends java.lang.Object implements org.apache.http.nio.ContentDecoder
Class added:
public abstract org.apache.http.nio.impl.codecs.AbstractContentEncoder extends java.lang.Object implements org.apache.http.nio.ContentEncoder
Class added:
public org.apache.http.nio.impl.codecs.ChunkDecoder extends org.apache.http.nio.impl.codecs.AbstractContentDecoder
Class added:
public org.apache.http.nio.impl.codecs.ChunkEncoder extends org.apache.http.nio.impl.codecs.AbstractContentEncoder
Class added:
public abstract org.apache.http.nio.impl.codecs.HttpMessageParser extends java.lang.Object
Class added:
public org.apache.http.nio.impl.codecs.HttpRequestParser extends org.apache.http.nio.impl.codecs.HttpMessageParser
Class added:
public org.apache.http.nio.impl.codecs.HttpResponseParser extends org.apache.http.nio.impl.codecs.HttpMessageParser
Class added:
public org.apache.http.nio.impl.codecs.IdentityDecoder extends org.apache.http.nio.impl.codecs.AbstractContentDecoder
Class added:
public org.apache.http.nio.impl.codecs.IdentityEncoder extends org.apache.http.nio.impl.codecs.AbstractContentEncoder
Class added:
public org.apache.http.nio.impl.codecs.LengthDelimitedDecoder extends org.apache.http.nio.impl.codecs.AbstractContentDecoder
Class added:
public org.apache.http.nio.impl.codecs.LengthDelimitedEncoder extends org.apache.http.nio.impl.codecs.AbstractContentEncoder
Class added:
public abstract org.apache.http.nio.impl.reactor.AbstractIOReactor extends java.lang.Object implements org.apache.http.nio.reactor.IOReactor
Class added:
public abstract org.apache.http.nio.impl.reactor.AbstractMultiworkerIOReactor extends java.lang.Object implements org.apache.http.nio.reactor.IOReactor
Class added:
public org.apache.http.nio.impl.reactor.BaseIOReactor extends org.apache.http.nio.impl.reactor.AbstractIOReactor
Class added:
public org.apache.http.nio.impl.reactor.ChannelEntry extends java.lang.Object
Class added:
public org.apache.http.nio.impl.reactor.ChannelQueue extends java.lang.Object
Class added:
public org.apache.http.nio.impl.reactor.DefaultConnectingIOReactor extends org.apache.http.nio.impl.reactor.AbstractMultiworkerIOReactor implements org.apache.http.nio.reactor.ConnectingIOReactor
Class added:
public org.apache.http.nio.impl.reactor.DefaultListeningIOReactor extends org.apache.http.nio.impl.reactor.AbstractMultiworkerIOReactor implements org.apache.http.nio.reactor.ListeningIOReactor
Class added:
public abstract org.apache.http.nio.impl.reactor.SessionClosedCallback extends java.lang.Object
Class added:
public org.apache.http.nio.impl.reactor.SessionHandle extends java.lang.Object
Class added:
public org.apache.http.nio.impl.reactor.SessionInputBuffer extends org.apache.http.nio.util.ExpandableBuffer
Class added:
public org.apache.http.nio.impl.reactor.SessionOutputBuffer extends org.apache.http.nio.util.ExpandableBuffer
Class added:
public org.apache.http.nio.impl.reactor.SessionQueue extends java.lang.Object
Class added:
public org.apache.http.nio.impl.reactor.SessionRequestHandle extends java.lang.Object
Class added:
public org.apache.http.nio.impl.reactor.SessionSet extends java.lang.Object
Class added:
public org.apache.http.nio.protocol.AsyncHttpService extends java.lang.Object
Class changed: org.apache.http.nio.NHttpClientConnection
Methods removed:
public abstract void cancelRequest();
Class changed: org.apache.http.nio.NHttpClientHandler
Methods removed:
public abstract void requestReady(org.apache.http.nio.NHttpClientConnection);
Class changed: org.apache.http.nio.NHttpConnection
Class descriptor changed:
old:
public abstract org.apache.http.nio.NHttpConnection extends java.lang.Object implements org.apache.http.HttpConnection, org.apache.http.nio.IOControl
new:
public abstract org.apache.http.nio.NHttpConnection extends java.lang.Object implements org.apache.http.HttpConnection, org.apache.http.nio.ContentIOControl
Class changed: org.apache.http.nio.NHttpServerConnection
Methods removed:
public abstract void cancelRequest();
Class changed: org.apache.http.nio.NHttpServiceHandler
Methods removed:
public abstract void responseReady(org.apache.http.nio.NHttpServerConnection);
Class changed: org.apache.http.nio.reactor.ConnectingIOReactor
Methods removed:
public abstract org.apache.http.nio.reactor.SessionRequest connect(java.net.SocketAddress, java.net.SocketAddress, java.lang.Object, org.apache.http.nio.reactor.SessionRequestCallback);
Methods added:
public abstract org.apache.http.nio.reactor.SessionRequest connect(java.net.SocketAddress, java.net.SocketAddress, java.lang.Object) throws java.io.IOException;
Class changed: org.apache.http.nio.reactor.IOSession
Methods removed:
public abstract boolean hasBufferedInput();
public abstract boolean hasBufferedOutput();
Methods added:
public abstract org.apache.http.nio.reactor.SessionBufferStatus getBufferStatus();
Class changed: org.apache.http.nio.reactor.ListeningIOReactor
Methods removed:
public abstract java.net.SocketAddress listen(java.net.SocketAddress) throws java.io.IOException;
Methods added:
public abstract void listen(java.net.SocketAddress) throws java.io.IOException;
Class changed: org.apache.http.nio.reactor.SessionRequest
Methods added:
public abstract void setCallback(org.apache.http.nio.reactor.SessionRequestCallback);
Class changed: org.apache.http.nio.reactor.SessionRequestCallback
Methods removed:
public abstract void cancelled(org.apache.http.nio.reactor.SessionRequest);
Class changed: org.apache.http.nio.util.ContentInputBuffer
Methods removed:
public abstract int consumeContent(org.apache.http.nio.ContentDecoder) throws java.io.IOException;
Methods added:
public ContentInputBuffer(int, org.apache.http.nio.ContentIOControl);
public void consumeContent(org.apache.http.nio.ContentDecoder) throws java.io.IOException;
protected boolean isEndOfStream();
protected boolean isShutdown();
public int read(byte[]) throws java.io.IOException;
public void shutdown();
public void shutdown(java.io.IOException);
protected void waitForData() throws java.io.IOException;
Class descriptor changed:
old:
public abstract org.apache.http.nio.util.ContentInputBuffer extends java.lang.Object
new:
public org.apache.http.nio.util.ContentInputBuffer extends org.apache.http.nio.util.ExpandableBuffer
Method changed:
old:
public abstract int read() throws java.io.IOException;
new:
public int read() throws java.io.IOException;
Method changed:
old:
public abstract int read(byte[], int, int) throws java.io.IOException;
new:
public int read(byte[], int, int) throws java.io.IOException;
Method changed:
old:
public abstract void reset();
new:
public void reset();
Class changed: org.apache.http.nio.util.ContentOutputBuffer
Methods removed:
public abstract int produceContent(org.apache.http.nio.ContentEncoder) throws java.io.IOException;
public abstract void writeCompleted() throws java.io.IOException;
Methods added:
public ContentOutputBuffer(int, org.apache.http.nio.ContentIOControl);
public void close() throws java.io.IOException;
protected void flushBuffer() throws java.io.IOException;
public void produceContent(org.apache.http.nio.ContentEncoder) throws java.io.IOException;
public void shutdown();
public void shutdown(java.io.IOException);
public void write(byte[]) throws java.io.IOException;
Class descriptor changed:
old:
public abstract org.apache.http.nio.util.ContentOutputBuffer extends java.lang.Object
new:
public org.apache.http.nio.util.ContentOutputBuffer extends org.apache.http.nio.util.ExpandableBuffer
Method changed:
old:
public abstract void flush() throws java.io.IOException;
new:
public void flush() throws java.io.IOException;
Method changed:
old:
public abstract void reset();
new:
public void reset();
Method changed:
old:
public abstract void write(int) throws java.io.IOException;
new:
public void write(int) throws java.io.IOException;
Method changed:
old:
public abstract void write(byte[], int, int) throws java.io.IOException;
new:
public void write(byte[], int, int) throws java.io.IOException;
API diff generated by JarDiff http://www.osjava.org/jardiff/
Release 4.0 Alpha 3
-------------------
The third ALPHA version of HttpCore has been released. The ALPHA3 release
includes a number of API optimizations and improvements and introduces a set
of NIO extensions to the HttpCore API. NIO extensions can be used to build
HTTP services intended to handle thousands of simultaneous connections with
a small number of I/O threads.
* [HTTPCORE-15] Provided a interafce to access IP address of the local and
remote end points.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [ HTTPCORE-14] Scheme, SocketFactory and SecureSocketFactory moved to
HttpClient. Decoupled HttpHost and Scheme.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-13] Refactored HttpProcessor interface and related impl classes
Contributed by Roland Weber <rolandw at apache.org>
* [HTTPCORE-11] Client connection interface no longer defines a specific
method to open a connection. HTTP connections can now represent any
abstract I/O transport such as those based on NIO API.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-10] Non-blocking (async) client side I/O transport based on NIO.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-9] Non-blocking (async) server side I/O transport based on NIO.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-7] ConnectionReuseStrategy interface changed to allow access
to the HTTP execution context.
Contributed by Roland Weber <rolandw at apache.org>
* [HTTPCORE-6] Header implementation allowing for performance short-cuts
when serializing and deserializing HTTP headers.
Contributed by Oleg Kalnichevski <olegk at apache.org>
* [HTTPCORE-5] Header, HeaderElement, NameValuePair, RequestLine, StatusLine,
HttpVersion changed to interfaces. API no longer contains any parsing and
formatting code and does not imply any specific physical representation of
HTTP messages and their elements.
Contributed by Oleg Kalnichevski <olegk at apache.org>
Release 4.0 Alpha 2
-------------------
This is a maintenance release that mostly fixes minor problems found since the
previous release. The upstream projects are strongly encouraged use this
release as a dependency while HttpCore undergoes another round of reviews
and optimization in the SVN trunk
Changelog:
---------
* [HTTPCORE-4] optional header and line length limits to contain OOME risks
Contributed by Oleg Kalnichevski <olegk at apache.org>
Release 4.0 Alpha 1
-------------------
This release represents a complete redesign of the Jakarta Commons HttpClient
3.x API and a significant rewrite of the core HTTP components derived from
HttpClient 3.0 code base.
These components will form the foundation of the future releases of Jakarta
HttpClient and can also be used separately to build custom client- and
server-side HTTP services.