# Package org.apache.mina.filter.codec

Filter implementations that helps you to implement complex protocols via 'codec' concept.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  ProtocolCodecFactory | Provides `ProtocolEncoder` and `ProtocolDecoder` which translates binary or protocol specific data into message object and vice versa.
  ProtocolDecoder | Decodes binary or protocol-specific data into higher-level message objects.
  ProtocolDecoderOutput | Callback for `ProtocolDecoder` to generate decoded messages.
  ProtocolEncoder | Encodes higher-level message objects into binary or protocol-specific data.
  ProtocolEncoderOutput | Callback for `ProtocolEncoder` to generate encoded messages such as `IoBuffer`s.

- Class Summary
  Class | Description
  --- | ---
  AbstractProtocolDecoderOutput | A `ProtocolDecoderOutput` based on queue.
  AbstractProtocolEncoderOutput | A `ProtocolEncoderOutput` based on queue.
  CumulativeProtocolDecoder | A `ProtocolDecoder` that cumulates the content of received buffers to a cumulative buffer to help users implement decoders.
  ProtocolCodecFilter | An `IoFilter` which translates binary or protocol specific data into message objects and vice versa using `ProtocolCodecFactory`, `ProtocolEncoder`, or `ProtocolDecoder`.
  ProtocolCodecSession | A virtual `IoSession` that provides `ProtocolEncoderOutput` and `ProtocolDecoderOutput`.
  ProtocolDecoderAdapter | An abstract `ProtocolDecoder` implementation for those who don't need `ProtocolDecoder.finishDecode(IoSession, ProtocolDecoderOutput)` nor `ProtocolDecoder.dispose(IoSession)` method.
  ProtocolEncoderAdapter | An abstract `ProtocolEncoder` implementation for those who don't have any resources to dispose.
  SynchronizedProtocolDecoder | A `ProtocolDecoder` implementation which decorates an existing decoder to be thread-safe.
  SynchronizedProtocolEncoder | A `ProtocolEncoder` implementation which decorates an existing encoder to be thread-safe.

- Exception Summary
  Exception | Description
  --- | ---
  ProtocolCodecException | An exception that is thrown when `ProtocolEncoder` or `ProtocolDecoder` cannot understand or failed to validate data to process.
  ProtocolDecoderException | An exception that is thrown when `ProtocolDecoder` cannot understand or failed to validate the specified `IoBuffer` content.
  ProtocolEncoderException | An exception that is thrown when `ProtocolEncoder` cannot understand or failed to validate the specified message object.
  RecoverableProtocolDecoderException | A special exception that tells the `ProtocolDecoder` can keep decoding even after this exception is thrown.

## Package org.apache.mina.filter.codec Description

Filter implementations that helps you to implement complex protocols via 'codec' concept.

Copyright © 2004-2012 Apache MINA Project. All Rights Reserved.