Class TwoPhaseCommitInterceptor
- java.lang.Object
- 
- org.apache.catalina.tribes.group.ChannelInterceptorBase
- 
- org.apache.catalina.tribes.group.interceptors.TwoPhaseCommitInterceptor
 
 
- 
- All Implemented Interfaces:
- ChannelInterceptor,- Heartbeat,- MembershipListener
 
 public class TwoPhaseCommitInterceptor extends ChannelInterceptorBase 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classTwoPhaseCommitInterceptor.MapEntry- 
Nested classes/interfaces inherited from interface org.apache.catalina.tribes.ChannelInterceptorChannelInterceptor.InterceptorEvent
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected booleandeepcloneprotected longexpireprotected java.util.HashMap<UniqueId,TwoPhaseCommitInterceptor.MapEntry>messagesprotected static StringManagersm- 
Fields inherited from class org.apache.catalina.tribes.group.ChannelInterceptorBaseoptionFlag
 
- 
 - 
Constructor SummaryConstructors Constructor Description TwoPhaseCommitInterceptor()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description booleangetDeepclone()longgetExpire()voidheartbeat()Theheartbeat()method gets invoked periodically to allow interceptors to clean up resources, time out object and perform actions that are unrelated to sending/receiving data.voidmessageReceived(ChannelMessage msg)themessageReceivedis invoked when a message is received.voidsendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload)ThesendMessagemethod is called when a message is being sent to one more destinations.voidsetDeepclone(boolean deepclone)voidsetExpire(long expire)- 
Methods inherited from class org.apache.catalina.tribes.group.ChannelInterceptorBasefireInterceptorEvent, getChannel, getLocalMember, getMember, getMembers, getNext, getOptionFlag, getPrevious, hasMembers, memberAdded, memberDisappeared, okToProcess, setChannel, setNext, setOptionFlag, setPrevious, start, stop
 
- 
 
- 
- 
- 
Field Detail- 
smprotected static final StringManager sm 
 - 
messagesprotected final java.util.HashMap<UniqueId,TwoPhaseCommitInterceptor.MapEntry> messages 
 - 
expireprotected long expire 
 - 
deepcloneprotected boolean deepclone 
 
- 
 - 
Method Detail- 
sendMessagepublic void sendMessage(Member[] destination, ChannelMessage msg, InterceptorPayload payload) throws ChannelException Description copied from interface:ChannelInterceptorThesendMessagemethod 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 invokinggetNext().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:
- sendMessagein interface- ChannelInterceptor
- Overrides:
- sendMessagein class- ChannelInterceptorBase
- Parameters:
- destination- Member[] - the destination for this message
- msg- ChannelMessage - the message to be sent
- payload- InterceptorPayload - the payload, carrying an error handler and future useful data, can be null
- Throws:
- ChannelException- if a serialization error happens.
- See Also:
- ErrorHandler,- InterceptorPayload
 
 - 
messageReceivedpublic void messageReceived(ChannelMessage msg) Description copied from interface:ChannelInterceptorthemessageReceivedis invoked when a message is received.ChannelMessage.getAddress()is the sender, or the reply-to address if it has been overwritten.- Specified by:
- messageReceivedin interface- ChannelInterceptor
- Overrides:
- messageReceivedin class- ChannelInterceptorBase
- Parameters:
- msg- ChannelMessage
 
 - 
getDeepclonepublic boolean getDeepclone() 
 - 
getExpirepublic long getExpire() 
 - 
setDeepclonepublic void setDeepclone(boolean deepclone) 
 - 
setExpirepublic void setExpire(long expire) 
 - 
heartbeatpublic void heartbeat() Description copied from interface:ChannelInterceptorTheheartbeat()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:
- heartbeatin interface- ChannelInterceptor
- Specified by:
- heartbeatin interface- Heartbeat
- Overrides:
- heartbeatin class- ChannelInterceptorBase
 
 
- 
 
-