org.apache.catalina.tribes.group.interceptors
Class TcpPingInterceptor
java.lang.Object
org.apache.catalina.tribes.group.ChannelInterceptorBase
org.apache.catalina.tribes.group.interceptors.TcpPingInterceptor
- All Implemented Interfaces:
- ChannelInterceptor, Heartbeat, MembershipListener
public class TcpPingInterceptor
- extends ChannelInterceptorBase
Sends a ping to all members.
Configure this interceptor with the TcpFailureDetector below it,
and the TcpFailureDetector will act as the membership guide.
- Version:
- 1.0
- Author:
- Filip Hanik
Methods inherited from class org.apache.catalina.tribes.group.ChannelInterceptorBase |
accept, fireInterceptorEvent, getLocalMember, getMember, getMembers, getNext, getOptionFlag, getPrevious, hasMembers, memberAdded, memberDisappeared, okToProcess, sendMessage, setNext, setOptionFlag, setPrevious |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TCP_PING_DATA
protected static byte[] TCP_PING_DATA
interval
protected long interval
useThread
protected boolean useThread
staticOnly
protected boolean staticOnly
running
protected volatile boolean running
thread
protected TcpPingInterceptor.PingThread thread
cnt
protected static AtomicInteger cnt
TcpPingInterceptor
public TcpPingInterceptor()
start
public void start(int svc)
throws ChannelException
- Description copied from class:
ChannelInterceptorBase
- Starts up the channel. This can be called multiple times for individual services to start
The svc parameter can be the logical or value of any constants
- Specified by:
start
in interface ChannelInterceptor
- Overrides:
start
in class ChannelInterceptorBase
- Parameters:
svc
- int value of
DEFAULT - will start all services
MBR_RX_SEQ - starts the membership receiver
MBR_TX_SEQ - starts the membership broadcaster
SND_TX_SEQ - starts the replication transmitter
SND_RX_SEQ - starts the replication receiver
- Throws:
ChannelException
- if a startup error occurs or the service is already started.- See Also:
Channel
stop
public void stop(int svc)
throws ChannelException
- Description copied from class:
ChannelInterceptorBase
- Shuts down the channel. This can be called multiple times for individual services to shutdown
The svc parameter can be the logical or value of any constants
- Specified by:
stop
in interface ChannelInterceptor
- Overrides:
stop
in class ChannelInterceptorBase
- Parameters:
svc
- int value of
DEFAULT - will shutdown all services
MBR_RX_SEQ - stops the membership receiver
MBR_TX_SEQ - stops the membership broadcaster
SND_TX_SEQ - stops the replication transmitter
SND_RX_SEQ - stops the replication receiver
- Throws:
ChannelException
- if a startup error occurs or the service is already started.- See Also:
Channel
heartbeat
public void heartbeat()
- Description copied from interface:
ChannelInterceptor
- The
heartbeat()
method gets invoked periodically
to allow interceptors to clean up resources, time out object and
perform actions that are unrelated to sending/receiving data.
- Specified by:
heartbeat
in interface ChannelInterceptor
- Specified by:
heartbeat
in interface Heartbeat
- Overrides:
heartbeat
in class ChannelInterceptorBase
getInterval
public long getInterval()
setInterval
public void setInterval(long interval)
setUseThread
public void setUseThread(boolean useThread)
setStaticOnly
public void setStaticOnly(boolean staticOnly)
getUseThread
public boolean getUseThread()
getStaticOnly
public boolean getStaticOnly()
sendPing
protected void sendPing()
sendPingMessage
protected void sendPingMessage(Member[] members)
messageReceived
public void messageReceived(ChannelMessage msg)
- Description copied from interface:
ChannelInterceptor
- the
messageReceived
is invoked when a message is received.
ChannelMessage.getAddress()
is the sender, or the reply-to address
if it has been overwritten.
- Specified by:
messageReceived
in interface ChannelInterceptor
- Overrides:
messageReceived
in class ChannelInterceptorBase
- Parameters:
msg
- ChannelMessage
Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.