c8841bc9de
Motivation: LZ4 compression codec provides sending and receiving data encoded by very fast LZ4 algorithm. Modifications: - Added `lz4` library which implements LZ4 algorithm. - Implemented Lz4FramedEncoder which extends MessageToByteEncoder and provides compression of outgoing messages. - Added tests to verify the Lz4FramedEncoder and how it can compress data for the next uncompression using the original library. - Implemented Lz4FramedDecoder which extends ByteToMessageDecoder and provides uncompression of incoming messages. - Added tests to verify the Lz4FramedDecoder and how it can uncompress data after compression using the original library. - Added integration tests for Lz4FramedEncoder/Decoder. Result: Full LZ4 compression codec which can compress/uncompress data using LZ4 algorithm.
190 lines
6.2 KiB
Plaintext
190 lines
6.2 KiB
Plaintext
|
|
The Netty Project
|
|
=================
|
|
|
|
Please visit the Netty web site for more information:
|
|
|
|
* http://netty.io/
|
|
|
|
Copyright 2014 The Netty Project
|
|
|
|
The Netty Project licenses this file to you under the Apache License,
|
|
version 2.0 (the "License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at:
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
License for the specific language governing permissions and limitations
|
|
under the License.
|
|
|
|
Also, please refer to each LICENSE.<component>.txt file, which is located in
|
|
the 'license' directory of the distribution file, for the license terms of the
|
|
components that this product depends on.
|
|
|
|
-------------------------------------------------------------------------------
|
|
This product contains the extensions to Java Collections Framework which has
|
|
been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.jsr166y.txt (Public Domain)
|
|
* HOMEPAGE:
|
|
* http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/
|
|
* http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/
|
|
|
|
This product contains a modified version of Robert Harder's Public Domain
|
|
Base64 Encoder and Decoder, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.base64.txt (Public Domain)
|
|
* HOMEPAGE:
|
|
* http://iharder.sourceforge.net/current/java/base64/
|
|
|
|
This product contains a modified portion of 'Webbit', an event based
|
|
WebSocket and HTTP server, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.webbit.txt (BSD License)
|
|
* HOMEPAGE:
|
|
* https://github.com/joewalnes/webbit
|
|
|
|
This product contains a modified portion of 'SLF4J', a simple logging
|
|
facade for Java, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.slf4j.txt (MIT License)
|
|
* HOMEPAGE:
|
|
* http://www.slf4j.org/
|
|
|
|
This product contains a modified portion of 'ArrayDeque', written by Josh
|
|
Bloch of Google, Inc:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.deque.txt (Public Domain)
|
|
|
|
This product contains a modified portion of 'Apache Harmony', an open source
|
|
Java SE, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.harmony.txt (Apache License 2.0)
|
|
* HOMEPAGE:
|
|
* http://archive.apache.org/dist/harmony/
|
|
|
|
This product contains a modified version of Roland Kuhn's ASL2
|
|
AbstractNodeQueue, which is based on Dmitriy Vyukov's non-intrusive MPSC queue.
|
|
It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.abstractnodequeue.txt (Public Domain)
|
|
* HOMEPAGE:
|
|
* https://github.com/akka/akka/blob/wip-2.2.3-for-scala-2.11/akka-actor/src/main/java/akka/dispatch/AbstractNodeQueue.java
|
|
|
|
This product contains a modified portion of 'jbzip2', a Java bzip2 compression
|
|
and decompression library written by Matthew J. Francis. It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.jbzip2.txt (MIT License)
|
|
* HOMEPAGE:
|
|
* https://code.google.com/p/jbzip2/
|
|
|
|
This product contains a modified portion of 'libdivsufsort', a C API library to construct
|
|
the suffix array and the Burrows-Wheeler transformed string for any input string of
|
|
a constant-size alphabet written by Yuta Mori. It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.libdivsufsort.txt (MIT License)
|
|
* HOMEPAGE:
|
|
* https://code.google.com/p/libdivsufsort/
|
|
|
|
This product optionally depends on 'JZlib', a re-implementation of zlib in
|
|
pure Java, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.jzlib.txt (BSD style License)
|
|
* HOMEPAGE:
|
|
* http://www.jcraft.com/jzlib/
|
|
|
|
This product optionally depends on 'Compress-LZF', a Java library for encoding and
|
|
decoding data in LZF format, written by Tatu Saloranta. It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.compress-lzf.txt (Apache License 2.0)
|
|
* HOMEPAGE:
|
|
* https://github.com/ning/compress
|
|
|
|
This product optionally depends on 'lz4', a LZ4 Java compression
|
|
and decompression library written by Adrien Grand. It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.lz4.txt (Apache License 2.0)
|
|
* HOMEPAGE:
|
|
* https://github.com/jpountz/lz4-java
|
|
|
|
This product contains a modified portion of 'jfastlz', a Java port of FastLZ compression
|
|
and decompression library written by William Kinney. It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.jfastlz.txt (MIT License)
|
|
* HOMEPAGE:
|
|
* https://code.google.com/p/jfastlz/
|
|
|
|
This product optionally depends on 'Protocol Buffers', Google's data
|
|
interchange format, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.protobuf.txt (New BSD License)
|
|
* HOMEPAGE:
|
|
* http://code.google.com/p/protobuf/
|
|
|
|
This product optionally depends on 'Bouncy Castle Crypto APIs' to generate
|
|
a temporary self-signed X.509 certificate when the JVM does not provide the
|
|
equivalent functionality. It can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.bouncycastle.txt (MIT License)
|
|
* HOMEPAGE:
|
|
* http://www.bouncycastle.org/
|
|
|
|
This product optionally depends on 'Snappy', a compression library produced
|
|
by Google Inc, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.snappy.txt (New BSD License)
|
|
* HOMEPAGE:
|
|
* http://code.google.com/p/snappy/
|
|
|
|
This product optionally depends on 'JBoss Marshalling', an alternative Java
|
|
serialization API, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.jboss-marshalling.txt (GNU LGPL 2.1)
|
|
* HOMEPAGE:
|
|
* http://www.jboss.org/jbossmarshalling
|
|
|
|
This product optionally depends on 'Caliper', Google's micro-
|
|
benchmarking framework, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.caliper.txt (Apache License 2.0)
|
|
* HOMEPAGE:
|
|
* http://code.google.com/p/caliper/
|
|
|
|
This product optionally depends on 'Apache Commons Logging', a logging
|
|
framework, which can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.commons-logging.txt (Apache License 2.0)
|
|
* HOMEPAGE:
|
|
* http://commons.apache.org/logging/
|
|
|
|
This product optionally depends on 'Apache Log4J', a logging framework, which
|
|
can be obtained at:
|
|
|
|
* LICENSE:
|
|
* license/LICENSE.log4j.txt (Apache License 2.0)
|
|
* HOMEPAGE:
|
|
* http://logging.apache.org/log4j/
|
|
|