public class JdkZlibEncoder extends ZlibEncoder
ByteBuf 。
ChannelHandler.Sharable| Constructor and Description |
|---|
JdkZlibEncoder()
使用默认压缩级别(
6 )和默认包装器(
ZlibWrapper.ZLIB )创建新的zlib编码器。
|
JdkZlibEncoder(byte[] dictionary)
使用默认压缩级别(
6 )和指定的预设词典创建新的zlib编码器。
|
JdkZlibEncoder(int compressionLevel)
用指定的
compressionLevel和默认包装器(
ZlibWrapper.ZLIB )创建一个新的zlib编码器。
|
JdkZlibEncoder(int compressionLevel, byte[] dictionary)
用指定的
compressionLevel和指定的预置字典创建一个新的zlib编码器。
|
JdkZlibEncoder(ZlibWrapper wrapper)
用默认压缩级别(
6 )和指定的包装器创建一个新的zlib编码器。
|
JdkZlibEncoder(ZlibWrapper wrapper, int compressionLevel)
用指定的
compressionLevel和指定的包装器创建一个新的zlib编码器。
|
| Modifier and Type | Method and Description |
|---|---|
protected ByteBuf |
allocateBuffer(ChannelHandlerContext ctx, ByteBuf msg, boolean preferDirect)
分配一个 ByteBuf ,它将用作#encode(ChannelHandlerContext, I, ByteBuf)参数。
|
ChannelFuture |
close()
关闭此 ZlibEncoder并完成编码。
|
void |
close(ChannelHandlerContext ctx, ChannelPromise promise)
|
ChannelFuture |
close(ChannelPromise promise)
关闭此 ZlibEncoder并完成编码。
|
protected void |
encode(ChannelHandlerContext ctx, ByteBuf uncompressed, ByteBuf out)
将消息编码成 ByteBuf 。
|
void |
handlerAdded(ChannelHandlerContext ctx)
子类可以忽略这个方法。
|
boolean |
isClosed()
当且仅当已达到压缩流的结束时才返回
true 。
|
acceptOutboundMessage, isPreferDirect, writebind, connect, deregister, disconnect, flush, readensureNotSharable, exceptionCaught, handlerRemoved, isSharableclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitexceptionCaught, handlerRemovedpublic JdkZlibEncoder()
6 )和默认包装器(
ZlibWrapper.ZLIB )创建新的zlib编码器。
CompressionException - 如果初始化zlib失败
public JdkZlibEncoder(int compressionLevel)
compressionLevel和默认包装器(
ZlibWrapper.ZLIB )创建一个新的zlib编码器。
compressionLevel - 1产生最快的压缩率, 9产生最好的压缩率。
0意味着没有压缩。
默认的压缩级别是6 。
CompressionException - 如果初始化zlib失败
public JdkZlibEncoder(ZlibWrapper wrapper)
6 )和指定的包装器创建一个新的zlib编码器。
CompressionException - 如果初始化zlib失败
public JdkZlibEncoder(ZlibWrapper wrapper, int compressionLevel)
compressionLevel和指定的包装器创建一个新的zlib编码器。
compressionLevel - 1产生最快的压缩率, 9产生最好的压缩率。
0表示不压缩。
默认的压缩级别是6 。
CompressionException - 如果初始化zlib失败
public JdkZlibEncoder(byte[] dictionary)
6 )和指定的预设字典创建新的zlib编码器。
包装始终是ZlibWrapper.ZLIB,因为它是支持预设字典的唯一格式。
dictionary - 预设词典
CompressionException - 如果初始化zlib失败
public JdkZlibEncoder(int compressionLevel,
byte[] dictionary)
compressionLevel和指定的预置字典创建一个新的zlib编码器。
包装始终是ZlibWrapper.ZLIB,因为它是唯一支持预设字典的格式。
compressionLevel - 1产生最快的压缩率, 9产生最好的压缩率。
0表示没有压缩。
默认的压缩级别是6 。
dictionary - 预设词典
CompressionException - 如果初始化zlib失败
public ChannelFuture close()
ZlibEncoder
ZlibEncoder并完成编码。
一旦操作完成,返回的ChannelFuture将会收到通知。
close在课堂
ZlibEncoder
public ChannelFuture close(ChannelPromise promise)
ZlibEncoder
ZlibEncoder并完成编码。
一旦操作完成,给定的ChannelFuture将被通知,并且也将被返回。
close在课堂
ZlibEncoder
public boolean isClosed()
ZlibEncoder
true 。
isClosed在课堂上
ZlibEncoder
protected void encode(ChannelHandlerContext ctx, ByteBuf uncompressed, ByteBuf out) throws java.lang.Exception
MessageToByteEncoder
ByteBuf 。
这个方法将被编码器处理的每个书面信息调用。
encode在课堂
MessageToByteEncoder<ByteBuf>
ctx - 这MessageToByteEncoder属于的ChannelHandlerContext
uncompressed - 要编码的消息
out - 将编写消息写入其中的ByteBuf
java.lang.Exception - 发生错误时抛出
protected final ByteBuf allocateBuffer(ChannelHandlerContext ctx, ByteBuf msg, boolean preferDirect) throws java.lang.Exception
MessageToByteEncoder
ByteBuf ,其将被用作参数的#encode(ChannelHandlerContext, I, ByteBuf) 。
子类可以覆盖此方法返回ByteBuf与完美匹配initialCapacity 。
allocateBuffer在课堂
MessageToByteEncoder<ByteBuf>
java.lang.Exception
public void close(ChannelHandlerContext ctx, ChannelPromise promise) throws java.lang.Exception
ChannelOutboundHandlerAdapter
ChannelOutboundInvoker.close(ChannelPromise)转发到ChannelOutboundHandler中的下一个ChannelOutboundHandler 。
子类可以重写此方法来更改行为。
close在界面
ChannelOutboundHandler
close
ChannelOutboundHandlerAdapter
ctx - 关闭操作的ChannelHandlerContext
promise - 在操作完成后通知ChannelPromise
java.lang.Exception - 发生错误时抛出
public void handlerAdded(ChannelHandlerContext ctx) throws java.lang.Exception
ChannelHandlerAdapter
handlerAdded在界面
ChannelHandler
handlerAdded在课堂上
ChannelHandlerAdapter
java.lang.Exception
Copyright © 2008–2018 The Netty Project. All rights reserved.