Return-Path: Delivered-To: apmail-hc-commits-archive@www.apache.org Received: (qmail 12751 invoked from network); 15 Jan 2008 09:38:07 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 15 Jan 2008 09:38:07 -0000 Received: (qmail 37989 invoked by uid 500); 15 Jan 2008 09:37:57 -0000 Delivered-To: apmail-hc-commits-archive@hc.apache.org Received: (qmail 37968 invoked by uid 500); 15 Jan 2008 09:37:57 -0000 Mailing-List: contact commits-help@hc.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "HttpComponents Project" Delivered-To: mailing list commits@hc.apache.org Received: (qmail 37959 invoked by uid 99); 15 Jan 2008 09:37:56 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Jan 2008 01:37:56 -0800 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Jan 2008 09:37:39 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id E86D31A983A; Tue, 15 Jan 2008 01:37:28 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: svn commit: r612059 - /httpcomponents/httpcore/trunk/RELEASE_NOTES.txt Date: Tue, 15 Jan 2008 09:37:28 -0000 To: commits@hc.apache.org From: olegk@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080115093728.E86D31A983A@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: olegk Date: Tue Jan 15 01:37:28 2008 New Revision: 612059 URL: http://svn.apache.org/viewvc?rev=612059&view=rev Log: Updated release notes for HttpCore 4.0-beta1 release Modified: httpcomponents/httpcore/trunk/RELEASE_NOTES.txt Modified: httpcomponents/httpcore/trunk/RELEASE_NOTES.txt URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/trunk/RELEASE_NOTES.txt?rev=612059&r1=612058&r2=612059&view=diff ============================================================================== --- httpcomponents/httpcore/trunk/RELEASE_NOTES.txt (original) +++ httpcomponents/httpcore/trunk/RELEASE_NOTES.txt Tue Jan 15 01:37:28 2008 @@ -1,4 +1,21 @@ -Changes since 4.0 Alpha 6 +Release 4.0 Beta 1 +------------------- + +The first BETA version of HttpComponents Core has been released. This release +can be considered a major milestone, as it marks the end of API instability +in HttpCore. As of this release the API compatibility between minor releases +in 4.x codeline will be maintained. + +This release includes several major improvements such as enhanced HTTP message +parsing API and optimized parser implementations, Java 5.0 compatibility +for HttpCore NIO extensions. Upstream projects are strongly encouraged to +upgrade to the latest release. + +The focus of the development efforts will be gradually shifting towards +providing better test coverage, documentation and performance optimizations. + +Changelog: +---------- * [HTTPCORE-137] DefaultHttpRequestFactory extended to support all methods specified in RFC 2616 (except CONNECT). @@ -54,927 +71,586 @@ connection has been closed by the peer. Contributed by Risto Reinpõld -Release 4.0 Alpha 6 -------------------- - -The sixth ALPHA version of HttpComponents Core has been released. This release -sports an improved message parsing and formatting API in the base module and -lots of incremental improvements and bug fixes in the NIO and NIOSSL modules. -Based on the improved API, it is now possible to send and receive SIP messages -with HttpComponents Core. - -HttpCore is now feature complete and we are planning to freeze the public APIs -as of next release (BETA1). - -* [HTTPCORE-120] new interface HeaderIterator, available from HttpMessage - Contributed by Roland Weber - -* [HTTPCORE-118] Purge closed sessions prior to opening new ones. This should - reduce chances of running out of memory when opening and closing lots of - NIO connections in a tight loop. - Contributed by Oleg Kalnichevski - -* [HTTPCORE-117] Fixed bug preventing protocol handlers from closing timed out - NIO connection when pending output (output session buffer is not empty). - Contributed by Oleg Kalnichevski - -* [HTTPCORE-86] Allow for optional handling of runtime exceptions - thrown by protocol handlers to ensure the I/O dispatch thread - remains running. - Contributed by Oleg Kalnichevski - -* [HTTPCORE-116] moved parameter names to interfaces - Contributed by Roland Weber - -* [HTTPCORE-109] Improved shutdown process of the I/O reactors in NIO modules. - I/O reactors now attempt to terminate connections gracefully before shutting - down the underlying socket channels. - Contributed by Oleg Kalnichevski - -* [HTTPCORE-107] allow sending and receiving of SIP messages - Contributed by Roland Weber - -* [HTTPCORE-114]: Fixed incorrect handling of the end-of-stream condition - in SSLIOSession. - Oleg Kalnichevski - -* [HTTPCORE-110] refactored message parsing and formatting logic - Contributed by Roland Weber - -* [HTTPCORE-113] Removed unnecessary target hostname resolution from - non-blocking client protocol handlers. - Oleg Kalnichevski - -* [HTTPCORE-108] Close all channels registered with the I/O reactor during - shutdown. Fixed the problem with DefaultListeningIOReactor not releasing - socket ports until JVM is restarted. - Oleg Kalnichevski - -* [HTTPCORE-106] Pluggable HTTP message parsers and message writers - Oleg Kalnichevski - -* [HTTPCORE-105] Consistent class names in base and NIO modules - Oleg Kalnichevski - -* [HTTPCORE-100] revised HttpContext hierarchy - Contributed by Roland Weber - -* [HTTPCORE-103] NIO connections now attempt to consume all available session - data while parsing HTTP messages. This can potentially improve performance - of non-blocking SSL connections. - Contributed by Steffen Pingel - -* [HTTPCORE-102] Exceeding of maximum line length limit detected late - Contributed by Steffen Pingel - -* [HTTPCORE-21] Transport and connection metrics - Contributed by Andrea Selva and - Oleg Kalnichevski - -* [HTTPCORE-91] new interceptor RequestDate, renamed constants in protocol.HTTP - Contributed by Roland Weber - -* [HTTPCORE-90] Version detection based on build-time properties - Contributed by Oleg Kalnichevski and - Roland Weber - -* [HTTPCORE-88] Added convenience methods to HttpRequestInterceptorList, - HttpResponseInterceptorList interfaces - Contributed by Andrea Selva - -* [HTTPCORE-89]: Fixed bug in DefaultConnectingIOReactor causing incorrect - handling of local (immediate) connections on some platforms (affects Sun - Solaris 2.9 / Sparc and likely other Solaris 2.x platforms) - Contributed by Sam Berlin - HttpCore API changes (generated by JarDiff 0.2) -------------------------------------- Class removed: - public abstract org.apache.http.impl.io.AbstractHttpDataReceiver extends java.lang.Object implements org.apache.http.io.HttpDataReceiver -Class removed: - public abstract org.apache.http.impl.io.AbstractHttpDataTransmitter extends java.lang.Object implements org.apache.http.io.HttpDataTransmitter -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.SocketHttpDataReceiver extends org.apache.http.impl.io.AbstractHttpDataReceiver -Class removed: - public org.apache.http.impl.io.SocketHttpDataTransmitter extends org.apache.http.impl.io.AbstractHttpDataTransmitter -Class removed: - public abstract org.apache.http.io.HttpDataReceiver extends java.lang.Object + public abstract org.apache.http.params.HttpLinkedParams extends java.lang.Object implements org.apache.http.params.HttpParams Class removed: - public abstract org.apache.http.io.HttpDataTransmitter extends java.lang.Object + public org.apache.http.params.HttpParamsLinker extends java.lang.Object Class removed: - public org.apache.http.message.BasicHttpVersionFormat extends java.lang.Object + public org.apache.http.util.HeaderGroup extends java.lang.Object Class removed: - public org.apache.http.protocol.HttpExecutionContext extends java.lang.Object implements org.apache.http.protocol.HttpContext + public org.apache.http.util.ListHeaderIterator extends java.lang.Object implements org.apache.http.HeaderIterator Class removed: - public org.apache.http.protocol.SyncHttpExecutionContext extends org.apache.http.protocol.HttpExecutionContext + public abstract org.apache.http.util.concurrent.Executor extends java.lang.Object Class removed: - public final org.apache.http.util.HeaderUtils extends java.lang.Object -Class added: - public abstract org.apache.http.FormattedHeader extends java.lang.Object implements org.apache.http.Header -Class added: - public abstract org.apache.http.HeaderIterator extends java.lang.Object implements java.util.Iterator -Class added: - public org.apache.http.ParseException extends java.lang.RuntimeException -Class added: - public org.apache.http.ProtocolVersion extends java.lang.Object implements java.io.Serializable -Class added: - public abstract org.apache.http.impl.io.AbstractMessageParser extends java.lang.Object implements org.apache.http.io.HttpMessageParser -Class added: - public abstract org.apache.http.impl.io.AbstractMessageWriter extends java.lang.Object implements org.apache.http.io.HttpMessageWriter -Class added: - public abstract org.apache.http.impl.io.AbstractSessionInputBuffer extends java.lang.Object implements org.apache.http.io.SessionInputBuffer -Class added: - public abstract org.apache.http.impl.io.AbstractSessionOutputBuffer extends java.lang.Object implements org.apache.http.io.SessionOutputBuffer -Class added: - public org.apache.http.impl.io.HttpRequestParser extends org.apache.http.impl.io.AbstractMessageParser -Class added: - public org.apache.http.impl.io.HttpRequestWriter extends org.apache.http.impl.io.AbstractMessageWriter -Class added: - public org.apache.http.impl.io.HttpResponseParser extends org.apache.http.impl.io.AbstractMessageParser -Class added: - public org.apache.http.impl.io.HttpResponseWriter extends org.apache.http.impl.io.AbstractMessageWriter -Class added: - public org.apache.http.impl.io.IdentityInputStream extends java.io.InputStream + public abstract org.apache.http.util.concurrent.ThreadFactory extends java.lang.Object Class added: - public org.apache.http.impl.io.SocketInputBuffer extends org.apache.http.impl.io.AbstractSessionInputBuffer + public abstract org.apache.http.HeaderElementIterator extends java.lang.Object implements java.util.Iterator Class added: - public org.apache.http.impl.io.SocketOutputBuffer extends org.apache.http.impl.io.AbstractSessionOutputBuffer + public abstract org.apache.http.TokenIterator extends java.lang.Object implements java.util.Iterator Class added: - public abstract org.apache.http.io.HttpMessageParser extends java.lang.Object + public org.apache.http.message.BasicHeaderElementIterator extends java.lang.Object implements org.apache.http.HeaderElementIterator Class added: - public abstract org.apache.http.io.HttpMessageWriter extends java.lang.Object + public org.apache.http.message.BasicListHeaderIterator extends java.lang.Object implements org.apache.http.HeaderIterator Class added: - public abstract org.apache.http.io.SessionInputBuffer extends java.lang.Object + public org.apache.http.message.BasicTokenIterator extends java.lang.Object implements org.apache.http.TokenIterator Class added: - public abstract org.apache.http.io.SessionOutputBuffer extends java.lang.Object + public org.apache.http.message.HeaderGroup extends java.lang.Object implements java.lang.Cloneable Class added: - public org.apache.http.message.BasicHeaderIterator extends java.lang.Object implements org.apache.http.HeaderIterator + public org.apache.http.message.ParserCursor extends java.lang.Object Class added: - public org.apache.http.message.BasicHeaderValueFormatter extends java.lang.Object implements org.apache.http.message.HeaderValueFormatter + public final org.apache.http.params.DefaultedHttpParams extends org.apache.http.params.AbstractHttpParams Class added: - public org.apache.http.message.BasicHeaderValueParser extends java.lang.Object implements org.apache.http.message.HeaderValueParser + public abstract org.apache.http.params.HttpAbstractParamBean extends java.lang.Object Class added: - public org.apache.http.message.BasicLineFormatter extends java.lang.Object implements org.apache.http.message.LineFormatter + public org.apache.http.params.HttpConnectionParamBean extends org.apache.http.params.HttpAbstractParamBean Class added: - public org.apache.http.message.BasicLineParser extends java.lang.Object implements org.apache.http.message.LineParser -Class added: - public abstract org.apache.http.message.HeaderValueFormatter extends java.lang.Object -Class added: - public abstract org.apache.http.message.HeaderValueParser extends java.lang.Object -Class added: - public abstract org.apache.http.message.LineFormatter extends java.lang.Object -Class added: - public abstract org.apache.http.message.LineParser extends java.lang.Object -Class added: - public abstract org.apache.http.params.CoreConnectionPNames extends java.lang.Object -Class added: - public abstract org.apache.http.params.CoreProtocolPNames extends java.lang.Object -Class added: - public org.apache.http.protocol.BasicHttpContext extends java.lang.Object implements org.apache.http.protocol.HttpContext -Class added: - public abstract org.apache.http.protocol.ExecutionContext extends java.lang.Object -Class added: - public org.apache.http.protocol.RequestDate extends java.lang.Object implements org.apache.http.HttpRequestInterceptor -Class added: - public org.apache.http.protocol.SyncBasicHttpContext extends org.apache.http.protocol.BasicHttpContext -Class added: - public org.apache.http.util.ListHeaderIterator extends java.lang.Object implements org.apache.http.HeaderIterator -Class added: - public org.apache.http.util.VersionInfo extends java.lang.Object -Class changed: org.apache.http.Header - Method changed: - old: - public abstract org.apache.http.HeaderElement[] getElements(); - - new: - public abstract org.apache.http.HeaderElement[] getElements() throws org.apache.http.ParseException; - -Class changed: org.apache.http.HeaderElement - Methods added: - public abstract org.apache.http.NameValuePair getParameter(int); - public abstract int getParameterCount(); - + public org.apache.http.params.HttpProtocolParamBean extends org.apache.http.params.HttpAbstractParamBean Class changed: org.apache.http.HttpHost - Fields added: - protected final java.lang.String hostname; - protected final java.lang.String lcHostname; - protected final int port; - protected final java.lang.String schemeName; - -Class changed: org.apache.http.HttpMessage - Methods removed: - public abstract org.apache.http.HttpVersion getHttpVersion(); - public abstract java.util.Iterator headerIterator(); - Methods added: - public abstract org.apache.http.ProtocolVersion getProtocolVersion(); - public abstract org.apache.http.HeaderIterator headerIterator(); - public abstract org.apache.http.HeaderIterator headerIterator(java.lang.String); - -Class changed: org.apache.http.HttpResponse - Methods removed: - public abstract void setStatusLine(org.apache.http.HttpVersion, int); - public abstract void setStatusLine(org.apache.http.HttpVersion, int, java.lang.String); - - Methods added: - public abstract void setStatusLine(org.apache.http.ProtocolVersion, int); - public abstract void setStatusLine(org.apache.http.ProtocolVersion, int, java.lang.String); - -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 java.lang.Object clone() throws java.lang.CloneNotSupportedException; + Class descriptor changed: + old: + public org.apache.http.HttpHost extends java.lang.Object + new: + public final org.apache.http.HttpHost extends java.lang.Object implements java.lang.Cloneable +Class changed: org.apache.http.ProtocolVersion Methods added: - public abstract org.apache.http.HttpResponse newHttpResponse(org.apache.http.ProtocolVersion, int, org.apache.http.protocol.HttpContext); - -Class changed: org.apache.http.HttpVersion - Methods removed: - public int compareTo(java.lang.Object); - public int compareTo(org.apache.http.HttpVersion); - public boolean equals(java.lang.Object); - public boolean equals(org.apache.http.HttpVersion); - public int getMajor(); - public int getMinor(); - public boolean greaterEquals(org.apache.http.HttpVersion); - public int hashCode(); - public boolean lessEquals(org.apache.http.HttpVersion); - public java.lang.String toString(); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; + Class descriptor changed: + old: + public org.apache.http.ProtocolVersion extends java.lang.Object implements java.io.Serializable + new: + public org.apache.http.ProtocolVersion extends java.lang.Object implements java.io.Serializable, java.lang.Cloneable +Class changed: org.apache.http.entity.ByteArrayEntity Methods added: - public org.apache.http.ProtocolVersion forVersion(int, int); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; Fields added: - public final static java.lang.String HTTP = HTTP; + protected final byte[] content; Class descriptor changed: old: - public final org.apache.http.HttpVersion extends java.lang.Object implements java.lang.Comparable, java.io.Serializable + public org.apache.http.entity.ByteArrayEntity extends org.apache.http.entity.AbstractHttpEntity new: - public final org.apache.http.HttpVersion extends org.apache.http.ProtocolVersion implements java.io.Serializable -Class changed: org.apache.http.RequestLine - Methods removed: - public abstract org.apache.http.HttpVersion getHttpVersion(); - + public org.apache.http.entity.ByteArrayEntity extends org.apache.http.entity.AbstractHttpEntity implements java.lang.Cloneable +Class changed: org.apache.http.entity.FileEntity Methods added: - public abstract org.apache.http.ProtocolVersion getProtocolVersion(); - -Class changed: org.apache.http.StatusLine - Methods removed: - public abstract org.apache.http.HttpVersion getHttpVersion(); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; - Methods added: - public abstract org.apache.http.ProtocolVersion getProtocolVersion(); - -Class changed: org.apache.http.impl.AbstractHttpClientConnection - Methods removed: - protected void init(org.apache.http.io.HttpDataReceiver, org.apache.http.io.HttpDataTransmitter, org.apache.http.params.HttpParams); - protected void readResponseHeaders(org.apache.http.HttpResponse) throws org.apache.http.HttpException, java.io.IOException; - protected org.apache.http.HttpResponse readResponseStatusLine() throws org.apache.http.HttpException, java.io.IOException; - protected void sendRequestHeaders(org.apache.http.HttpRequest) throws org.apache.http.HttpException, java.io.IOException; - protected void sendRequestLine(org.apache.http.HttpRequest) throws org.apache.http.HttpException, java.io.IOException; - protected static boolean startsWithHTTP(org.apache.http.util.CharArrayBuffer); - - Methods added: - protected org.apache.http.io.HttpMessageWriter createRequestWriter(org.apache.http.io.SessionOutputBuffer, org.apache.http.params.HttpParams); - protected org.apache.http.io.HttpMessageParser createResponseParser(org.apache.http.io.SessionInputBuffer, org.apache.http.HttpResponseFactory, org.apache.http.params.HttpParams); - protected void init(org.apache.http.io.SessionInputBuffer, org.apache.http.io.SessionOutputBuffer, org.apache.http.params.HttpParams); - -Class changed: org.apache.http.impl.AbstractHttpServerConnection - Methods removed: - protected void init(org.apache.http.io.HttpDataReceiver, org.apache.http.io.HttpDataTransmitter, org.apache.http.params.HttpParams); - protected void receiveRequestHeaders(org.apache.http.HttpRequest) throws org.apache.http.HttpException, java.io.IOException; - protected org.apache.http.HttpRequest receiveRequestLine() throws org.apache.http.HttpException, java.io.IOException; - protected void sendResponseHeaders(org.apache.http.HttpResponse) throws org.apache.http.HttpException, java.io.IOException; - protected void sendResponseStatusLine(org.apache.http.HttpResponse) throws org.apache.http.HttpException, java.io.IOException; - - Methods added: - protected org.apache.http.io.HttpMessageParser createRequestParser(org.apache.http.io.SessionInputBuffer, org.apache.http.HttpRequestFactory, org.apache.http.params.HttpParams); - protected org.apache.http.io.HttpMessageWriter createResponseWriter(org.apache.http.io.SessionOutputBuffer, org.apache.http.params.HttpParams); - protected void init(org.apache.http.io.SessionInputBuffer, org.apache.http.io.SessionOutputBuffer, org.apache.http.params.HttpParams); - -Class changed: org.apache.http.impl.DefaultHttpResponseFactory - Methods removed: - public org.apache.http.HttpResponse newHttpResponse(org.apache.http.HttpVersion, int, org.apache.http.protocol.HttpContext); - - Methods added: - public org.apache.http.HttpResponse newHttpResponse(org.apache.http.ProtocolVersion, int, org.apache.http.protocol.HttpContext); - -Class changed: org.apache.http.impl.SocketHttpClientConnection - Methods removed: - protected org.apache.http.io.HttpDataReceiver createHttpDataReceiver(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - protected org.apache.http.io.HttpDataTransmitter createHttpDataTransmitter(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - - Methods added: - protected org.apache.http.io.SessionInputBuffer createSessionInputBuffer(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - protected org.apache.http.io.SessionOutputBuffer createSessionOutputBuffer(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - -Class changed: org.apache.http.impl.SocketHttpServerConnection - Methods removed: - protected org.apache.http.io.HttpDataReceiver createHttpDataReceiver(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - protected org.apache.http.io.HttpDataTransmitter createHttpDataTransmitter(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - - Methods added: - protected org.apache.http.io.SessionInputBuffer createHttpDataReceiver(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - protected org.apache.http.io.SessionOutputBuffer createHttpDataTransmitter(java.net.Socket, int, org.apache.http.params.HttpParams) throws java.io.IOException; - -Class changed: org.apache.http.impl.entity.EntityDeserializer - Methods removed: - public org.apache.http.HttpEntity deserialize(org.apache.http.io.HttpDataReceiver, org.apache.http.HttpMessage) throws org.apache.http.HttpException, java.io.IOException; - protected org.apache.http.entity.BasicHttpEntity doDeserialize(org.apache.http.io.HttpDataReceiver, org.apache.http.HttpMessage) throws org.apache.http.HttpException, java.io.IOException; - - Methods added: - public org.apache.http.HttpEntity deserialize(org.apache.http.io.SessionInputBuffer, org.apache.http.HttpMessage) throws org.apache.http.HttpException, java.io.IOException; - protected org.apache.http.entity.BasicHttpEntity doDeserialize(org.apache.http.io.SessionInputBuffer, org.apache.http.HttpMessage) throws org.apache.http.HttpException, java.io.IOException; - -Class changed: org.apache.http.impl.entity.EntitySerializer - Methods removed: - protected java.io.OutputStream doSerialize(org.apache.http.io.HttpDataTransmitter, org.apache.http.HttpMessage) throws org.apache.http.HttpException, java.io.IOException; - public void serialize(org.apache.http.io.HttpDataTransmitter, org.apache.http.HttpMessage, org.apache.http.HttpEntity) throws org.apache.http.HttpException, java.io.IOException; - - Methods added: - protected java.io.OutputStream doSerialize(org.apache.http.io.SessionOutputBuffer, org.apache.http.HttpMessage) throws org.apache.http.HttpException, java.io.IOException; - public void serialize(org.apache.http.io.SessionOutputBuffer, org.apache.http.HttpMessage, org.apache.http.HttpEntity) throws org.apache.http.HttpException, java.io.IOException; - -Class changed: org.apache.http.impl.io.ChunkedInputStream - Methods removed: - public ChunkedInputStream(org.apache.http.io.HttpDataReceiver); - - Methods added: - public ChunkedInputStream(org.apache.http.io.SessionInputBuffer); - -Class changed: org.apache.http.impl.io.ChunkedOutputStream - Methods removed: - public ChunkedOutputStream(org.apache.http.io.HttpDataTransmitter) throws java.io.IOException; - public ChunkedOutputStream(org.apache.http.io.HttpDataTransmitter, int) throws java.io.IOException; - - Methods added: - public ChunkedOutputStream(org.apache.http.io.SessionOutputBuffer) throws java.io.IOException; - public ChunkedOutputStream(org.apache.http.io.SessionOutputBuffer, int) throws java.io.IOException; - -Class changed: org.apache.http.impl.io.ContentLengthInputStream - Methods removed: - public ContentLengthInputStream(org.apache.http.io.HttpDataReceiver, long); - - Methods added: - public ContentLengthInputStream(org.apache.http.io.SessionInputBuffer, long); - -Class changed: org.apache.http.impl.io.ContentLengthOutputStream - Methods removed: - public ContentLengthOutputStream(org.apache.http.io.HttpDataTransmitter, long); + Fields added: + protected final java.io.File file; + Class descriptor changed: + old: + public org.apache.http.entity.FileEntity extends org.apache.http.entity.AbstractHttpEntity + new: + public org.apache.http.entity.FileEntity extends org.apache.http.entity.AbstractHttpEntity implements java.lang.Cloneable +Class changed: org.apache.http.entity.StringEntity Methods added: - public ContentLengthOutputStream(org.apache.http.io.SessionOutputBuffer, long); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; -Class changed: org.apache.http.impl.io.IdentityOutputStream - Methods removed: - public IdentityOutputStream(org.apache.http.io.HttpDataTransmitter); + Fields added: + protected final byte[] content; + Class descriptor changed: + old: + public org.apache.http.entity.StringEntity extends org.apache.http.entity.AbstractHttpEntity + new: + public org.apache.http.entity.StringEntity extends org.apache.http.entity.AbstractHttpEntity implements java.lang.Cloneable +Class changed: org.apache.http.impl.DefaultConnectionReuseStrategy Methods added: - public IdentityOutputStream(org.apache.http.io.SessionOutputBuffer); + protected org.apache.http.TokenIterator createTokenIterator(org.apache.http.HeaderIterator); Class changed: org.apache.http.message.AbstractHttpMessage - Methods removed: - public java.util.Iterator headerIterator(); - Methods added: - public org.apache.http.HeaderIterator headerIterator(); - public org.apache.http.HeaderIterator headerIterator(java.lang.String); + protected AbstractHttpMessage(org.apache.http.params.HttpParams); Class changed: org.apache.http.message.BasicHeader - Methods removed: - public static java.lang.String format(org.apache.http.Header); - public static void format(org.apache.http.util.CharArrayBuffer, org.apache.http.Header); + Methods added: + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; - Method changed: + Class descriptor changed: old: - public org.apache.http.HeaderElement[] getElements(); - + public org.apache.http.message.BasicHeader extends java.lang.Object implements org.apache.http.Header new: - public org.apache.http.HeaderElement[] getElements() throws org.apache.http.ParseException; - + public org.apache.http.message.BasicHeader extends java.lang.Object implements org.apache.http.Header, java.lang.Cloneable Class changed: org.apache.http.message.BasicHeaderElement Methods removed: - public static java.lang.String format(org.apache.http.HeaderElement); - public static void format(org.apache.http.util.CharArrayBuffer, org.apache.http.HeaderElement); - public static void formatAll(org.apache.http.util.CharArrayBuffer, org.apache.http.HeaderElement[]); - public static java.lang.String formatAll(org.apache.http.HeaderElement[]); - public final static org.apache.http.HeaderElement parse(java.lang.String); - public static org.apache.http.HeaderElement parse(org.apache.http.util.CharArrayBuffer, int, int); - public final static org.apache.http.HeaderElement[] parseAll(java.lang.String); - public final static org.apache.http.HeaderElement[] parseAll(org.apache.http.util.CharArrayBuffer, int, int); - - Methods added: public BasicHeaderElement(org.apache.http.NameValuePair[]); - public org.apache.http.NameValuePair getParameter(int); - public int getParameterCount(); - -Class changed: org.apache.http.message.BasicHttpRequest - Methods removed: - public BasicHttpRequest(java.lang.String, java.lang.String, org.apache.http.HttpVersion); - public org.apache.http.HttpVersion getHttpVersion(); Methods added: - public BasicHttpRequest(java.lang.String, java.lang.String, org.apache.http.ProtocolVersion); - public org.apache.http.ProtocolVersion getProtocolVersion(); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; -Class changed: org.apache.http.message.BasicHttpResponse + Class descriptor changed: + old: + public org.apache.http.message.BasicHeaderElement extends java.lang.Object implements org.apache.http.HeaderElement + new: + public org.apache.http.message.BasicHeaderElement extends java.lang.Object implements org.apache.http.HeaderElement, java.lang.Cloneable +Class changed: org.apache.http.message.BasicHeaderValueParser Methods removed: - public BasicHttpResponse(org.apache.http.HttpVersion, int, java.lang.String); - public org.apache.http.HttpVersion getHttpVersion(); - public void setStatusLine(org.apache.http.HttpVersion, int); - public void setStatusLine(org.apache.http.HttpVersion, int, java.lang.String); + protected org.apache.http.HeaderElement createHeaderElement(org.apache.http.NameValuePair[]); + public org.apache.http.HeaderElement[] parseElements(org.apache.http.util.CharArrayBuffer, int, int); + public org.apache.http.HeaderElement parseHeaderElement(org.apache.http.util.CharArrayBuffer, int, int); + public org.apache.http.NameValuePair parseNameValuePair(org.apache.http.util.CharArrayBuffer, int, int); + public org.apache.http.NameValuePair[] parseParameters(org.apache.http.util.CharArrayBuffer, int, int); Methods added: - public BasicHttpResponse(org.apache.http.ProtocolVersion, int, java.lang.String); - public org.apache.http.ProtocolVersion getProtocolVersion(); - public void setStatusLine(org.apache.http.ProtocolVersion, int); - public void setStatusLine(org.apache.http.ProtocolVersion, int, java.lang.String); - -Class changed: org.apache.http.message.BasicNameValuePair - Methods removed: - public static java.lang.String format(org.apache.http.NameValuePair, boolean); - public static void format(org.apache.http.util.CharArrayBuffer, org.apache.http.NameValuePair, boolean); - public static void formatAll(org.apache.http.util.CharArrayBuffer, org.apache.http.NameValuePair[], boolean); - public static java.lang.String formatAll(org.apache.http.NameValuePair[], boolean); - public final static org.apache.http.NameValuePair parse(java.lang.String); - public static org.apache.http.NameValuePair parse(org.apache.http.util.CharArrayBuffer, int, int); - public final static org.apache.http.NameValuePair[] parseAll(java.lang.String); - public final static org.apache.http.NameValuePair[] parseAll(org.apache.http.util.CharArrayBuffer, int, int); + protected org.apache.http.HeaderElement createHeaderElement(java.lang.String, java.lang.String, org.apache.http.NameValuePair[]); + public org.apache.http.HeaderElement[] parseElements(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); + public org.apache.http.HeaderElement parseHeaderElement(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); + public org.apache.http.NameValuePair parseNameValuePair(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); + public org.apache.http.NameValuePair parseNameValuePair(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor, char[]); + public org.apache.http.NameValuePair[] parseParameters(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); -Class changed: org.apache.http.message.BasicRequestLine +Class changed: org.apache.http.message.BasicHttpEntityEnclosingRequest Methods removed: - public BasicRequestLine(java.lang.String, java.lang.String, org.apache.http.HttpVersion); - public static java.lang.String format(org.apache.http.RequestLine); - public static void format(org.apache.http.util.CharArrayBuffer, org.apache.http.RequestLine); - public org.apache.http.HttpVersion getHttpVersion(); - public final static org.apache.http.RequestLine parse(java.lang.String) throws org.apache.http.ProtocolException; - public static org.apache.http.RequestLine parse(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ProtocolException; + public BasicHttpEntityEnclosingRequest(java.lang.String, java.lang.String, org.apache.http.HttpVersion); Methods added: - public BasicRequestLine(java.lang.String, java.lang.String, org.apache.http.ProtocolVersion); - public org.apache.http.ProtocolVersion getProtocolVersion(); + public BasicHttpEntityEnclosingRequest(java.lang.String, java.lang.String, org.apache.http.ProtocolVersion); -Class changed: org.apache.http.message.BasicStatusLine +Class changed: org.apache.http.message.BasicLineParser Methods removed: - public BasicStatusLine(org.apache.http.HttpVersion, int, java.lang.String); - public static java.lang.String format(org.apache.http.StatusLine); - public static void format(org.apache.http.util.CharArrayBuffer, org.apache.http.StatusLine); - public org.apache.http.HttpVersion getHttpVersion(); - public final static org.apache.http.StatusLine parse(java.lang.String) throws org.apache.http.ProtocolException; - public static org.apache.http.StatusLine parse(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ProtocolException; + protected org.apache.http.message.HeaderValueParser getHeaderValueParser(); + public boolean hasProtocolVersion(org.apache.http.util.CharArrayBuffer, int); + public org.apache.http.ProtocolVersion parseProtocolVersion(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public org.apache.http.RequestLine parseRequestLine(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public org.apache.http.StatusLine parseStatusLine(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + protected int skipWhitespace(org.apache.http.util.CharArrayBuffer, int); Methods added: - public BasicStatusLine(org.apache.http.ProtocolVersion, int, java.lang.String); - public org.apache.http.ProtocolVersion getProtocolVersion(); + public boolean hasProtocolVersion(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); + public org.apache.http.ProtocolVersion parseProtocolVersion(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public org.apache.http.RequestLine parseRequestLine(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public org.apache.http.StatusLine parseStatusLine(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + protected void skipWhitespace(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); -Class changed: org.apache.http.message.BufferedHeader +Class changed: org.apache.http.message.BasicNameValuePair Methods added: - public BufferedHeader(org.apache.http.util.CharArrayBuffer, org.apache.http.message.HeaderValueParser) throws org.apache.http.ParseException; - public org.apache.http.message.HeaderValueParser getParser(); - public void setParser(org.apache.http.message.HeaderValueParser); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; Class descriptor changed: old: - public org.apache.http.message.BufferedHeader extends java.lang.Object implements org.apache.http.Header - new: - public org.apache.http.message.BufferedHeader extends java.lang.Object implements org.apache.http.FormattedHeader - Method changed: - old: - public BufferedHeader(org.apache.http.util.CharArrayBuffer); - + public org.apache.http.message.BasicNameValuePair extends java.lang.Object implements org.apache.http.NameValuePair new: - public BufferedHeader(org.apache.http.util.CharArrayBuffer) throws org.apache.http.ParseException; + public org.apache.http.message.BasicNameValuePair extends java.lang.Object implements org.apache.http.NameValuePair, java.lang.Cloneable +Class changed: org.apache.http.message.BasicRequestLine + Methods added: + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; - Method changed: + Class descriptor changed: old: - public org.apache.http.HeaderElement[] getElements(); - + public org.apache.http.message.BasicRequestLine extends java.lang.Object implements org.apache.http.RequestLine new: - public org.apache.http.HeaderElement[] getElements() throws org.apache.http.ParseException; - -Class changed: org.apache.http.params.HttpConnectionParams - Fields removed: - public final static java.lang.String CONNECTION_TIMEOUT = http.connection.timeout; - public final static java.lang.String MAX_HEADER_COUNT = http.connection.max-header-count; - public final static java.lang.String MAX_LINE_LENGTH = http.connection.max-line-length; - public final static java.lang.String MAX_STATUS_LINE_GARBAGE = http.connection.max-status-line-garbage; - public final static java.lang.String SOCKET_BUFFER_SIZE = http.socket.buffer-size; - public final static java.lang.String SO_LINGER = http.socket.linger; - public final static java.lang.String SO_TIMEOUT = http.socket.timeout; - public final static java.lang.String STALE_CONNECTION_CHECK = http.connection.stalecheck; - public final static java.lang.String TCP_NODELAY = http.tcp.nodelay; + public org.apache.http.message.BasicRequestLine extends java.lang.Object implements org.apache.http.RequestLine, java.lang.Cloneable +Class changed: org.apache.http.message.BasicStatusLine + Methods added: + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; Class descriptor changed: old: - public final org.apache.http.params.HttpConnectionParams extends java.lang.Object + public org.apache.http.message.BasicStatusLine extends java.lang.Object implements org.apache.http.StatusLine new: - public final org.apache.http.params.HttpConnectionParams extends java.lang.Object implements org.apache.http.params.CoreConnectionPNames -Class changed: org.apache.http.params.HttpProtocolParams + public org.apache.http.message.BasicStatusLine extends java.lang.Object implements org.apache.http.StatusLine, java.lang.Cloneable +Class changed: org.apache.http.message.BufferedHeader Methods removed: - public static org.apache.http.HttpVersion getVersion(org.apache.http.params.HttpParams); - public static void setVersion(org.apache.http.params.HttpParams, org.apache.http.HttpVersion); + public BufferedHeader(org.apache.http.util.CharArrayBuffer, org.apache.http.message.HeaderValueParser) throws org.apache.http.ParseException; + public org.apache.http.message.HeaderValueParser getParser(); + public void setParser(org.apache.http.message.HeaderValueParser); Methods added: - public static org.apache.http.ProtocolVersion getVersion(org.apache.http.params.HttpParams); - public static void setVersion(org.apache.http.params.HttpParams, org.apache.http.ProtocolVersion); - - Fields removed: - public final static java.lang.String HTTP_CONTENT_CHARSET = http.protocol.content-charset; - public final static java.lang.String HTTP_ELEMENT_CHARSET = http.protocol.element-charset; - public final static java.lang.String ORIGIN_SERVER = http.origin-server; - public final static java.lang.String PROTOCOL_VERSION = http.protocol.version; - public final static java.lang.String STRICT_TRANSFER_ENCODING = http.protocol.strict-transfer-encoding; - public final static java.lang.String USER_AGENT = http.useragent; - public final static java.lang.String USE_EXPECT_CONTINUE = http.protocol.expect-continue; - public final static java.lang.String WAIT_FOR_CONTINUE = http.protocol.wait-for-continue; + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; Class descriptor changed: old: - public final org.apache.http.params.HttpProtocolParams extends java.lang.Object + public org.apache.http.message.BufferedHeader extends java.lang.Object implements org.apache.http.FormattedHeader new: - public final org.apache.http.params.HttpProtocolParams extends java.lang.Object implements org.apache.http.params.CoreProtocolPNames -Class changed: org.apache.http.protocol.BasicHttpProcessor - Methods added: - public final void addInterceptor(org.apache.http.HttpRequestInterceptor, int); - public final void addInterceptor(org.apache.http.HttpResponseInterceptor, int); - public void addRequestInterceptor(org.apache.http.HttpRequestInterceptor, int); - public void addResponseInterceptor(org.apache.http.HttpResponseInterceptor, int); - public void removeRequestInterceptorByClass(java.lang.Class); - public void removeResponseInterceptorByClass(java.lang.Class); + public org.apache.http.message.BufferedHeader extends java.lang.Object implements org.apache.http.FormattedHeader, java.lang.Cloneable +Class changed: org.apache.http.message.HeaderValueParser + Methods removed: + public abstract org.apache.http.HeaderElement[] parseElements(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public abstract org.apache.http.HeaderElement parseHeaderElement(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public abstract org.apache.http.NameValuePair parseNameValuePair(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public abstract org.apache.http.NameValuePair[] parseParameters(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; - Fields added: - protected java.util.List requestInterceptors; - protected java.util.List responseInterceptors; + Methods added: + public abstract org.apache.http.HeaderElement[] parseElements(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public abstract org.apache.http.HeaderElement parseHeaderElement(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public abstract org.apache.http.NameValuePair parseNameValuePair(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public abstract org.apache.http.NameValuePair[] parseParameters(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; -Class changed: org.apache.http.protocol.HTTP - Fields removed: - public final static java.lang.String DATE_DIRECTIVE = Date; - public final static java.lang.String SERVER_DIRECTIVE = Server; +Class changed: org.apache.http.message.LineParser + Methods removed: + public abstract boolean hasProtocolVersion(org.apache.http.util.CharArrayBuffer, int); + public abstract org.apache.http.ProtocolVersion parseProtocolVersion(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public abstract org.apache.http.RequestLine parseRequestLine(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; + public abstract org.apache.http.StatusLine parseStatusLine(org.apache.http.util.CharArrayBuffer, int, int) throws org.apache.http.ParseException; - Fields added: - public final static java.lang.String DATE_HEADER = Date; - public final static java.lang.String SERVER_HEADER = Server; + Methods added: + public abstract boolean hasProtocolVersion(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor); + public abstract org.apache.http.ProtocolVersion parseProtocolVersion(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public abstract org.apache.http.RequestLine parseRequestLine(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; + public abstract org.apache.http.StatusLine parseStatusLine(org.apache.http.util.CharArrayBuffer, org.apache.http.message.ParserCursor) throws org.apache.http.ParseException; -Class changed: org.apache.http.protocol.HttpContext - Fields removed: - public final static java.lang.String HTTP_CONNECTION = http.connection; - public final static java.lang.String HTTP_REQUEST = http.request; - public final static java.lang.String HTTP_RESPONSE = http.response; +Class changed: org.apache.http.params.BasicHttpParams + Methods removed: + public BasicHttpParams(org.apache.http.params.HttpParams); + public org.apache.http.params.HttpParams getDefaults(); + public void setDefaults(org.apache.http.params.HttpParams); -Class changed: org.apache.http.protocol.HttpRequestInterceptorList Methods added: - public abstract void addRequestInterceptor(org.apache.http.HttpRequestInterceptor, int); - public abstract void removeRequestInterceptorByClass(java.lang.Class); + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; + public boolean removeParameter(java.lang.String); -Class changed: org.apache.http.protocol.HttpResponseInterceptorList - Methods added: - public abstract void addResponseInterceptor(org.apache.http.HttpResponseInterceptor, int); - public abstract void removeResponseInterceptorByClass(java.lang.Class); + Fields removed: + protected org.apache.http.params.HttpParams defaults; -Class changed: org.apache.http.util.EntityUtils - Method changed: + Class descriptor changed: old: - public static java.lang.String getContentCharSet(org.apache.http.HttpEntity); - + public org.apache.http.params.BasicHttpParams extends org.apache.http.params.AbstractHttpParams implements org.apache.http.params.HttpLinkedParams, java.io.Serializable new: - public static java.lang.String getContentCharSet(org.apache.http.HttpEntity) throws org.apache.http.ParseException; + public final org.apache.http.params.BasicHttpParams extends org.apache.http.params.AbstractHttpParams implements java.io.Serializable, java.lang.Cloneable +Class changed: org.apache.http.params.HttpParams + Methods removed: + public abstract boolean isParameterSet(java.lang.String); - Method changed: - old: - public static java.lang.String toString(org.apache.http.HttpEntity) throws java.io.IOException; + Methods added: + public abstract boolean removeParameter(java.lang.String); - new: - public static java.lang.String toString(org.apache.http.HttpEntity) throws java.io.IOException, org.apache.http.ParseException; +Class changed: org.apache.http.protocol.BasicHttpProcessor + Methods added: + public java.lang.Object clone() throws java.lang.CloneNotSupportedException; + protected void copyInterceptors(org.apache.http.protocol.BasicHttpProcessor); - Method changed: + Class descriptor changed: old: - public static java.lang.String toString(org.apache.http.HttpEntity, java.lang.String) throws java.io.IOException; - + 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 static java.lang.String toString(org.apache.http.HttpEntity, java.lang.String) throws java.io.IOException, org.apache.http.ParseException; - -Class changed: org.apache.http.util.HeaderGroup - Methods removed: - public java.util.Iterator iterator(); + public final 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, java.lang.Cloneable +API diff generated by JarDiff http://www.osjava.org/jardiff/ - Methods added: - public org.apache.http.HeaderIterator iterator(); - public org.apache.http.HeaderIterator iterator(java.lang.String); -API diff generated by JarDiff http://www.osjava.org/jardiff/ - HttpCore NIO API changes (generated by JarDiff 0.2) -------------------------------------- Class removed: - public abstract org.apache.http.impl.nio.codecs.HttpMessageParser extends java.lang.Object + public org.apache.http.impl.nio.reactor.ChannelQueue extends java.lang.Object Class removed: - public org.apache.http.impl.nio.reactor.SessionInputBuffer extends org.apache.http.nio.util.ExpandableBuffer + public org.apache.http.impl.nio.reactor.SessionQueue extends java.lang.Object Class removed: - public org.apache.http.impl.nio.reactor.SessionOutputBuffer extends org.apache.http.nio.util.ExpandableBuffer + public org.apache.http.impl.nio.reactor.SessionRequestQueue extends java.lang.Object Class removed: - public final org.apache.http.nio.params.HttpNIOParams extends java.lang.Object + public org.apache.http.impl.nio.reactor.SessionSet extends java.lang.Object Class added: - public abstract org.apache.http.impl.nio.codecs.AbstractMessageParser extends java.lang.Object implements org.apache.http.nio.NHttpMessageParser + public org.apache.http.impl.nio.SSLClientIOEventDispatch extends java.lang.Object implements org.apache.http.nio.reactor.IOEventDispatch Class added: - public abstract org.apache.http.impl.nio.codecs.AbstractMessageWriter extends java.lang.Object implements org.apache.http.nio.NHttpMessageWriter + public org.apache.http.impl.nio.SSLServerIOEventDispatch extends java.lang.Object implements org.apache.http.nio.reactor.IOEventDispatch Class added: - public org.apache.http.impl.nio.codecs.HttpRequestWriter extends org.apache.http.impl.nio.codecs.AbstractMessageWriter + public org.apache.http.impl.nio.reactor.ListenerEndpointImpl extends java.lang.Object implements org.apache.http.nio.reactor.ListenerEndpoint Class added: - public org.apache.http.impl.nio.codecs.HttpResponseWriter extends org.apache.http.impl.nio.codecs.AbstractMessageWriter + public org.apache.http.impl.nio.reactor.SSLIOSession extends java.lang.Object implements org.apache.http.nio.reactor.IOSession, org.apache.http.nio.reactor.SessionBufferStatus Class added: - public org.apache.http.impl.nio.reactor.SessionInputBufferImpl extends org.apache.http.nio.util.ExpandableBuffer implements org.apache.http.nio.reactor.SessionInputBuffer + public abstract org.apache.http.impl.nio.reactor.SSLIOSessionHandler extends java.lang.Object Class added: - public org.apache.http.impl.nio.reactor.SessionOutputBufferImpl extends org.apache.http.nio.util.ExpandableBuffer implements org.apache.http.nio.reactor.SessionOutputBuffer + public final org.apache.http.impl.nio.reactor.SSLMode extends java.lang.Enum Class added: - public abstract org.apache.http.nio.NHttpMessageParser extends java.lang.Object + public abstract org.apache.http.nio.NHttpClientIOTarget extends java.lang.Object implements org.apache.http.nio.NHttpClientConnection Class added: - public abstract org.apache.http.nio.NHttpMessageWriter extends java.lang.Object + public abstract org.apache.http.nio.NHttpServerIOTarget extends java.lang.Object implements org.apache.http.nio.NHttpServerConnection Class added: - public abstract org.apache.http.nio.params.NIOReactorPNames extends java.lang.Object + public org.apache.http.nio.entity.ByteArrayNIOEntity extends org.apache.http.entity.ByteArrayEntity implements org.apache.http.nio.entity.HttpNIOEntity Class added: - public final org.apache.http.nio.params.NIOReactorParams extends java.lang.Object implements org.apache.http.nio.params.NIOReactorPNames + public org.apache.http.nio.entity.FileNIOEntity extends org.apache.http.entity.FileEntity implements org.apache.http.nio.entity.HttpNIOEntity Class added: - public abstract org.apache.http.nio.reactor.SessionInputBuffer extends java.lang.Object + public abstract org.apache.http.nio.entity.HttpNIOEntity extends java.lang.Object implements org.apache.http.HttpEntity Class added: - public abstract org.apache.http.nio.reactor.SessionOutputBuffer extends java.lang.Object -Class changed: org.apache.http.impl.nio.DefaultNHttpClientConnection - Methods added: - protected org.apache.http.nio.NHttpMessageWriter createRequestWriter(org.apache.http.nio.reactor.SessionOutputBuffer, org.apache.http.params.HttpParams); - protected org.apache.http.nio.NHttpMessageParser createResponseParser(org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.HttpResponseFactory, org.apache.http.params.HttpParams); - -Class changed: org.apache.http.impl.nio.DefaultNHttpServerConnection - Methods added: - protected org.apache.http.nio.NHttpMessageParser createRequestParser(org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.HttpRequestFactory, org.apache.http.params.HttpParams); - protected org.apache.http.nio.NHttpMessageWriter createResponseWriter(org.apache.http.nio.reactor.SessionOutputBuffer, org.apache.http.params.HttpParams); + public org.apache.http.nio.entity.StringNIOEntity extends org.apache.http.entity.StringEntity implements org.apache.http.nio.entity.HttpNIOEntity +Class added: + public org.apache.http.nio.params.NIOReactorParamBean extends org.apache.http.params.HttpAbstractParamBean +Class added: + public final org.apache.http.nio.reactor.IOReactorStatus extends java.lang.Enum +Class added: + public abstract org.apache.http.nio.reactor.ListenerEndpoint extends java.lang.Object +Class changed: org.apache.http.impl.nio.DefaultClientIOEventDispatch + Methods removed: + public DefaultClientIOEventDispatch(org.apache.http.nio.NHttpClientHandler, org.apache.http.nio.util.ByteBufferAllocator, org.apache.http.params.HttpParams); -Class changed: org.apache.http.impl.nio.NHttpConnectionBase Methods added: - public int getStatus(); - - Fields removed: - protected volatile boolean closed; - protected final org.apache.http.util.CharArrayBuffer lineBuffer; - protected final org.apache.http.impl.HttpConnectionMetricsImpl metrics; + protected org.apache.http.nio.util.ByteBufferAllocator createByteBufferAllocator(); + protected org.apache.http.nio.NHttpClientIOTarget createConnection(org.apache.http.nio.reactor.IOSession); + protected org.apache.http.HttpResponseFactory createHttpResponseFactory(); Fields added: - protected final org.apache.http.impl.HttpConnectionMetricsImpl connMetrics; - protected final org.apache.http.impl.io.HttpTransportMetricsImpl inTransportMetrics; - protected final org.apache.http.impl.io.HttpTransportMetricsImpl outTransportMetrics; - protected volatile int status; + protected final org.apache.http.nio.util.ByteBufferAllocator allocator; + protected final org.apache.http.nio.NHttpClientHandler handler; + protected final org.apache.http.params.HttpParams params; -Class changed: org.apache.http.impl.nio.codecs.AbstractContentDecoder +Class changed: org.apache.http.impl.nio.DefaultNHttpClientConnection + Class descriptor changed: + old: + public org.apache.http.impl.nio.DefaultNHttpClientConnection extends org.apache.http.impl.nio.NHttpConnectionBase implements org.apache.http.nio.NHttpClientConnection + new: + public org.apache.http.impl.nio.DefaultNHttpClientConnection extends org.apache.http.impl.nio.NHttpConnectionBase implements org.apache.http.nio.NHttpClientIOTarget +Class changed: org.apache.http.impl.nio.DefaultNHttpServerConnection + Class descriptor changed: + old: + public org.apache.http.impl.nio.DefaultNHttpServerConnection extends org.apache.http.impl.nio.NHttpConnectionBase implements org.apache.http.nio.NHttpServerConnection + new: + public org.apache.http.impl.nio.DefaultNHttpServerConnection extends org.apache.http.impl.nio.NHttpConnectionBase implements org.apache.http.nio.NHttpServerIOTarget +Class changed: org.apache.http.impl.nio.DefaultServerIOEventDispatch Methods removed: - public AbstractContentDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.impl.nio.reactor.SessionInputBuffer); + public DefaultServerIOEventDispatch(org.apache.http.nio.NHttpServiceHandler, org.apache.http.nio.util.ByteBufferAllocator, org.apache.http.params.HttpParams); Methods added: - public AbstractContentDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl); + protected org.apache.http.nio.util.ByteBufferAllocator createByteBufferAllocator(); + protected org.apache.http.nio.NHttpServerIOTarget createConnection(org.apache.http.nio.reactor.IOSession); + protected org.apache.http.HttpRequestFactory createHttpRequestFactory(); Fields added: - protected final org.apache.http.impl.io.HttpTransportMetricsImpl metrics; + protected final org.apache.http.nio.util.ByteBufferAllocator allocator; + protected final org.apache.http.nio.NHttpServiceHandler handler; + protected final org.apache.http.params.HttpParams params; -Class changed: org.apache.http.impl.nio.codecs.AbstractContentEncoder +Class changed: org.apache.http.impl.nio.codecs.IdentityDecoder Methods removed: - public AbstractContentEncoder(); + public long read(java.nio.channels.FileChannel, long, long) throws java.io.IOException; Methods added: - public AbstractContentEncoder(java.nio.channels.WritableByteChannel, org.apache.http.nio.reactor.SessionOutputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl); + public long transfer(java.nio.channels.FileChannel, long, long) throws java.io.IOException; - Fields added: - protected final org.apache.http.nio.reactor.SessionOutputBuffer buffer; - protected final java.nio.channels.WritableByteChannel channel; - protected final org.apache.http.impl.io.HttpTransportMetricsImpl metrics; - -Class changed: org.apache.http.impl.nio.codecs.ChunkDecoder +Class changed: org.apache.http.impl.nio.codecs.IdentityEncoder Methods removed: - public ChunkDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.impl.nio.reactor.SessionInputBuffer); + public long write(java.nio.channels.FileChannel, long, long) throws java.io.IOException; Methods added: - public ChunkDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl); + public long transfer(java.nio.channels.FileChannel, long, long) throws java.io.IOException; -Class changed: org.apache.http.impl.nio.codecs.ChunkEncoder +Class changed: org.apache.http.impl.nio.codecs.LengthDelimitedDecoder Methods removed: - public ChunkEncoder(org.apache.http.impl.nio.reactor.SessionOutputBuffer); + public long read(java.nio.channels.FileChannel, long, long) throws java.io.IOException; Methods added: - public ChunkEncoder(java.nio.channels.WritableByteChannel, org.apache.http.nio.reactor.SessionOutputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl); + public long transfer(java.nio.channels.FileChannel, long, long) throws java.io.IOException; -Class changed: org.apache.http.impl.nio.codecs.HttpRequestParser +Class changed: org.apache.http.impl.nio.codecs.LengthDelimitedEncoder Methods removed: - public HttpRequestParser(org.apache.http.impl.nio.reactor.SessionInputBuffer, org.apache.http.HttpRequestFactory, org.apache.http.params.HttpParams); + public long write(java.nio.channels.FileChannel, long, long) throws java.io.IOException; Methods added: - public HttpRequestParser(org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.message.LineParser, org.apache.http.HttpRequestFactory, org.apache.http.params.HttpParams); + public long transfer(java.nio.channels.FileChannel, long, long) throws java.io.IOException; - Class descriptor changed: - old: - public org.apache.http.impl.nio.codecs.HttpRequestParser extends org.apache.http.impl.nio.codecs.HttpMessageParser - new: - public org.apache.http.impl.nio.codecs.HttpRequestParser extends org.apache.http.impl.nio.codecs.AbstractMessageParser - Method changed: - old: - protected org.apache.http.HttpMessage createMessage(org.apache.http.util.CharArrayBuffer) throws org.apache.http.HttpException; +Class changed: org.apache.http.impl.nio.reactor.AbstractIOReactor + Methods removed: + public int getStatus(); - new: - protected org.apache.http.HttpMessage createMessage(org.apache.http.util.CharArrayBuffer) throws org.apache.http.HttpException, org.apache.http.ParseException; + Methods added: + public org.apache.http.nio.reactor.IOReactorStatus getStatus(); -Class changed: org.apache.http.impl.nio.codecs.HttpResponseParser +Class changed: org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor Methods removed: - public HttpResponseParser(org.apache.http.impl.nio.reactor.SessionInputBuffer, org.apache.http.HttpResponseFactory, org.apache.http.params.HttpParams); + public AbstractMultiworkerIOReactor(int, org.apache.http.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; + public int getStatus(); Methods added: - public HttpResponseParser(org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.message.LineParser, org.apache.http.HttpResponseFactory, org.apache.http.params.HttpParams); + public AbstractMultiworkerIOReactor(int, java.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; + public org.apache.http.nio.reactor.IOReactorStatus getStatus(); - Class descriptor changed: - old: - public org.apache.http.impl.nio.codecs.HttpResponseParser extends org.apache.http.impl.nio.codecs.HttpMessageParser - new: - public org.apache.http.impl.nio.codecs.HttpResponseParser extends org.apache.http.impl.nio.codecs.AbstractMessageParser - Method changed: - old: - protected org.apache.http.HttpMessage createMessage(org.apache.http.util.CharArrayBuffer) throws org.apache.http.HttpException; +Class changed: org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor + Methods removed: + public DefaultConnectingIOReactor(int, org.apache.http.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; - new: - protected org.apache.http.HttpMessage createMessage(org.apache.http.util.CharArrayBuffer) throws org.apache.http.HttpException, org.apache.http.ParseException; + Methods added: + public DefaultConnectingIOReactor(int, java.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; -Class changed: org.apache.http.impl.nio.codecs.IdentityDecoder +Class changed: org.apache.http.impl.nio.reactor.DefaultListeningIOReactor Methods removed: - public IdentityDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.impl.nio.reactor.SessionInputBuffer); + public DefaultListeningIOReactor(int, org.apache.http.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; + public java.net.SocketAddress listen(java.net.SocketAddress) throws java.io.IOException; Methods added: - public IdentityDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl); + public DefaultListeningIOReactor(int, java.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; + public org.apache.http.nio.reactor.ListenerEndpoint[] getEndpoints(); + public org.apache.http.nio.reactor.ListenerEndpoint listen(java.net.SocketAddress); + public void pause() throws java.io.IOException; + public void resume() throws java.io.IOException; -Class changed: org.apache.http.impl.nio.codecs.IdentityEncoder - Methods removed: - public IdentityEncoder(java.nio.channels.WritableByteChannel); +Class changed: org.apache.http.impl.nio.reactor.SessionInputBufferImpl + Methods added: + public int read(java.nio.channels.WritableByteChannel) throws java.io.IOException; + public int read(java.nio.channels.WritableByteChannel, int) throws java.io.IOException; +Class changed: org.apache.http.impl.nio.reactor.SessionOutputBufferImpl Methods added: - public IdentityEncoder(java.nio.channels.WritableByteChannel, org.apache.http.nio.reactor.SessionOutputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl); + public void write(java.nio.channels.ReadableByteChannel) throws java.io.IOException; -Class changed: org.apache.http.impl.nio.codecs.LengthDelimitedDecoder +Class changed: org.apache.http.nio.FileContentDecoder Methods removed: - public LengthDelimitedDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.impl.nio.reactor.SessionInputBuffer, long); + public abstract long read(java.nio.channels.FileChannel, long, long) throws java.io.IOException; Methods added: - public LengthDelimitedDecoder(java.nio.channels.ReadableByteChannel, org.apache.http.nio.reactor.SessionInputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl, long); + public abstract long transfer(java.nio.channels.FileChannel, long, long) throws java.io.IOException; -Class changed: org.apache.http.impl.nio.codecs.LengthDelimitedEncoder +Class changed: org.apache.http.nio.FileContentEncoder Methods removed: - public LengthDelimitedEncoder(java.nio.channels.WritableByteChannel, long); + public abstract long write(java.nio.channels.FileChannel, long, long) throws java.io.IOException; Methods added: - public LengthDelimitedEncoder(java.nio.channels.WritableByteChannel, org.apache.http.nio.reactor.SessionOutputBuffer, org.apache.http.impl.io.HttpTransportMetricsImpl, long); + public abstract long transfer(java.nio.channels.FileChannel, long, long) throws java.io.IOException; + +Class changed: org.apache.http.nio.protocol.ThrottlingHttpClientHandler + Methods removed: + public ThrottlingHttpClientHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.nio.protocol.HttpRequestExecutionHandler, org.apache.http.ConnectionReuseStrategy, org.apache.http.nio.util.ByteBufferAllocator, org.apache.http.util.concurrent.Executor, org.apache.http.params.HttpParams); + public ThrottlingHttpClientHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.nio.protocol.HttpRequestExecutionHandler, org.apache.http.ConnectionReuseStrategy, org.apache.http.util.concurrent.Executor, org.apache.http.params.HttpParams); -Class changed: org.apache.http.impl.nio.reactor.AbstractIOReactor Methods added: - public void awaitShutdown(long) throws java.lang.InterruptedException; - protected void closeChannels() throws org.apache.http.nio.reactor.IOReactorException; - protected void closeSessions(); - public int getStatus(); - public void gracefulShutdown(); - public void hardShutdown() throws org.apache.http.nio.reactor.IOReactorException; - protected void processEvent(java.nio.channels.SelectionKey); - public void shutdown(long) throws org.apache.http.nio.reactor.IOReactorException; + public ThrottlingHttpClientHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.nio.protocol.HttpRequestExecutionHandler, org.apache.http.ConnectionReuseStrategy, java.util.concurrent.Executor, org.apache.http.params.HttpParams); + public ThrottlingHttpClientHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.nio.protocol.HttpRequestExecutionHandler, org.apache.http.ConnectionReuseStrategy, org.apache.http.nio.util.ByteBufferAllocator, java.util.concurrent.Executor, org.apache.http.params.HttpParams); -Class changed: org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor +Class changed: org.apache.http.nio.protocol.ThrottlingHttpServiceHandler Methods removed: - public AbstractMultiworkerIOReactor(long, int, org.apache.http.util.concurrent.ThreadFactory) throws org.apache.http.nio.reactor.IOReactorException; - protected long getSelectTimeout(); - protected void startWorkers(org.apache.http.nio.reactor.IOEventDispatch); - protected void stopWorkers(int) throws java.io.InterruptedIOException, org.apache.http.nio.reactor.IOReactorException; - protected void verifyWorkers() throws java.io.InterruptedIOException, org.apache.http.nio.reactor.IOReactorException; + public ThrottlingHttpServiceHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.HttpResponseFactory, org.apache.http.ConnectionReuseStrategy, org.apache.http.nio.util.ByteBufferAllocator, org.apache.http.util.concurrent.Executor, org.apache.http.params.HttpParams); + public ThrottlingHttpServiceHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.HttpResponseFactory, org.apache.http.ConnectionReuseStrategy, org.apache.http.util.concurrent.Executor, org.apache.http.params.HttpParams); Methods added: - public AbstractMultiworkerIOReactor(int, org.apache.http.util.concurrent.ThreadFactory, org.apache.http.params.HttpParams) throws org.apache.http.nio.reactor.IOReactorException; - public void execute(org.apache.http.nio.reactor.IOEventDispatch) throws java.io.InterruptedIOException, org.apache.http.nio.reactor.IOReactorException; - public int getStatus(); - protected void prepareSocket(java.net.Socket) throws java.io.IOException; - protected abstract void processEvents(int) throws org.apache.http.nio.reactor.IOReactorException; - protected java.nio.channels.SelectionKey registerChannel(java.nio.channels.SelectableChannel, int) throws java.nio.channels.ClosedChannelException; - public void setExceptionHandler(org.apache.http.nio.reactor.IOReactorExceptionHandler); - public void shutdown() throws java.io.IOException; - public void shutdown(long) throws java.io.IOException; + public ThrottlingHttpServiceHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.HttpResponseFactory, org.apache.http.ConnectionReuseStrategy, java.util.concurrent.Executor, org.apache.http.params.HttpParams); + public ThrottlingHttpServiceHandler(org.apache.http.protocol.HttpProcessor, org.apache.http.HttpResponseFactory, org.apache.http.ConnectionReuseStrategy, org.apache.http.nio.util.ByteBufferAllocator, java.util.concurrent.Executor, org.apache.http.params.HttpParams); - Fields added: - protected org.apache.http.nio.reactor.IOReactorExceptionHandler exceptionHandler; - protected final org.apache.http.params.HttpParams params; - protected final long selectTimeout; - protected final java.nio.channels.Selector selector; - protected volatile int status; +Class changed: org.apache.http.nio.reactor.IOReactor + Methods removed: + public abstract int getStatus(); -Class changed: org.apache.http.impl.nio.reactor.BaseIOReactor Methods added: - protected void processEvent(java.nio.channels.SelectionKey); - public void setExceptionHandler(org.apache.http.nio.reactor.IOReactorExceptionHandler); + public abstract org.apache.http.nio.reactor.IOReactorStatus getStatus(); -Class changed: org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor + Fields removed: + public final static int ACTIVE = 1; + public final static int INACTIVE = 0; + public final static int SHUTTING_DOWN = 2; + public final static int SHUT_DOWN = 3; + +Class changed: org.apache.http.nio.reactor.ListeningIOReactor Methods removed: - public void execute(org.apache.http.nio.reactor.IOEventDispatch) throws java.io.InterruptedIOException, org.apache.http.nio.reactor.IOReactorException; - protected void prepareSocket(java.net.Socket) throws java.io.IOException; - public void shutdown() throws java.io.IOException; + public abstract java.net.SocketAddress listen(java.net.SocketAddress) throws java.io.IOException; Methods added: - protected void processEvents(int) throws org.apache.http.nio.reactor.IOReactorException; + public abstract org.apache.http.nio.reactor.ListenerEndpoint[] getEndpoints(); + public abstract org.apache.http.nio.reactor.ListenerEndpoint listen(java.net.SocketAddress); + public abstract void pause() throws java.io.IOException; + public abstract void resume() throws java.io.IOException; -Class changed: org.apache.http.impl.nio.reactor.DefaultListeningIOReactor - Methods removed: - public void execute(org.apache.http.nio.reactor.IOEventDispatch) throws java.io.InterruptedIOException, org.apache.http.nio.reactor.IOReactorException; - protected void prepareSocket(java.net.Socket) throws java.io.IOException; - public void setExceptionHandler(org.apache.http.nio.reactor.IOReactorExceptionHandler); - public void shutdown() throws java.io.IOException; +Class changed: org.apache.http.nio.reactor.SessionInputBuffer + Methods added: + public abstract int read(java.nio.channels.WritableByteChannel) throws java.io.IOException; + public abstract int read(java.nio.channels.WritableByteChannel, int) throws java.io.IOException; +Class changed: org.apache.http.nio.reactor.SessionOutputBuffer Methods added: - protected void processEvents(int) throws org.apache.http.nio.reactor.IOReactorException; + public abstract void write(java.nio.channels.ReadableByteChannel) throws java.io.IOException; -Class changed: org.apache.http.impl.nio.reactor.IOSessionImpl +Class changed: org.apache.http.nio.util.ExpandableBuffer Methods added: - public int getStatus(); + public java.lang.String toString(); -Class changed: org.apache.http.impl.nio.reactor.SessionSet - Method changed: - old: - public void add(org.apache.http.nio.reactor.IOSession); +API diff generated by JarDiff http://www.osjava.org/jardiff/ - new: - public synchronized void add(org.apache.http.nio.reactor.IOSession); - Method changed: - old: - public void clear(); +Release 4.0 Alpha 6 +------------------- - new: - public synchronized void clear(); +The sixth ALPHA version of HttpComponents Core has been released. This release +sports an improved message parsing and formatting API in the base module and +lots of incremental improvements and bug fixes in the NIO and NIOSSL modules. +Based on the improved API, it is now possible to send and receive SIP messages +with HttpComponents Core. - Method changed: - old: - public boolean isEmpty(); +HttpCore is now feature complete and we are planning to freeze the public APIs +as of next release (BETA1). - new: - public synchronized boolean isEmpty(); +* [HTTPCORE-120] new interface HeaderIterator, available from HttpMessage + Contributed by Roland Weber - Method changed: - old: - public boolean remove(org.apache.http.nio.reactor.IOSession); +* [HTTPCORE-118] Purge closed sessions prior to opening new ones. This should + reduce chances of running out of memory when opening and closing lots of + NIO connections in a tight loop. + Contributed by Oleg Kalnichevski - new: - public synchronized boolean remove(org.apache.http.nio.reactor.IOSession); +* [HTTPCORE-117] Fixed bug preventing protocol handlers from closing timed out + NIO connection when pending output (output session buffer is not empty). + Contributed by Oleg Kalnichevski -Class changed: org.apache.http.nio.NHttpConnection - Methods added: - public abstract int getStatus(); +* [HTTPCORE-86] Allow for optional handling of runtime exceptions + thrown by protocol handlers to ensure the I/O dispatch thread + remains running. + Contributed by Oleg Kalnichevski - Fields added: - public final static int ACTIVE = 0; - public final static int CLOSED = 2; - public final static int CLOSING = 1; +* [HTTPCORE-116] moved parameter names to interfaces + Contributed by Roland Weber -Class changed: org.apache.http.nio.protocol.HttpRequestExecutionHandler - Methods added: - public abstract void finalizeContext(org.apache.http.protocol.HttpContext); +* [HTTPCORE-109] Improved shutdown process of the I/O reactors in NIO modules. + I/O reactors now attempt to terminate connections gracefully before shutting + down the underlying socket channels. + Contributed by Oleg Kalnichevski -Class changed: org.apache.http.nio.protocol.NHttpHandlerBase - Methods added: - protected void handleTimeout(org.apache.http.nio.NHttpConnection); +* [HTTPCORE-107] allow sending and receiving of SIP messages + Contributed by Roland Weber -Class changed: org.apache.http.nio.reactor.IOReactor - Methods added: - public abstract int getStatus(); - public abstract void shutdown(long) throws java.io.IOException; +* [HTTPCORE-114]: Fixed incorrect handling of the end-of-stream condition + in SSLIOSession. + Oleg Kalnichevski - Fields added: - public final static int ACTIVE = 1; - public final static int INACTIVE = 0; - public final static int SHUTTING_DOWN = 2; - public final static int SHUT_DOWN = 3; +* [HTTPCORE-110] refactored message parsing and formatting logic + Contributed by Roland Weber -Class changed: org.apache.http.nio.reactor.IOReactorExceptionHandler - Methods added: - public abstract boolean handle(java.lang.RuntimeException); +* [HTTPCORE-113] Removed unnecessary target hostname resolution from + non-blocking client protocol handlers. + Oleg Kalnichevski -Class changed: org.apache.http.nio.reactor.IOSession - Methods added: - public abstract int getStatus(); +* [HTTPCORE-108] Close all channels registered with the I/O reactor during + shutdown. Fixed the problem with DefaultListeningIOReactor not releasing + socket ports until JVM is restarted. + Oleg Kalnichevski - Fields added: - public final static int ACTIVE = 0; - public final static int CLOSED = 2147483647; - public final static int CLOSING = 1; +* [HTTPCORE-106] Pluggable HTTP message parsers and message writers + Oleg Kalnichevski -API diff generated by JarDiff http://www.osjava.org/jardiff/ - -HttpCore NIOSSL API changes (generated by JarDiff 0.2) --------------------------------------- +* [HTTPCORE-105] Consistent class names in base and NIO modules + Oleg Kalnichevski -Class changed: org.apache.http.impl.nio.reactor.SSLIOSession - Methods added: - public int getStatus(); +* [HTTPCORE-100] revised HttpContext hierarchy + Contributed by Roland Weber -API diff generated by JarDiff http://www.osjava.org/jardiff/ +* [HTTPCORE-103] NIO connections now attempt to consume all available session + data while parsing HTTP messages. This can potentially improve performance + of non-blocking SSL connections. + Contributed by Steffen Pingel + +* [HTTPCORE-102] Exceeding of maximum line length limit detected late + Contributed by Steffen Pingel + +* [HTTPCORE-21] Transport and connection metrics + Contributed by Andrea Selva and + Oleg Kalnichevski + +* [HTTPCORE-91] new interceptor RequestDate, renamed constants in protocol.HTTP + Contributed by Roland Weber + +* [HTTPCORE-90] Version detection based on build-time properties + Contributed by Oleg Kalnichevski and + Roland Weber + +* [HTTPCORE-88] Added convenience methods to HttpRequestInterceptorList, + HttpResponseInterceptorList interfaces + Contributed by Andrea Selva + +* [HTTPCORE-89]: Fixed bug in DefaultConnectingIOReactor causing incorrect + handling of local (immediate) connections on some platforms (affects Sun + Solaris 2.9 / Sparc and likely other Solaris 2.x platforms) + Contributed by Sam Berlin Release 4.0 Alpha 5 -------------------