Go to file
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
all [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
buffer Share code between retain(...) and release(...) implementations. 2016-09-02 21:53:10 +02:00
codec [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-dns Add support for Client Subnet in DNS Queries (RFC7871) 2016-09-06 07:16:57 +02:00
codec-haproxy [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-http Provide extra info together with handshake complete event. 2016-09-11 17:52:07 +02:00
codec-http2 [#5762] HTTP/2: SETTINGS_HEADER_TABLE_SIZE should be an unsigned int 2016-09-09 13:20:32 +02:00
codec-memcache [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-mqtt [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-redis [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-smtp [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-socks [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-stomp [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
codec-xml [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
common Reduce bytecode size of PlatformDependent0.equals. 2016-09-09 07:57:41 +02:00
example [#5759] Allow websocket extensions in websocketx example. 2016-09-07 13:57:27 +02:00
handler Add startTls parameter to SslContextBuilder 2016-09-06 11:29:10 +02:00
handler-proxy [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
license added support for Protobuf codec nano runtime 2016-01-19 21:39:17 +01:00
microbench Reduce bytecode size of PlatformDependent0.equals. 2016-09-09 07:57:41 +02:00
resolver [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
resolver-dns Add support for Client Subnet in DNS Queries (RFC7871) 2016-09-06 07:16:57 +02:00
tarball [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
testsuite Correct throw ClosedChannelException when attempt to call shutdown*(...) on closed EpollSocketChannel. 2016-09-01 08:16:02 +02:00
testsuite-osgi [maven-release-plugin] prepare for next development iteration 2016-08-26 10:06:32 +02:00
transport Log more details if notification of promise fails in PromiseNotifier and AbstractChannelHandlerContext 2016-09-07 06:55:38 +02:00
transport-native-epoll Correct throw ClosedChannelException when attempt to call shutdown*(...) on closed EpollSocketChannel. 2016-09-01 08:16:02 +02:00
transport-rxtx Remove @Deprecated for primitive WriteWaterMark getters and setters 2016-09-05 10:26:05 +02:00
transport-sctp Remove @Deprecated for primitive WriteWaterMark getters and setters 2016-09-05 10:26:05 +02:00
transport-udt Remove @Deprecated for primitive WriteWaterMark getters and setters 2016-09-05 10:26:05 +02:00
.fbprefs Updated Find Bugs configuration 2009-03-04 10:33:09 +00:00
.gitignore Use shaded dependency on JCTools instead of copy and paste 2016-06-10 13:19:45 +02:00
.travis.yml Travis CI branch whitelisting 2013-03-11 09:55:43 +09:00
CONTRIBUTING.md Move the pull request guide to the developer guide 2014-03-12 13:13:58 +09:00
LICENSE.txt Relicensed to Apache License v2 2009-08-28 07:15:49 +00:00
NOTICE.txt added support for Protobuf codec nano runtime 2016-01-19 21:39:17 +01:00
pom.xml Ensure we not sent duplicate certificates when using OpenSslEngine 2016-09-05 15:05:17 +02:00
README.md Updating Branches to look section to match the current branching structure of the project 2016-03-10 22:08:01 +01:00
run-example.sh Add an example client for codec-redis 2016-04-23 11:18:12 -07:00

Netty Project

Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.

How to build

For the detailed information about building and developing Netty, please visit the developer guide. This page only gives very basic information.

You require the following to build Netty:

Note that this is build-time requirement. JDK 5 (for 3.x) or 6 (for 4.0+) is enough to run your Netty-based application.

Branches to look

Development of all versions takes place in each branch whose name is identical to <majorVersion>.<minorVersion>. For example, the development of 3.9 and 4.0 resides in the branch '3.9' and the branch '4.0' respectively.