anon.client
Class TestControlChannel

java.lang.Object
  extended by anon.client.AbstractChannel
      extended by anon.client.AbstractControlChannel
          extended by anon.client.StreamedControlChannel
              extended by anon.client.XmlControlChannel
                  extended by anon.client.TestControlChannel
All Implemented Interfaces:
java.lang.Runnable

public class TestControlChannel
extends XmlControlChannel
implements java.lang.Runnable

This is the implementation for control channel test which uses the test control channel for sending a dummy XML message and receiving the echo.


Field Summary
static int DT_DISABLE
           
static int DT_MAX_INTERVAL_MS
           
static int DT_MIN_INTERVAL_MS
           
private  boolean m_bRun
          Stores whether the internal thread shall work (true) or come to the end (false).
private  java.lang.Object m_internalSynchronization
           
private  long m_interval
          Stores the dummy traffic interval in milliseconds.
private  java.lang.Thread m_threadRunLoop
          Stores the instance of the internal dummy traffic thread.
 
Fields inherited from class anon.client.AbstractChannel
m_parentMultiplexer
 
Constructor Summary
TestControlChannel(Multiplexer a_multiplexer, IServiceContainer a_serviceContainer)
          Creates a new DummyTrafficControlChannel instance.
 
Method Summary
protected  void processXmlMessage(org.w3c.dom.Document doc)
          This method is called by the multiplexer, if a packet is received on the test control channel.
 void run()
          This is the implementation for the dummy traffic thread.
 void setMessageInterval(int a_interval)
          Changes the dummy traffic interval.
private  void start()
          Starts the internal dummy traffic thread, if it is not already running.
 void stop()
          Holds the internal dummy traffic thread.
 
Methods inherited from class anon.client.XmlControlChannel
processMessage, sendXmlMessage
 
Methods inherited from class anon.client.StreamedControlChannel
processPacketData, sendByteMessage
 
Methods inherited from class anon.client.AbstractControlChannel
getServiceContainer, processReceivedPacket, sendRawMessage
 
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

DT_MIN_INTERVAL_MS

public static final int DT_MIN_INTERVAL_MS
See Also:
Constant Field Values

DT_MAX_INTERVAL_MS

public static final int DT_MAX_INTERVAL_MS
See Also:
Constant Field Values

DT_DISABLE

public static final int DT_DISABLE
See Also:
Constant Field Values

m_bRun

private volatile boolean m_bRun
Stores whether the internal thread shall work (true) or come to the end (false).


m_threadRunLoop

private java.lang.Thread m_threadRunLoop
Stores the instance of the internal dummy traffic thread.


m_interval

private long m_interval
Stores the dummy traffic interval in milliseconds. After that interval of inactivity (no traffic) on the connection, a dummy packet is sent.


m_internalSynchronization

private java.lang.Object m_internalSynchronization
Constructor Detail

TestControlChannel

public TestControlChannel(Multiplexer a_multiplexer,
                          IServiceContainer a_serviceContainer)
Creates a new DummyTrafficControlChannel instance. The dummy traffic interval is set to -1 (dummy traffic disabled) and the internal thread isn't started. a_multiplexer The multiplexer the new DummyTrafficControlChannel instance belongs to.

Method Detail

run

public void run()
This is the implementation for the dummy traffic thread.

Specified by:
run in interface java.lang.Runnable

stop

public void stop()
Holds the internal dummy traffic thread. This method blocks until the internal thread has come to the end.


setMessageInterval

public void setMessageInterval(int a_interval)
Changes the dummy traffic interval.

Parameters:
a_interval - The new dummy traffic interval in milliseconds or -1, if dummy traffic shall be disabled.

processXmlMessage

protected void processXmlMessage(org.w3c.dom.Document doc)
This method is called by the multiplexer, if a packet is received on the test control channel. All received packets are simply ignored.

Specified by:
processXmlMessage in class XmlControlChannel
Parameters:
a_packet - The data within the received packet (should be random bytes).

start

private void start()
Starts the internal dummy traffic thread, if it is not already running.