anon.client
Class AbstractDataChannel

java.lang.Object
  extended by anon.client.AbstractChannel
      extended by anon.client.AbstractDataChannel
Direct Known Subclasses:
SimulatedLimitedDataChannel, UnlimitedDataChannel

public abstract class AbstractDataChannel
extends AbstractChannel

Author:
Stefan Lieske

Field Summary
private static short FLAG_CHANNEL_DUMMY
           
private  InternalChannelMessageQueue m_channelMessageQueue
           
private  MixCipherChain m_mixCipherChain
           
private  AbstractDataChain m_parentDataChain
           
 
Fields inherited from class anon.client.AbstractChannel
m_parentMultiplexer
 
Constructor Summary
AbstractDataChannel(int a_channelId, Multiplexer a_parentMultiplexer, AbstractDataChain a_parentDataChain, MixCipherChain a_mixCipherChain)
           
 
Method Summary
protected  void createAndSendMixPacket(DataChainSendOrderStructure a_order, short a_channelFlags)
           
 InternalChannelMessageQueue getChannelMessageQueue()
           
 int getNextPacketRecommandedOutputBlocksize()
           
protected abstract  void handleReceivedPacket(MixPacket a_mixPacket)
           
abstract  void organizeChannelClose()
           
 void processReceivedPacket(MixPacket a_mixPacket)
           
abstract  boolean processSendOrder(DataChainSendOrderStructure a_order)
           
 
Methods inherited from class anon.client.AbstractChannel
createEmptyMixPacket, deleteChannel, isClosed, multiplexerClosed, sendPacket
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FLAG_CHANNEL_DUMMY

private static final short FLAG_CHANNEL_DUMMY
See Also:
Constant Field Values

m_mixCipherChain

private MixCipherChain m_mixCipherChain

m_parentDataChain

private AbstractDataChain m_parentDataChain

m_channelMessageQueue

private InternalChannelMessageQueue m_channelMessageQueue
Constructor Detail

AbstractDataChannel

public AbstractDataChannel(int a_channelId,
                           Multiplexer a_parentMultiplexer,
                           AbstractDataChain a_parentDataChain,
                           MixCipherChain a_mixCipherChain)
Method Detail

getChannelMessageQueue

public InternalChannelMessageQueue getChannelMessageQueue()

processReceivedPacket

public void processReceivedPacket(MixPacket a_mixPacket)
Specified by:
processReceivedPacket in class AbstractChannel

getNextPacketRecommandedOutputBlocksize

public int getNextPacketRecommandedOutputBlocksize()

createAndSendMixPacket

protected void createAndSendMixPacket(DataChainSendOrderStructure a_order,
                                      short a_channelFlags)

processSendOrder

public abstract boolean processSendOrder(DataChainSendOrderStructure a_order)

organizeChannelClose

public abstract void organizeChannelClose()
                                   throws java.io.IOException
Throws:
java.io.IOException

handleReceivedPacket

protected abstract void handleReceivedPacket(MixPacket a_mixPacket)