org.apache.catalina.cluster.tcp
Class AsyncSocketSender

java.lang.Object
  extended byorg.apache.catalina.cluster.tcp.DataSender
      extended byorg.apache.catalina.cluster.tcp.AsyncSocketSender
All Implemented Interfaces:
IDataSender

public class AsyncSocketSender
extends DataSender

Send cluster messages from a Message queue with only one socket. Ack and keep Alive Handling is supported.

Version:
$Revision: 1.11 $ $Date: 2005/03/14 21:24:30 $
Author:
Filip Hanik, Peter Rossbach

Field Summary
 
Fields inherited from class org.apache.catalina.cluster.tcp.DataSender
connectCounter, dataResendCounter, disconnectCounter, doProcessingStats, maxProcessingTime, minProcessingTime, missingAckCounter, nrOfRequests, processingTime, sm, totalBytes
 
Constructor Summary
AsyncSocketSender(java.net.InetAddress host, int port)
          start background thread to push incomming cluster messages to replication node
 
Method Summary
protected  void checkThread()
          Start Queue thread as daemon
 void connect()
           
 void disconnect()
          Disconnect socket ad stop queue thread
 java.lang.String getInfo()
          Return descriptive information about this implementation and the corresponding version number, in the format <description>/<version>.
 long getInQueueCounter()
           
 long getOutQueueCounter()
           
 long getQueuedNrOfBytes()
           
 int getQueueSize()
           
protected  void reduceQueuedCounter(int size)
           
 void resetStatistics()
           
 void sendMessage(java.lang.String messageid, byte[] data)
           
protected  void stopThread()
          stop queue worker thread
 java.lang.String toString()
          Name of this SockerSender
 
Methods inherited from class org.apache.catalina.cluster.tcp.DataSender
addProcessingStats, addStats, checkIfCloseSocket, closeSocket, getAckTimeout, getAddress, getAvgProcessingTime, getConnectCounter, getDataResendCounter, getDisconnectCounter, getKeepAliveConnectTime, getKeepAliveCount, getKeepAliveMaxRequestCount, getKeepAliveTimeout, getMaxProcessingTime, getMinProcessingTime, getMissingAckCounter, getNrOfRequests, getPort, getProcessingTime, getSocketCloseCounter, getSocketOpenCounter, getSuspect, getTotalBytes, isConnected, isDoProcessingStats, isSuspect, isWaitForAck, openSocket, pushMessage, setAckTimeout, setDoProcessingStats, setKeepAliveMaxRequestCount, setKeepAliveTimeout, setSocketConnected, setSuspect, setWaitForAck, waitForAck
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AsyncSocketSender

public AsyncSocketSender(java.net.InetAddress host,
                         int port)
start background thread to push incomming cluster messages to replication node

Parameters:
host - replication node tcp address
port - replication node tcp port
Method Detail

getInfo

public java.lang.String getInfo()
Return descriptive information about this implementation and the corresponding version number, in the format <description>/<version>.

Overrides:
getInfo in class DataSender

getInQueueCounter

public long getInQueueCounter()
Returns:
Returns the inQueueCounter.

getOutQueueCounter

public long getOutQueueCounter()
Returns:
Returns the outQueueCounter.

getQueueSize

public int getQueueSize()
Returns:
Returns the queueSize.

getQueuedNrOfBytes

public long getQueuedNrOfBytes()
Returns:
Returns the queuedNrOfBytes.

connect

public void connect()
             throws java.io.IOException
Specified by:
connect in interface IDataSender
Overrides:
connect in class DataSender
Throws:
java.io.IOException

disconnect

public void disconnect()
Disconnect socket ad stop queue thread

Specified by:
disconnect in interface IDataSender
Overrides:
disconnect in class DataSender
See Also:
IDataSender.disconnect()

sendMessage

public void sendMessage(java.lang.String messageid,
                        byte[] data)
                 throws java.io.IOException
Specified by:
sendMessage in interface IDataSender
Overrides:
sendMessage in class DataSender
Throws:
java.io.IOException

resetStatistics

public void resetStatistics()
Overrides:
resetStatistics in class DataSender

toString

public java.lang.String toString()
Name of this SockerSender

Overrides:
toString in class DataSender

checkThread

protected void checkThread()
Start Queue thread as daemon


stopThread

protected void stopThread()
stop queue worker thread


reduceQueuedCounter

protected void reduceQueuedCounter(int size)


Copyright © 2000-2005 Apache Software Foundation. All Rights Reserved.