Go to file
Brendt Lucas 3ec02bf746 Support conversion of HttpMessage and HttpContent to HTTP/2 Frames
Motivation:

HttpToHttp2ConnectionHandler only converts FullHttpMessage to HTTP/2 Frames. This does not support other use cases such as adding a HttpContentCompressor to the pipeline, which writes HttpMessage and HttpContent.

Additionally HttpToHttp2ConnectionHandler ignores converting and sending HTTP trailing headers, which is a bug as the HTTP/2 spec states that they should be sent.

Modifications:

Update HttpToHttp2ConnectionHandler to support converting HttpMessage and HttpContent to HTTP/2 Frames.
Additionally, include an extra call to writeHeaders if the message includes trailing headers

Result:

One can now write HttpMessage and HttpContent (http chunking) down the pipeline and they will be converted to HTTP/2 Frames.  If any trailing headers exist, they will be converted and sent as well.
2015-07-21 20:17:04 +02:00
all [maven-release-plugin] prepare for next development iteration 2015-03-03 08:30:59 -05:00
buffer [#3896] Unpooled.copiedBuffer(ByteBuffer) and copiedBuffer(ByteBuffer...) is not thread-safe. 2015-07-07 08:38:53 +02:00
codec Add ProtocolDetectionResult and use it in HAProxyMessageDecoder for allow detect HAProxy protocol. 2015-06-23 08:59:16 +02:00
codec-dns Fix missing ResourceLeak.close() in AbstractDnsMessage 2015-05-04 12:07:59 +09:00
codec-haproxy Add ProtocolDetectionResult and use it in HAProxyMessageDecoder for allow detect HAProxy protocol. 2015-06-23 08:59:16 +02:00
codec-http Send full response for unsupported websocket versions 2015-07-17 10:44:42 +02:00
codec-http2 Support conversion of HttpMessage and HttpContent to HTTP/2 Frames 2015-07-21 20:17:04 +02:00
codec-memcache Returns after encoding each message not do check following instance types 2015-03-19 20:43:10 +01:00
codec-mqtt [maven-release-plugin] prepare for next development iteration 2015-03-03 08:30:59 -05:00
codec-socks [maven-release-plugin] prepare for next development iteration 2015-03-03 08:30:59 -05:00
codec-stomp ByteString introduced as AsciiString super class 2015-04-15 10:45:18 -07:00
codec-xml [maven-release-plugin] prepare for next development iteration 2015-03-03 08:30:59 -05:00
common Ensure cancelled scheduled tasks can be GC'ed ASAP 2015-07-19 16:59:03 +02:00
example HTTP/2 Example Needs FullHttpRequest 2015-07-07 13:51:54 -07:00
handler Better handling of BUFFER_OVERFLOW when unwrap data. 2015-07-08 10:33:48 +02:00
handler-proxy ByteString introduced as AsciiString super class 2015-04-15 10:45:18 -07:00
license Let PoolThreadCache work even if allocation and deallocation Thread are different 2015-05-27 14:38:23 +02:00
microbench HTTP/2 Flow Controller should use Channel.isWritable() 2015-07-16 14:41:05 -07:00
resolver Use InetSocketAddress.getHostName() instead of getHostString() 2015-03-10 11:45:56 +09:00
resolver-dns DnsResolver.resolve(...) fails when ipaddress is used. 2015-07-18 17:13:50 +02:00
tarball [maven-release-plugin] prepare for next development iteration 2015-03-03 08:30:59 -05:00
testsuite More meaningful assertion failure message 2015-06-04 12:06:15 +09:00
testsuite-osgi Upgrade twitter hpack dependency 2015-04-30 17:14:33 -07:00
transport Update ChannelConfig.java 2015-07-19 18:04:27 +02:00
transport-native-epoll Correctly register for EPOLLRDHUP when construct EpollSocketChannel from FileDescriptor 2015-07-21 18:41:22 +02:00
transport-rxtx [maven-release-plugin] prepare for next development iteration 2015-03-03 08:30:59 -05:00
transport-sctp Add support for SCTP 'unordered' flag. 2015-04-30 08:46:34 +02:00
transport-udt Remove duplicated code in AcceptorChannel classes. 2015-05-07 06:32:13 +02:00
.fbprefs Updated Find Bugs configuration 2009-03-04 10:33:09 +00:00
.gitignore Exclude bin directory from git Motivation: 2014-08-27 06:33:22 +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:17:58 +09:00
LICENSE.txt Relicensed to Apache License v2 2009-08-28 07:15:49 +00:00
NOTICE.txt Let PoolThreadCache work even if allocation and deallocation Thread are different 2015-05-27 14:38:23 +02:00
pom.xml Correctly handle errors when using OpenSSL 2015-06-21 21:06:57 +02:00
README.md Add a link to the 'native transports' page 2014-07-21 12:10:16 -07:00
run-example.sh Add HTTP/2 Netty tiles example 2015-05-18 14:17:48 -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

The 'master' branch is where the development of the latest major version lives on. The development of all other 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.