Class ThroughputInterceptor
java.lang.Object
org.apache.catalina.tribes.group.ChannelInterceptorBase
org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor
- All Implemented Interfaces:
ChannelInterceptor
,ThroughputInterceptorMBean
,Heartbeat
,MembershipListener
public class ThroughputInterceptor
extends ChannelInterceptorBase
implements ThroughputInterceptorMBean
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.catalina.tribes.ChannelInterceptor
ChannelInterceptor.InterceptorEvent
-
Field Summary
Fields inherited from class org.apache.catalina.tribes.group.ChannelInterceptorBase
optionFlag
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
double
double
double
getMbRx()
double
getMbTx()
long
double
long
void
ThemessageReceived
is invoked when a message is received.void
report
(double timeTx) void
sendMessage
(Member[] destination, ChannelMessage msg, InterceptorPayload payload) ThesendMessage
method is called when a message is being sent to one more destinations.void
setInterval
(int interval) Methods inherited from class org.apache.catalina.tribes.group.ChannelInterceptorBase
fireInterceptorEvent, getChannel, getLocalMember, getMember, getMembers, getNext, getOptionFlag, getPrevious, hasMembers, heartbeat, memberAdded, memberDisappeared, okToProcess, setChannel, setNext, setOptionFlag, setPrevious, start, stop
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.catalina.tribes.group.interceptors.ThroughputInterceptorMBean
getOptionFlag
-
Field Details
-
sm
-
-
Constructor Details
-
ThroughputInterceptor
public ThroughputInterceptor()
-
-
Method Details
-
sendMessage
public void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException Description copied from interface:ChannelInterceptor
ThesendMessage
method is called when a message is being sent to one more destinations. The interceptor can modify any of the parameters and then pass on the message down the stack by invokinggetNext().sendMessage(destination,msg,payload)
.Alternatively the interceptor can stop the message from being sent by not invoking
getNext().sendMessage(destination,msg,payload)
.If the message is to be sent asynchronous the application can be notified of completion and errors by passing in an error handler attached to a payload object.
The ChannelMessage.getAddress contains Channel.getLocalMember, and can be overwritten to simulate a message sent from another node.
- Specified by:
sendMessage
in interfaceChannelInterceptor
- Overrides:
sendMessage
in classChannelInterceptorBase
- Parameters:
destination
- Member[] - the destination for this messagemsg
- ChannelMessage - the message to be sentpayload
- InterceptorPayload - the payload, carrying an error handler and future useful data, can be null- Throws:
ChannelException
- if a serialization error happens.- See Also:
-
messageReceived
Description copied from interface:ChannelInterceptor
ThemessageReceived
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 interfaceChannelInterceptor
- Overrides:
messageReceived
in classChannelInterceptorBase
- Parameters:
msg
- ChannelMessage
-
report
public void report(double timeTx) - Specified by:
report
in interfaceThroughputInterceptorMBean
-
setInterval
public void setInterval(int interval) - Specified by:
setInterval
in interfaceThroughputInterceptorMBean
-
getInterval
public int getInterval()- Specified by:
getInterval
in interfaceThroughputInterceptorMBean
-
getLastCnt
public double getLastCnt()- Specified by:
getLastCnt
in interfaceThroughputInterceptorMBean
-
getMbAppTx
public double getMbAppTx()- Specified by:
getMbAppTx
in interfaceThroughputInterceptorMBean
-
getMbRx
public double getMbRx()- Specified by:
getMbRx
in interfaceThroughputInterceptorMBean
-
getMbTx
public double getMbTx()- Specified by:
getMbTx
in interfaceThroughputInterceptorMBean
-
getMsgRxCnt
- Specified by:
getMsgRxCnt
in interfaceThroughputInterceptorMBean
-
getMsgTxCnt
- Specified by:
getMsgTxCnt
in interfaceThroughputInterceptorMBean
-
getMsgTxErr
- Specified by:
getMsgTxErr
in interfaceThroughputInterceptorMBean
-
getRxStart
public long getRxStart()- Specified by:
getRxStart
in interfaceThroughputInterceptorMBean
-
getTimeTx
public double getTimeTx()- Specified by:
getTimeTx
in interfaceThroughputInterceptorMBean
-
getTxStart
public long getTxStart()- Specified by:
getTxStart
in interfaceThroughputInterceptorMBean
-