Clebert Suconic,
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
SessionAspect
public SessionAspect()
handleClosing
public java.lang.Object handleClosing(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleClose
public java.lang.Object handleClose(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handlePreDeliver
public java.lang.Object handlePreDeliver(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handlePostDeliver
public java.lang.Object handlePostDeliver(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleAcknowledgeAll
public java.lang.Object handleAcknowledgeAll(Invocation invocation)
throws java.lang.Throwable
- Used for client acknowledge.
- Throws:
java.lang.Throwable
handleRecover
public java.lang.Object handleRecover(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleRedeliver
public java.lang.Object handleRedeliver(Invocation invocation)
throws java.lang.Throwable
- Redelivery occurs in two situations:
1) When session.recover() is called (JMS1.1 4.4.11)
"A session's recover method is used to stop a session and restart it with its first
unacknowledged message. In effect, the session's series of delivered messages is reset to the
point after its last acknowledged message."
An important note here is that session recovery is LOCAL to the session. Session recovery DOES
NOT result in delivered messages being cancelled back to the channel where they can be
redelivered - since that may result in them being picked up by another session, which would
break the semantics of recovery as described in the spec.
2) When session rollback occurs (JMS1.1 4.4.7). On rollback of a session the spec is clear
that session recovery occurs:
"If a transaction rollback is done, its produced messages are destroyed and its consumed
messages are automatically recovered. For more information on session recovery, see Section
4.4.11 'Message Acknowledgment.'"
So on rollback we do session recovery (local redelivery) in the same as if session.recover()
was called.
All cancellation at rollback is driven from the client side - we always attempt to redeliver
messages to their original consumers if they are still open, or then cancel them to the server
if they are not. Cancelling them to the server explicitly allows the delivery count to be updated.
- Throws:
java.lang.Throwable
handleCommit
public java.lang.Object handleCommit(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleRollback
public java.lang.Object handleRollback(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleSend
public java.lang.Object handleSend(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleGetXAResource
public java.lang.Object handleGetXAResource(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleGetTransacted
public java.lang.Object handleGetTransacted(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleGetAcknowledgeMode
public java.lang.Object handleGetAcknowledgeMode(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateMessage
public java.lang.Object handleCreateMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateBytesMessage
public java.lang.Object handleCreateBytesMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateMapMessage
public java.lang.Object handleCreateMapMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateObjectMessage
public java.lang.Object handleCreateObjectMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateStreamMessage
public java.lang.Object handleCreateStreamMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateTextMessage
public java.lang.Object handleCreateTextMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleSetMessageListener
public java.lang.Object handleSetMessageListener(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleGetMessageListener
public java.lang.Object handleGetMessageListener(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleCreateConnectionConsumer
public java.lang.Object handleCreateConnectionConsumer(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleAddAsfMessage
public java.lang.Object handleAddAsfMessage(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
handleRun
public java.lang.Object handleRun(Invocation invocation)
throws java.lang.Throwable
- Throws:
java.lang.Throwable
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
Copyright © 2006 JBoss Inc. All Rights Reserved.