public class FastLzFrameEncoder extends MessageToByteEncoder<ByteBuf>
ByteBuf使用FastLZ算法。
见FastLZ format 。
ChannelHandler.Sharable| Constructor and Description |
|---|
FastLzFrameEncoder()
创建不带校验和计算器并自动检测压缩级别的FastLZ编码器。
|
FastLzFrameEncoder(boolean validateChecksums)
创建FastLZ编码器,自动检测压缩级别并根据指定计算校验和。
|
FastLzFrameEncoder(int level)
创建一个具有指定压缩级别并且没有校验和计算器的FastLZ编码器。
|
FastLzFrameEncoder(int level, java.util.zip.Checksum checksum)
创建具有指定压缩级别和校验和计算器的FastLZ编码器。
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
encode(ChannelHandlerContext ctx, ByteBuf in, ByteBuf out)
将消息编码成 ByteBuf 。
|
acceptOutboundMessage, allocateBuffer, isPreferDirect, writebind, close, connect, deregister, disconnect, flush, readensureNotSharable, exceptionCaught, handlerAdded, handlerRemoved, isSharableclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitexceptionCaught, handlerAdded, handlerRemovedpublic FastLzFrameEncoder()
public FastLzFrameEncoder(int level)
level - 仅支持这些值:0 - 编码器将根据输入缓冲区的长度自动选择级别。
1 - 1级是最快的压缩方式,通常用于短数据。
2 - 2级稍慢,但压缩比更高。
public FastLzFrameEncoder(boolean validateChecksums)
validateChecksums - 如果为true,则将计算每个块的校验和,并将该值添加到块的头部。
默认情况下, FastLzFrameEncoder使用Adler32进行校验和计算。
public FastLzFrameEncoder(int level,
java.util.zip.Checksum checksum)
level - 仅支持这些值:0 - 编码器将根据输入缓冲区的长度自动选择级别。
1 - 1级是最快的压缩方式,通常用于短数据。
2 - 2级稍慢,但压缩比更高。
checksum - 用于检查数据完整性的Checksum实例。
如果您不想验证每个块的校验和,则可以设置null 。
protected void encode(ChannelHandlerContext ctx, ByteBuf in, ByteBuf out) throws java.lang.Exception
MessageToByteEncoder
ByteBuf 。
这个方法将被编码器处理的每个书面信息调用。
encode
MessageToByteEncoder<ByteBuf>
ctx - 这MessageToByteEncoder所属的ChannelHandlerContext
in - 要编码的消息
out - 将写入编码消息的ByteBuf
java.lang.Exception - 发生错误时抛出
Copyright © 2008–2018 The Netty Project. All rights reserved.