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
A
ProtocolDecoder which deserializes Serializable Java
objects using IoBuffer.getObject(ClassLoader).-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new instance with theClassLoaderof the current thread.ObjectSerializationDecoder(ClassLoader classLoader) Creates a new instance with the specifiedClassLoader. -
Method Summary
Modifier and TypeMethodDescriptionprotected booleandoDecode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) Implement this method to consume the specified cumulative buffer and decode its content into message(s).intvoidsetMaxObjectSize(int maxObjectSize) Sets the allowed maximum size of the object to be decoded.Methods inherited from class CumulativeProtocolDecoder
decode, dispose, setTransportMetadataFragmentationMethods inherited from class ProtocolDecoderAdapter
finishDecode
-
Field Details
-
classLoader
-
maxObjectSize
private int maxObjectSize
-
-
Constructor Details
-
ObjectSerializationDecoder
public ObjectSerializationDecoder()Creates a new instance with theClassLoaderof the current thread. -
ObjectSerializationDecoder
Creates a new instance with the specifiedClassLoader.- Parameters:
classLoader- The class loader to use
-
-
Method Details
-
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 is1048576(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 aBufferDataException. The default value is1048576(1MB).- Parameters:
maxObjectSize- The maximum size for an object to be decoded
-
doDecode
protected boolean doDecode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) throws Exception Implement this method to consume the specified cumulative buffer and decode its content into message(s).- Specified by:
doDecodein classCumulativeProtocolDecoder- Parameters:
session- The current Sessionin- the cumulative bufferout- TheProtocolDecoderOutputthat will receive the decoded message- Returns:
trueif and only if there's more to decode in the buffer and you want to havedoDecodemethod invoked again. Returnfalseif remaining data is not enough to decode, then this method will be invoked again when more data is cumulated.- Throws:
Exception- if cannot decodein.
-