netty5/codec-http/src/main/java/io/netty/handler/codec/http
Scott Mitchell b714297a44 HttpObjectDecoder half close behavior
Motivation:
In the event an HTTP message does not include either a content-length or a transfer-encoding header [RFC 7230](https://tools.ietf.org/html/rfc7230#section-3.3.3) states the behavior must be treated differently for requests and responses. If the channel is half closed then the HttpObjectDecoder is not invoking decodeLast and thus not checking if messages should be sent up the pipeline.

Modifications:
- Add comments to clarify regular decode default case.
- Handle the ChannelInputShutdownEvent in the HttpObjectDecoder and evaluate if messages need to be generated.

Result:
Messages are generated on half closed, and comments clarify existing logic.
2015-08-05 09:04:59 -07:00
..
cookie Minor ClientCookieDecoder improvements 2015-05-12 11:25:28 +02:00
cors When null origin is supported then credentials header must not be set. 2015-02-18 16:06:30 +01:00
multipart Get uploaded size while upload is in progress 2015-06-12 14:16:07 +02:00
websocketx Send full response for unsupported websocket versions 2015-07-17 10:56:59 +02:00
ClientCookieEncoder.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
ComposedLastHttpContent.java Introduce MessageAggregator and DecoderResultProvider 2014-06-05 16:51:14 +09:00
Cookie.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
CookieDecoder.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
CookieUtil.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
DefaultCookie.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
DefaultFullHttpRequest.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
DefaultFullHttpResponse.java Suggestion for supporting single header fields. 2015-02-18 10:54:15 +01:00
DefaultHttpContent.java Introduce MessageAggregator and DecoderResultProvider 2014-06-05 16:51:14 +09:00
DefaultHttpHeaders.java Faster and more memory efficient headers for HTTP, HTTP/2, STOMP and SPYD. Fixes #3600 2015-08-04 17:12:24 -07:00
DefaultHttpMessage.java Suggestion for supporting single header fields. 2015-02-18 10:54:15 +01:00
DefaultHttpObject.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
DefaultHttpRequest.java Suggestion for supporting single header fields. 2015-02-18 10:54:15 +01:00
DefaultHttpResponse.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
DefaultLastHttpContent.java Faster and more memory efficient headers for HTTP, HTTP/2, STOMP and SPYD. Fixes #3600 2015-08-04 17:12:24 -07:00
FullHttpMessage.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
FullHttpRequest.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
FullHttpResponse.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
HttpChunkedInput.java Allow ChunkedInput to provide the progress of its transfer 2014-08-14 16:49:09 -07:00
HttpClientCodec.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
HttpClientUpgradeHandler.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
HttpConstants.java Update license headers 2012-06-04 13:31:44 -07:00
HttpContent.java Enable a user specify an arbitrary information with ReferenceCounted.touch() 2014-02-13 18:16:25 -08:00
HttpContentCompressor.java Fix backward compatibility from the previous backport 2014-11-01 01:00:25 +09:00
HttpContentDecoder.java Fixed several issues with HttpContentDecoder 2015-01-23 11:14:20 +01:00
HttpContentDecompressor.java [#2005] Allow to use HttpContentDecompressor in strict mode 2013-11-26 08:22:01 +01:00
HttpContentEncoder.java Support empty http responses when using compression 2015-05-26 09:55:34 +02:00
HttpHeaderDateFormat.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
HttpHeaderNames.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
HttpHeaders.java Faster and more memory efficient headers for HTTP, HTTP/2, STOMP and SPYD. Fixes #3600 2015-08-04 17:12:24 -07:00
HttpHeadersEncoder.java Faster and more memory efficient headers for HTTP, HTTP/2, STOMP and SPYD. Fixes #3600 2015-08-04 17:12:24 -07:00
HttpHeaderUtil.java Faster and more memory efficient headers for HTTP, HTTP/2, STOMP and SPYD. Fixes #3600 2015-08-04 17:12:24 -07:00
HttpHeaderValues.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
HttpMessage.java Remove 'get' prefix from all HTTP/SPDY messages 2014-06-24 18:03:33 +09:00
HttpMessageUtil.java Implement toString() for all HttpMessage implementations 2014-12-31 18:39:00 +09:00
HttpMethod.java Synchronized between 4.1 and master 2014-04-25 00:38:02 +09:00
HttpObject.java Introduce MessageAggregator and DecoderResultProvider 2014-06-05 16:51:14 +09:00
HttpObjectAggregator.java Change AggregatedFullHttpMessage to contain a content ByteBuf 2015-04-16 14:43:50 +02:00
HttpObjectDecoder.java HttpObjectDecoder half close behavior 2015-08-05 09:04:59 -07:00
HttpObjectEncoder.java Faster and more memory efficient headers for HTTP, HTTP/2, STOMP and SPYD. Fixes #3600 2015-08-04 17:12:24 -07:00
HttpRequest.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
HttpRequestDecoder.java Fixes #3362 (Possible wrong behavior in HttpResponseDecoder/HttpRequestDecoder for large header/initline/content) 2015-02-02 17:03:32 +09:00
HttpRequestEncoder.java Small performance improvements 2014-11-20 00:10:06 -05:00
HttpResponse.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00
HttpResponseDecoder.java Fixes #3362 (Possible wrong behavior in HttpResponseDecoder/HttpRequestDecoder for large header/initline/content) 2015-02-02 17:03:32 +09:00
HttpResponseEncoder.java Remove 'get' prefix from all HTTP/SPDY messages 2014-06-24 18:03:33 +09:00
HttpResponseStatus.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
HttpServerCodec.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
HttpServerUpgradeHandler.java Lazily instantiate HttpServerUpgradeHandler.UpgradeCodec 2015-06-10 12:06:27 +09:00
HttpStatusClass.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
HttpVersion.java [#1682] HttpVersion.valueOf(...) should not convert to uppercase 2014-02-13 16:36:36 -08:00
LastHttpContent.java Remove 'get' prefix from all HTTP/SPDY messages 2014-06-24 18:03:33 +09:00
package-info.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
QueryStringDecoder.java QueryStringDecoder's javadoc fix 2015-05-21 11:45:36 +02:00
QueryStringEncoder.java Remove 'get' prefix from all HTTP/SPDY messages 2014-06-24 18:03:33 +09:00
ServerCookieEncoder.java Validate cookie name and value characters Motivation: 2015-05-07 06:33:36 +02:00