Package org.apache.mina.filter.codec
Interface ProtocolDecoder
- All Known Implementing Classes:
CumulativeProtocolDecoder
,ObjectSerializationDecoder
,ProtocolDecoderAdapter
,SynchronizedProtocolDecoder
,TextLineDecoder
public interface ProtocolDecoder
Decodes binary or protocol-specific data into higher-level message objects.
MINA invokes
decode(IoSession, ByteBuffer, ProtocolDecoderOutput)
method with read data, and then the decoder implementation puts decoded
messages into ProtocolDecoderOutput
by calling
ProtocolDecoderOutput.write(Object)
.
Please refer to
TextLineDecoder
example.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
decode
(IoSession session, ByteBuffer in, ProtocolDecoderOutput out) Decodes binary or protocol-specific content into higher-level message objects.void
Releases all resources related with this decoder.void
finishDecode
(IoSession session, ProtocolDecoderOutput out) Invoked when the specified session is closed.
-
Method Details
-
decode
Decodes binary or protocol-specific content into higher-level message objects. MINA invokesdecode(IoSession, ByteBuffer, ProtocolDecoderOutput)
method with read data, and then the decoder implementation puts decoded messages intoProtocolDecoderOutput
.- Throws:
Exception
- if the read data violated protocol specification
-
finishDecode
Invoked when the specified session is closed. This method is useful when you deal with the protocol which doesn't specify the length of a message such as HTTP response without content-length header. Implement this method to process the remaining data thatdecode(IoSession, ByteBuffer, ProtocolDecoderOutput)
method didn't process completely.- Throws:
Exception
- if the read data violated protocol specification
-
dispose
Releases all resources related with this decoder.- Throws:
Exception
- if failed to dispose all resources
-