org.apache.mina.filter.codec.serialization

## Class ObjectSerializationDecoder

- java.lang.Object
- - org.apache.mina.filter.codec.ProtocolDecoderAdapter
  - - org.apache.mina.filter.codec.CumulativeProtocolDecoder
    - - org.apache.mina.filter.codec.serialization.ObjectSerializationDecoder

- All Implemented Interfaces:
    ProtocolDecoder

      public class ObjectSerializationDecoder
      extends CumulativeProtocolDecoder

  A `ProtocolDecoder` which deserializes `Serializable` Java objects using `IoBuffer.getObject(ClassLoader)`.
  Author:
    Apache MINA Project

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ObjectSerializationDecoder()` Creates a new instance with the `ClassLoader` of the current thread.
    `ObjectSerializationDecoder(ClassLoader classLoader)` Creates a new instance with the specified `ClassLoader`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | `doDecode(IoSession session, IoBuffer in, ProtocolDecoderOutput out)` Implement this method to consume the specified cumulative buffer and decode its content into message(s).
    `int` | `getMaxObjectSize()` Returns the allowed maximum size of the object to be decoded.
    `void` | `setMaxObjectSize(int maxObjectSize)` Sets the allowed maximum size of the object to be decoded.

    - ### Methods inherited from class org.apache.mina.filter.codec.CumulativeProtocolDecoder

      `decode, dispose`

    - ### Methods inherited from class org.apache.mina.filter.codec.ProtocolDecoderAdapter

      `finishDecode`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ObjectSerializationDecoder

          public ObjectSerializationDecoder()

      Creates a new instance with the `ClassLoader` of the current thread.

    - #### ObjectSerializationDecoder

          public ObjectSerializationDecoder(ClassLoader classLoader)

      Creates a new instance with the specified `ClassLoader`.

  - ### Method Detail

    - #### getMaxObjectSize

          public int getMaxObjectSize()

      Returns the allowed maximum size of the object to be decoded. If the size of the object to be decoded exceeds this value, this decoder will throw a `BufferDataException`. The default value is `1048576` (1MB).

    - #### setMaxObjectSize

          public void setMaxObjectSize(int maxObjectSize)

      Sets the allowed maximum size of the object to be decoded. If the size of the object to be decoded exceeds this value, this decoder will throw a `BufferDataException`. The default value is `1048576` (1MB).

    - #### doDecode

          protected boolean doDecode(IoSession session,
                         IoBuffer in,
                         ProtocolDecoderOutput out)
                              throws Exception

      Description copied from class: `CumulativeProtocolDecoder`
      Implement this method to consume the specified cumulative buffer and decode its content into message(s).
      Specified by:
        `doDecode` in class `CumulativeProtocolDecoder`
        `in` - the cumulative buffer
      Returns:
        `true` if and only if there's more to decode in the buffer and you want to have `doDecode` method invoked again. Return `false` if remaining data is not enough to decode, then this method will be invoked again when more data is cumulated.
      Throws:
        `Exception` - if cannot decode `in`.

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