Uses of Class
io.netty.channel.ChannelDuplexHandler
Packages that use ChannelDuplexHandler
Package
Description
The core channel API which is asynchronous and event-driven abstraction of
various transports such as a
NIO Channel.
Extensible decoder and its common implementations which deal with the
packet fragmentation and reassembly issue found in a stream-based transport
such as TCP/IP.
Encoder, decoder and their related message types for HTTP.
This package contains Cross Origin Resource Sharing (CORS) related classes.
Encoder, decoder, handshakers to handle
WebSocket Extensions.
Encoder, decoder, handshakers to handle most common WebSocket Compression Extensions.
Handlers for sending and receiving HTTP/2 frames.
Implementations and Interfaces for the Memcache Binary protocol.
Encoder, decoder, session handler and their related message types for the SPDY protocol.
Package to control the flow of messages.
Package to control flush behavior.
Logs the I/O events for debugging purpose.
Capture data and write into Pcap format which helps in troubleshooting.
Adds support for client connections via proxy protocols such as
SOCKS and
HTTP CONNECT tunneling
Writes very large data stream asynchronously neither spending a lot of
memory nor getting
OutOfMemoryError.Adds support for read and write timeout and idle connection notification
using a
Timer.Implementation of a Traffic Shaping Handler and Dynamic Statistics.
-
Uses of ChannelDuplexHandler in io.netty.channel
Subclasses of ChannelDuplexHandler in io.netty.channelModifier and TypeClassDescriptionclassCombinedChannelDuplexHandler<I extends ChannelInboundHandler, O extends ChannelOutboundHandler> -
Uses of ChannelDuplexHandler in io.netty.handler.codec
Subclasses of ChannelDuplexHandler in io.netty.handler.codecModifier and TypeClassDescriptionclassA Codec for on-the-fly encoding/decoding of bytes to messages and vise-versa.classMessageToMessageCodec<INBOUND_IN, OUTBOUND_IN>A Codec for on-the-fly encoding/decoding of message. -
Uses of ChannelDuplexHandler in io.netty.handler.codec.http
Subclasses of ChannelDuplexHandler in io.netty.handler.codec.httpModifier and TypeClassDescriptionfinal classA combination ofHttpRequestEncoderandHttpResponseDecoderwhich enables easier client side HTTP implementation.classCompresses anHttpMessageand anHttpContentingzipordeflateencoding while respecting the"Accept-Encoding"header.classEncodes the content of the outboundHttpResponseandHttpContent.final classA combination ofHttpRequestDecoderandHttpResponseEncoderwhich enables easier server side HTTP implementation.classHttpServerKeepAliveHandler helps close persistent connections when appropriate. -
Uses of ChannelDuplexHandler in io.netty.handler.codec.http.cors
Subclasses of ChannelDuplexHandler in io.netty.handler.codec.http.cors -
Uses of ChannelDuplexHandler in io.netty.handler.codec.http.websocketx.extensions
Subclasses of ChannelDuplexHandler in io.netty.handler.codec.http.websocketx.extensionsModifier and TypeClassDescriptionclassThis handler negotiates and initializes the WebSocket Extensions.classThis handler negotiates and initializes the WebSocket Extensions. -
Uses of ChannelDuplexHandler in io.netty.handler.codec.http.websocketx.extensions.compression
Modifier and TypeClassDescriptionfinal classExtends io.netty.handler.codec.http.websocketx.extensions.compression.WebSocketClientExtensionHandler to handle the most common WebSocket Compression Extensions.classExtends io.netty.handler.codec.http.websocketx.extensions.compression.WebSocketServerExtensionHandler to handle the most common WebSocket Compression Extensions. -
Uses of ChannelDuplexHandler in io.netty.handler.codec.http2
Subclasses of ChannelDuplexHandler in io.netty.handler.codec.http2Modifier and TypeClassDescriptionclassAChannelDuplexHandlerproviding additional functionality for HTTP/2.final classAn HTTP/2 handler that creates child channels for each stream.classThis handler converts fromHttp2StreamFrametoHttpObject, and back. -
Uses of ChannelDuplexHandler in io.netty.handler.codec.memcache.binary
Subclasses of ChannelDuplexHandler in io.netty.handler.codec.memcache.binaryModifier and TypeClassDescriptionfinal classThe client codec that combines the proper encoder and decoder.classThe full server codec that combines the correct encoder and decoder. -
Uses of ChannelDuplexHandler in io.netty.handler.codec.spdy
Subclasses of ChannelDuplexHandler in io.netty.handler.codec.spdyModifier and TypeClassDescriptionfinal classA combination ofSpdyHttpDecoderandSpdyHttpEncoderclassMessageToMessageCodecthat takes care of adding the rightSpdyHttpHeaders.Names.STREAM_IDto theHttpMessageif one is not present.classManages streams within a SPDY session. -
Uses of ChannelDuplexHandler in io.netty.handler.flow
Subclasses of ChannelDuplexHandler in io.netty.handler.flowModifier and TypeClassDescriptionclassTheFlowControlHandlerensures that only one message perread()is sent downstream. -
Uses of ChannelDuplexHandler in io.netty.handler.flush
Subclasses of ChannelDuplexHandler in io.netty.handler.flushModifier and TypeClassDescriptionclassChannelDuplexHandlerwhich consolidatesChannel.flush()/ChannelHandlerContext.flush()operations (which also includesChannel.writeAndFlush(Object)/Channel.writeAndFlush(Object, ChannelPromise)andChannelOutboundInvoker.writeAndFlush(Object)/ChannelOutboundInvoker.writeAndFlush(Object, ChannelPromise)). -
Uses of ChannelDuplexHandler in io.netty.handler.logging
Subclasses of ChannelDuplexHandler in io.netty.handler.loggingModifier and TypeClassDescriptionclassAChannelHandlerthat logs all events using a logging framework. -
Uses of ChannelDuplexHandler in io.netty.handler.pcap
Subclasses of ChannelDuplexHandler in io.netty.handler.pcapModifier and TypeClassDescriptionfinal classPcapWriteHandlercapturesByteBuffromSocketChannel/ServerChannelorDatagramPacketand writes it into PcapOutputStream. -
Uses of ChannelDuplexHandler in io.netty.handler.proxy
Subclasses of ChannelDuplexHandler in io.netty.handler.proxyModifier and TypeClassDescriptionfinal classHandler that establishes a blind forwarding proxy tunnel using HTTP/1.1 CONNECT request.classA common abstraction for protocols that establish blind forwarding proxy tunnels.final classHandler that establishes a blind forwarding proxy tunnel using SOCKS4 protocol.final classHandler that establishes a blind forwarding proxy tunnel using SOCKS Protocol Version 5. -
Uses of ChannelDuplexHandler in io.netty.handler.stream
Subclasses of ChannelDuplexHandler in io.netty.handler.streamModifier and TypeClassDescriptionclassAChannelHandlerthat adds support for writing a large data stream asynchronously neither spending a lot of memory nor gettingOutOfMemoryError. -
Uses of ChannelDuplexHandler in io.netty.handler.timeout
Subclasses of ChannelDuplexHandler in io.netty.handler.timeoutModifier and TypeClassDescriptionclassTriggers anIdleStateEventwhen aChannelhas not performed read, write, or both operation for a while.classRaises aReadTimeoutExceptionwhen no data was read within a certain period of time. -
Uses of ChannelDuplexHandler in io.netty.handler.traffic
Subclasses of ChannelDuplexHandler in io.netty.handler.trafficModifier and TypeClassDescriptionclassAbstractTrafficShapingHandler allows to limit the global bandwidth (seeGlobalTrafficShapingHandler) or per session bandwidth (seeChannelTrafficShapingHandler), as traffic shaping.classThis implementation of theAbstractTrafficShapingHandleris for channel traffic shaping, that is to say a per channel limitation of the bandwidth.classThis implementation of theAbstractTrafficShapingHandleris for global and per channel traffic shaping, that is to say a global limitation of the bandwidth, whatever the number of opened channels and a per channel limitation of the bandwidth.
This version shall not be in the same pipeline than other TrafficShapingHandler.
The general use should be as follow:
Create your unique GlobalChannelTrafficShapingHandler like:
GlobalChannelTrafficShapingHandler myHandler = new GlobalChannelTrafficShapingHandler(executor);
The executor could be the underlying IO worker pool
pipeline.addLast(myHandler);
Note that this handler has a Pipeline Coverage of "all" which means only one such handler must be created and shared among all channels as the counter must be shared among all channels.
Other arguments can be passed like write or read limitation (in bytes/s where 0 means no limitation) or the check interval (in millisecond) that represents the delay between two computations of the bandwidth and so the call back of the doAccounting method (0 means no accounting at all).
Note that as this is a fusion of both Global and Channel Traffic Shaping, limits are in 2 sets, respectively Global and Channel.
A value of 0 means no accounting for checkInterval.classThis implementation of theAbstractTrafficShapingHandleris for global traffic shaping, that is to say a global limitation of the bandwidth, whatever the number of opened channels.