public class DemuxingProtocolCodecFactory extends Object implements ProtocolCodecFactory
ProtocolCodecFactory that provides DemuxingProtocolEncoder
and DemuxingProtocolDecoder as a pair.
DemuxingProtocolEncoder and DemuxingProtocolDecoder demultiplex
incoming messages and buffers to appropriate MessageEncoders and
MessageDecoders.
| Constructor and Description |
|---|
DemuxingProtocolCodecFactory() |
| Modifier and Type | Method and Description |
|---|---|
void |
addMessageDecoder(Class<? extends MessageDecoder> decoderClass) |
void |
addMessageDecoder(MessageDecoder decoder) |
void |
addMessageDecoder(MessageDecoderFactory factory) |
void |
addMessageEncoder(Class<?> messageType,
Class<? extends MessageEncoder> encoderClass) |
<T> void |
addMessageEncoder(Class<T> messageType,
MessageEncoder<? super T> encoder) |
<T> void |
addMessageEncoder(Class<T> messageType,
MessageEncoderFactory<? super T> factory) |
void |
addMessageEncoder(Iterable<Class<?>> messageTypes,
Class<? extends MessageEncoder> encoderClass) |
<T> void |
addMessageEncoder(Iterable<Class<? extends T>> messageTypes,
MessageEncoder<? super T> encoder) |
<T> void |
addMessageEncoder(Iterable<Class<? extends T>> messageTypes,
MessageEncoderFactory<? super T> factory) |
ProtocolDecoder |
getDecoder(IoSession session)
Returns a new (or reusable) instance of
ProtocolDecoder which
decodes binary or protocol-specific data into message objects. |
ProtocolEncoder |
getEncoder(IoSession session)
Returns a new (or reusable) instance of
ProtocolEncoder which
encodes message objects into binary or protocol-specific data. |
public ProtocolEncoder getEncoder(IoSession session) throws Exception
ProtocolEncoder which
encodes message objects into binary or protocol-specific data.getEncoder in interface ProtocolCodecFactoryExceptionpublic ProtocolDecoder getDecoder(IoSession session) throws Exception
ProtocolDecoder which
decodes binary or protocol-specific data into message objects.getDecoder in interface ProtocolCodecFactoryExceptionpublic void addMessageEncoder(Class<?> messageType, Class<? extends MessageEncoder> encoderClass)
public <T> void addMessageEncoder(Class<T> messageType, MessageEncoder<? super T> encoder)
public <T> void addMessageEncoder(Class<T> messageType, MessageEncoderFactory<? super T> factory)
public void addMessageEncoder(Iterable<Class<?>> messageTypes, Class<? extends MessageEncoder> encoderClass)
public <T> void addMessageEncoder(Iterable<Class<? extends T>> messageTypes, MessageEncoder<? super T> encoder)
public <T> void addMessageEncoder(Iterable<Class<? extends T>> messageTypes, MessageEncoderFactory<? super T> factory)
public void addMessageDecoder(Class<? extends MessageDecoder> decoderClass)
public void addMessageDecoder(MessageDecoder decoder)
public void addMessageDecoder(MessageDecoderFactory factory)