de.root1.simon.codec.base
Class AbstractMessageDecoder

java.lang.Object
  extended by de.root1.simon.codec.base.AbstractMessageDecoder
All Implemented Interfaces:
org.apache.mina.filter.codec.demux.MessageDecoder
Direct Known Subclasses:
MsgCloseRawChannelDecoder, MsgCloseRawChannelReturnDecoder, MsgEqualsDecoder, MsgEqualsReturnDecoder, MsgErrorDecoder, MsgHashCodeDecoder, MsgHashCodeReturnDecoder, MsgInterfaceLookupDecoder, MsgInterfaceLookupReturnDecoder, MsgInvokeDecoder, MsgInvokeReturnDecoder, MsgNameLookupDecoder, MsgNameLookupReturnDecoder, MsgOpenRawChannelDecoder, MsgOpenRawChannelReturnDecoder, MsgPingDecoder, MsgPongDecoder, MsgRawChannelDataDecoder, MsgRawChannelDataReturnDecoder, MsgToStringDecoder, MsgToStringReturnDecoder

public abstract class AbstractMessageDecoder
extends java.lang.Object
implements org.apache.mina.filter.codec.demux.MessageDecoder

A MessageDecoder that decodes message header and forwards the decoding of body to a subclass.

Author:
achr

Field Summary
 
Fields inherited from interface org.apache.mina.filter.codec.demux.MessageDecoder
NEED_DATA, NOT_OK, OK
 
Constructor Summary
protected AbstractMessageDecoder(byte msgType)
          Creates a new message decoder
 
Method Summary
 org.apache.mina.filter.codec.demux.MessageDecoderResult decodable(org.apache.mina.core.session.IoSession session, org.apache.mina.core.buffer.IoBuffer in)
           
 org.apache.mina.filter.codec.demux.MessageDecoderResult decode(org.apache.mina.core.session.IoSession session, org.apache.mina.core.buffer.IoBuffer in, org.apache.mina.filter.codec.ProtocolDecoderOutput out)
           
protected abstract  AbstractMessage decodeBody(org.apache.mina.core.session.IoSession session, org.apache.mina.core.buffer.IoBuffer in)
           
protected  int getBodySize()
           
protected  int getCurrentSequence()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.mina.filter.codec.demux.MessageDecoder
finishDecode
 

Constructor Detail

AbstractMessageDecoder

protected AbstractMessageDecoder(byte msgType)
Creates a new message decoder

Parameters:
msgType - specifies a unique ID for the type of message
Method Detail

decodable

public org.apache.mina.filter.codec.demux.MessageDecoderResult decodable(org.apache.mina.core.session.IoSession session,
                                                                         org.apache.mina.core.buffer.IoBuffer in)
Specified by:
decodable in interface org.apache.mina.filter.codec.demux.MessageDecoder

decode

public org.apache.mina.filter.codec.demux.MessageDecoderResult decode(org.apache.mina.core.session.IoSession session,
                                                                      org.apache.mina.core.buffer.IoBuffer in,
                                                                      org.apache.mina.filter.codec.ProtocolDecoderOutput out)
                                                               throws java.lang.Exception
Specified by:
decode in interface org.apache.mina.filter.codec.demux.MessageDecoder
Throws:
java.lang.Exception

decodeBody

protected abstract AbstractMessage decodeBody(org.apache.mina.core.session.IoSession session,
                                              org.apache.mina.core.buffer.IoBuffer in)
Returns:
null if the whole body is not read yet

getCurrentSequence

protected int getCurrentSequence()

getBodySize

protected int getBodySize()


Copyright © 2011. All Rights Reserved.