org.apache.mina.examples.sumup.codec
Class AbstractMessageDecoder

java.lang.Object
  extended byorg.apache.mina.examples.sumup.codec.AbstractMessageDecoder
All Implemented Interfaces:
org.apache.mina.protocol.codec.MessageDecoder
Direct Known Subclasses:
AddMessageDecoder, ResultMessageDecoder

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

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

Version:
$Rev: 209237 $, $Date: 2005-07-05 09:44:16 +0200 (Tue, 05 Jul 2005) $
Author:
The Apache Directory Project

Field Summary
 
Fields inherited from interface org.apache.mina.protocol.codec.MessageDecoder
NEED_DATA, NOT_OK, OK
 
Constructor Summary
protected AbstractMessageDecoder(int type)
           
 
Method Summary
 org.apache.mina.protocol.codec.MessageDecoderResult decodable(org.apache.mina.protocol.ProtocolSession session, org.apache.mina.common.ByteBuffer in)
           
 org.apache.mina.protocol.codec.MessageDecoderResult decode(org.apache.mina.protocol.ProtocolSession session, org.apache.mina.common.ByteBuffer in, org.apache.mina.protocol.ProtocolDecoderOutput out)
           
protected abstract  AbstractMessage decodeBody(org.apache.mina.protocol.ProtocolSession session, org.apache.mina.common.ByteBuffer in)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractMessageDecoder

protected AbstractMessageDecoder(int type)
Method Detail

decodable

public org.apache.mina.protocol.codec.MessageDecoderResult decodable(org.apache.mina.protocol.ProtocolSession session,
                                                                     org.apache.mina.common.ByteBuffer in)
Specified by:
decodable in interface org.apache.mina.protocol.codec.MessageDecoder

decode

public org.apache.mina.protocol.codec.MessageDecoderResult decode(org.apache.mina.protocol.ProtocolSession session,
                                                                  org.apache.mina.common.ByteBuffer in,
                                                                  org.apache.mina.protocol.ProtocolDecoderOutput out)
                                                           throws org.apache.mina.protocol.ProtocolViolationException
Specified by:
decode in interface org.apache.mina.protocol.codec.MessageDecoder
Throws:
org.apache.mina.protocol.ProtocolViolationException

decodeBody

protected abstract AbstractMessage decodeBody(org.apache.mina.protocol.ProtocolSession session,
                                              org.apache.mina.common.ByteBuffer in)
Returns:
null if the whole body is not read yet