netty5/codec-http/src/main/java/io/netty/handler/codec/http
Gaston Tonietti 245fb52c90 Provide extra info together with handshake complete event.
Motivation:

As described in #5734

Before this change, if the server had to do some sort of setup after a
handshake was completed based on handshake's information, the only way
available was to wait (in a separate thread) for the handshaker to be
added as an attribute to the channel. Too much hassle.

Modifications:

Handshake completed event need to be stateful now, so I've added a tiny
class holding just the HTTP upgrade request and the selected subprotocol
which is fired as an event after the handshake has finished.
I've also deprecated the old enum used as stateless event and I left the
code that fires it for backward compatibility. It should be removed in
the next mayor release.

Result:

It should be much simpler now to do initialization stuff based on
subprotocol or request headers on handshake completion. No asynchronous
waiting needed anymore.
2016-09-11 17:52:07 +02:00
..
cookie Cookie name must be case sensitive 2016-08-23 09:44:38 +02:00
cors CorsHandler to respect http connection (keep-alive) header. 2016-09-06 07:18:53 +02:00
multipart Removed custom split method as it is not effective anymore. 2016-08-01 21:49:33 +02:00
websocketx Provide extra info together with handshake complete event. 2016-09-11 17:52:07 +02:00
ClientCookieEncoder.java Fix javadoc links and tags 2015-12-26 08:34:31 +01:00
CombinedHttpHeaders.java Add unescapeCsvFields to parse a CSV line and implement CombinedHttpHeaders.getAll 2016-02-15 15:26:15 -08:00
ComposedLastHttpContent.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
Cookie.java Deprecation cleanup for HTTP headers 2015-09-09 14:30:21 -07:00
CookieDecoder.java Removed custom split method as it is not effective anymore. 2016-08-01 21:49:33 +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 Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
DefaultFullHttpResponse.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
DefaultHttpContent.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
DefaultHttpHeaders.java HTTP/2 HPACK Header Name Validation and Trailing Padding 2016-05-17 13:42:16 -07:00
DefaultHttpMessage.java Add a possibility to create HttpMessage instances with pre-existing Headers 2015-12-31 08:52:30 +01:00
DefaultHttpObject.java Back port HTTP/2 codec from master to 4.1 2015-01-23 11:06:11 -05:00
DefaultHttpRequest.java Add a possibility to create HttpMessage instances with pre-existing Headers 2015-12-31 08:52:30 +01:00
DefaultHttpResponse.java Add a possibility to create HttpMessage instances with pre-existing Headers 2015-12-31 08:52:30 +01:00
DefaultLastHttpContent.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
EmptyHttpHeaders.java Deprecation cleanup for HTTP headers 2015-09-09 14:30:21 -07:00
FullHttpMessage.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
FullHttpRequest.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
FullHttpResponse.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
HttpChunkedInput.java Fix possible NPE in HttpCunkedInput if wrapped ChunkedInput.readChunk(...) return null. 2016-06-17 06:27:04 +02:00
HttpClientCodec.java HttpObjectDecoder configurable initial buffer size 2016-02-07 21:23:29 -08:00
HttpClientUpgradeHandler.java Propagate h2c upgrade success event to the next handler before removing source codec 2016-04-07 17:41:46 +02:00
HttpConstants.java [#4010] Correctly handle whitespaces in HttpPostMultipartRequestDecoder 2015-08-14 21:16:42 +02:00
HttpContent.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
HttpContentCompressor.java Removed custom split method as it is not effective anymore. 2016-08-01 21:49:33 +02:00
HttpContentDecoder.java HttpContentDecompressor should change decompressed requests to chunked encoding. Fixes issue #5428 2016-06-20 07:43:06 +02:00
HttpContentDecompressor.java Ensure the same ByteBufAllocator is used in the EmbeddedChannel when compress / decompress. Related to [#5294] 2016-05-31 09:08:33 +02:00
HttpContentEncoder.java [5382] HttpContentEncoder should not set chunked transfer-encoding for HTTP/1.0 2016-06-17 06:35:33 +02:00
HttpExpectationFailedEvent.java HttpObjectAggregator doesn't check content-length header 2015-08-17 09:26:50 -07: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 Removed custom split method as it is not effective anymore. 2016-08-01 21:49:33 +02:00
HttpHeadersEncoder.java HTTP/2 Headers Type Updates 2015-10-30 15:29:44 -07:00
HttpHeaderValues.java Add more HttpHeaders values 2016-06-14 09:23:21 -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 HTTP to HTTP/2 tranlation errors 2015-08-21 11:33:10 -07:00
HttpObject.java Introduce MessageAggregator and DecoderResultProvider 2014-06-05 16:51:14 +09:00
HttpObjectAggregator.java Attempt at improving docs in HttpObjectAggregator 2016-08-30 22:10:51 +02:00
HttpObjectDecoder.java Ensure valid message sequence if channel is closed before receive headers. 2016-06-09 22:42:46 +02:00
HttpObjectEncoder.java cleanup, duplicated static final fields 2016-08-10 11:13:26 +02:00
HttpRequest.java Fix errors reported by javadoc 2015-12-27 08:36:45 +01:00
HttpRequestDecoder.java HttpObjectDecoder configurable initial buffer size 2016-02-07 21:23:29 -08:00
HttpRequestEncoder.java cleanup, duplicated static final fields 2016-08-10 11:13:26 +02:00
HttpResponse.java Fix errors reported by javadoc 2015-12-27 08:36:45 +01:00
HttpResponseDecoder.java HttpObjectDecoder configurable initial buffer size 2016-02-07 21:23:29 -08:00
HttpResponseEncoder.java cleanup, duplicated static final fields 2016-08-10 11:13:26 +02:00
HttpResponseStatus.java HTTP/2 Headers Type Updates 2015-10-30 15:29:44 -07:00
HttpScheme.java HttpScheme class 2015-08-20 09:59:23 -07:00
HttpServerCodec.java HttpObjectDecoder configurable initial buffer size 2016-02-07 21:23:29 -08:00
HttpServerUpgradeHandler.java Correctly handle UpgradeEvent.release(decrement). 2016-03-20 09:34:12 +01:00
HttpStatusClass.java ByteString introduced as AsciiString super class 2015-04-14 16:35:17 -07:00
HttpUtil.java Fix set100ContinueExpected(...) jsvadoc 2016-07-04 19:03:14 +02:00
HttpVersion.java Refactor of HttpUtil and HttpHeaderUtil 2015-08-27 08:49:58 -07:00
LastHttpContent.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +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 Fix #5590 QueryStringDecoder#path should decode the path info 2016-07-27 09:29:54 +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