netty5/codec-http/src/main/java/io/netty/handler/codec/http
Trustin Lee cbd8817905 Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly
I must admit MesageList was pain in the ass.  Instead of forcing a
handler always loop over the list of messages, this commit splits
messageReceived(ctx, list) into two event handlers:

- messageReceived(ctx, msg)
- mmessageReceivedLast(ctx)

When Netty reads one or more messages, messageReceived(ctx, msg) event
is triggered for each message.  Once the current read operation is
finished, messageReceivedLast() is triggered to tell the handler that
the last messageReceived() was the last message in the current batch.

Similarly, for outbound, write(ctx, list) has been split into two:

- write(ctx, msg)
- flush(ctx, promise)

Instead of writing a list of message with a promise, a user is now
supposed to call write(msg) multiple times and then call flush() to
actually flush the buffered messages.

Please note that write() doesn't have a promise with it.  You must call
flush() to get notified on completion. (or you can use writeAndFlush())

Other changes:

- Because MessageList is completely hidden, codec framework uses
  List<Object> instead of MessageList as an output parameter.
2013-07-09 23:51:48 +09:00
..
multipart Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
websocketx Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
ClientCookieEncoder.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
Cookie.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
CookieDecoder.java [#1384] Cache HttpHeaderDateFormat in ThreadLocal 2013-05-23 11:39:50 +02:00
CookieEncoderUtil.java Correctly format cookies. This fix some bug which lead to expiring of cookies to not work. See #426 2012-07-04 15:20:47 +02:00
CookieHeaderNames.java Update license headers 2012-06-04 13:31:44 -07:00
DefaultCookie.java Prefer isEmpty() over size() == 0 or length() == 0 2012-11-10 01:24:04 +09:00
DefaultFullHttpRequest.java [#1533] Introduce ByteBufHolder.duplicate() and make use of it in DefaultChannelGroup.write(...) 2013-07-06 21:17:51 +02:00
DefaultFullHttpResponse.java [#1533] Introduce ByteBufHolder.duplicate() and make use of it in DefaultChannelGroup.write(...) 2013-07-06 21:17:51 +02:00
DefaultHttpContent.java [#1533] Introduce ByteBufHolder.duplicate() and make use of it in DefaultChannelGroup.write(...) 2013-07-06 21:17:51 +02:00
DefaultHttpHeaders.java [#1384] Cache HttpHeaderDateFormat in ThreadLocal 2013-05-23 11:39:50 +02:00
DefaultHttpMessage.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
DefaultHttpObject.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
DefaultHttpRequest.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
DefaultHttpResponse.java Fix typo 2013-04-10 10:41:23 +09:00
DefaultLastHttpContent.java [#1533] Introduce ByteBufHolder.duplicate() and make use of it in DefaultChannelGroup.write(...) 2013-07-06 21:17:51 +02:00
FullHttpMessage.java Update FullHttpMessage.java 2013-04-08 21:12:19 +02:00
FullHttpRequest.java Change ReferenceCounted.retain* to return itself and so allow method chaining 2013-02-14 07:39:44 +01:00
FullHttpResponse.java Change ReferenceCounted.retain* to return itself and so allow method chaining 2013-02-14 07:39:44 +01:00
HttpClientCodec.java Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
HttpConstants.java Update license headers 2012-06-04 13:31:44 -07:00
HttpContent.java [#1533] Introduce ByteBufHolder.duplicate() and make use of it in DefaultChannelGroup.write(...) 2013-07-06 21:17:51 +02:00
HttpContentCompressor.java Revamp the core API to reduce memory footprint and consumption 2013-06-10 16:10:39 +09:00
HttpContentDecoder.java Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
HttpContentDecompressor.java Revamp the core API to reduce memory footprint and consumption 2013-06-10 16:10:39 +09:00
HttpContentEncoder.java Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
HttpHeaderDateFormat.java Fix checkstyle 2013-07-07 12:39:29 +09:00
HttpHeaders.java [#1384] Cache HttpHeaderDateFormat in ThreadLocal 2013-05-23 11:39:50 +02:00
HttpMessage.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
HttpMethod.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
HttpObject.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
HttpObjectAggregator.java Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
HttpObjectDecoder.java Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
HttpObjectEncoder.java Remove MessageList from public API and change ChannelInbound/OutboundHandler accordingly 2013-07-09 23:51:48 +09:00
HttpRequest.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
HttpRequestDecoder.java [#942] Add an option to disable decoding of chunked transfer encoding in HttpObjectDecoder 2013-01-20 10:40:54 +01:00
HttpRequestEncoder.java Some optimizations to the http codec 2013-05-24 09:07:17 +02:00
HttpResponse.java Add setters and getters back to Http Objects 2013-01-30 07:42:18 +01:00
HttpResponseDecoder.java Make sure that HttpObjectDecoder decodes the last HTTP message without 'Content-Length' header 2013-06-13 10:57:06 +09:00
HttpResponseEncoder.java Some optimizations to the http codec 2013-05-24 09:07:17 +02:00
HttpResponseStatus.java SPDY: handle too large header blocks 2013-06-25 11:07:15 +09:00
HttpServerCodec.java Revamp the core API to reduce memory footprint and consumption 2013-06-10 16:10:39 +09:00
HttpVersion.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
LastHttpContent.java [#1533] Introduce ByteBufHolder.duplicate() and make use of it in DefaultChannelGroup.write(...) 2013-07-06 21:17:51 +02: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 Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
QueryStringEncoder.java Remove apiviz tags - we are focusing on user guide instead and putting diagrams there 2013-02-14 12:09:16 -08:00
ServerCookieEncoder.java [#1384] Cache HttpHeaderDateFormat in ThreadLocal 2013-05-23 11:39:50 +02:00