Class AmqpSession
- java.lang.Object
-
- org.apache.activemq.transport.amqp.protocol.AmqpSession
-
- All Implemented Interfaces:
AmqpResource
public class AmqpSession extends Object implements AmqpResource
Wraps the AMQP Session and provides the services needed to manage the remote peer requests for link establishment.
-
-
Constructor Summary
Constructors Constructor Description AmqpSession(AmqpConnection connection, SessionId sessionId, org.apache.qpid.proton.engine.Session session)Create new AmqpSession instance whose parent is the given AmqpConnection.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Request from the remote peer to close this resource.voidcommit(LocalTransactionId txId)Commits all pending work for all resources managed under this session.voidcreateCoordinator(org.apache.qpid.proton.engine.Receiver protonReceiver)voidcreateReceiver(org.apache.qpid.proton.engine.Receiver protonReceiver)voidcreateSender(org.apache.qpid.proton.engine.Sender protonSender)voidenlist(TransactionId txId)voidflushPendingMessages()Used to direct all Session managed Senders to push any queued Messages out to the remote peer.AmqpConnectiongetConnection()org.apache.qpid.proton.engine.SessiongetEndpoint()longgetMaxFrameSize()SessionIdgetSessionId()voidopen()Request from the remote peer to open this resource.voidpumpProtonToSocket()Send all pending work out to the remote peer.voidregisterSender(ConsumerId consumerId, AmqpSender sender)voidrollback(LocalTransactionId txId)Rolls back any pending work being down under this session.voidunregisterSender(ConsumerId consumerId)
-
-
-
Constructor Detail
-
AmqpSession
public AmqpSession(AmqpConnection connection, SessionId sessionId, org.apache.qpid.proton.engine.Session session)
Create new AmqpSession instance whose parent is the given AmqpConnection.- Parameters:
connection- the parent connection for this session.sessionId- the ActiveMQ SessionId that is used to identify this session.session- the AMQP Session that this class manages.
-
-
Method Detail
-
open
public void open()
Description copied from interface:AmqpResourceRequest from the remote peer to open this resource.- Specified by:
openin interfaceAmqpResource
-
close
public void close()
Description copied from interface:AmqpResourceRequest from the remote peer to close this resource.- Specified by:
closein interfaceAmqpResource
-
commit
public void commit(LocalTransactionId txId) throws Exception
Commits all pending work for all resources managed under this session.- Parameters:
txId- The specific TransactionId that is being committed.- Throws:
Exception- if an error occurs while attempting to commit work.
-
rollback
public void rollback(LocalTransactionId txId) throws Exception
Rolls back any pending work being down under this session.- Parameters:
txId- The specific TransactionId that is being rolled back.- Throws:
Exception- if an error occurs while attempting to roll back work.
-
flushPendingMessages
public void flushPendingMessages() throws ExceptionUsed to direct all Session managed Senders to push any queued Messages out to the remote peer.- Throws:
Exception- if an error occurs while flushing the messages.
-
createCoordinator
public void createCoordinator(org.apache.qpid.proton.engine.Receiver protonReceiver) throws Exception- Throws:
Exception
-
createReceiver
public void createReceiver(org.apache.qpid.proton.engine.Receiver protonReceiver) throws Exception- Throws:
Exception
-
createSender
public void createSender(org.apache.qpid.proton.engine.Sender protonSender) throws Exception- Throws:
Exception
-
pumpProtonToSocket
public void pumpProtonToSocket()
Send all pending work out to the remote peer.
-
registerSender
public void registerSender(ConsumerId consumerId, AmqpSender sender)
-
unregisterSender
public void unregisterSender(ConsumerId consumerId)
-
enlist
public void enlist(TransactionId txId)
-
getConnection
public AmqpConnection getConnection()
-
getSessionId
public SessionId getSessionId()
-
getEndpoint
public org.apache.qpid.proton.engine.Session getEndpoint()
-
getMaxFrameSize
public long getMaxFrameSize()
-
-