netty5/license
Trustin Lee de2872f7f7 Introduce TextHeaders and AsciiString
Motivation:

We have quite a bit of code duplication between HTTP/1, HTTP/2, SPDY,
and STOMP codec, because they all have a notion of 'headers', which is a
multimap of string names and values.

Modifications:

- Add TextHeaders and its default implementation
- Add AsciiString to replace HttpHeaderEntity
  - Borrowed some portion from Apache Harmony's java.lang.String.
- Reimplement HttpHeaders, SpdyHeaders, and StompHeaders using
  TextHeaders
- Add AsciiHeadersEncoder to reuse the encoding a TextHeaders
  - Used a dedicated encoder for HTTP headers for better performance
    though
- Remove shortcut methods in SpdyHeaders
- Remove shortcut methods in SpdyHttpHeaders
- Replace SpdyHeaders.getStatus() with HttpResponseStatus.parseLine()

Result:

- Removed quite a bit of code duplication in the header implementations.
- Slightly better performance thanks to improved header validation and
  hash code calculation
2014-06-14 17:14:30 +09:00
..
LICENSE.abstractnodequeue.txt [#1259] Add optimized queue for SCMP pattern and use it in NIO and native transport 2014-02-27 13:56:15 +01:00
LICENSE.base64.txt * Moved all third party license filed into the 'license' directory 2008-12-30 02:41:09 +00:00
LICENSE.bouncycastle.txt Preparation for porting OpenSSL support in 3.10 2014-05-17 20:01:09 +09:00
LICENSE.caliper.txt Update license notices and dependencies 2012-12-14 00:38:05 +09:00
LICENSE.commons-logging.txt * Moved all third party license filed into the 'license' directory 2008-12-30 02:41:09 +00:00
LICENSE.deque.txt Make MessageBuf bounded 2013-01-31 18:11:06 +01:00
LICENSE.harmony.txt Introduce TextHeaders and AsciiString 2014-06-14 17:14:30 +09:00
LICENSE.jboss-marshalling.txt Update license notices and dependencies 2012-12-14 00:38:05 +09:00
LICENSE.jsr166y.txt * Moved all third party license filed into the 'license' directory 2008-12-30 02:41:09 +00:00
LICENSE.jzlib.txt Add back jzlib license file and notice 2013-02-21 14:00:59 -08:00
LICENSE.log4j.txt * Moved all third party license filed into the 'license' directory 2008-12-30 02:41:09 +00:00
LICENSE.protobuf.txt * Moved all third party license filed into the 'license' directory 2008-12-30 02:41:09 +00:00
LICENSE.slf4j.txt * Moved all third party license filed into the 'license' directory 2008-12-30 02:41:09 +00:00
LICENSE.snappy.txt Add Snappy compression codec 2012-12-18 21:09:31 +01:00
LICENSE.webbit.txt Added webbit license and credits 2011-10-27 10:34:37 +11:00