Chapter 10. The Qpid Messaging API
10.1. Handling Exceptions
10.1.1. Messaging Exceptions Reference
In the asynchronous and decoupled environment of a messaging application, exceptions are thrown for both local error conditions and error conditions or failures that occur remotely. Developing a robust application requires that you anticipate and handle a wide range of possible exceptions, some of which are not immediately obvious from the context of the method itself.
10.1.2. C++ Messaging Exceptions Class Hierarchy
The following are the exceptions thrown by the C++ API, and the circumstances under which they are thrown. The source code for the exceptions can be viewed in the Apache Qpid svn repository.
- MessagingException
- The base class for Messaging exceptions.
- InvalidOptionString : public MessagingException
- Thrown when the syntax of the option string used to configure a connection is not valid.
- KeyError : public MessagingException
- Thrown to indicate a failed lookup of some local object. For example when attempting to retrieve a session, sender or receiver by name.
- LinkError : public MessagingException
- Base class for exceptions thrown to indicate a failed lookup of some local object.
- AddressError : public LinkError
- Thrown to indicate a failed lookup of some local object. For example when attempting to retrieve a session, sender or receiver by name.
- ResolutionError : public AddressError
- Thrown when a syntactically correct address cannot be resolved or used.
- AssertionFailed : public ResolutionError
- Thrown when creating a sender or receiver for an address for which some asserted property of the node is not matched.
- NotFound : public ResolutionError
- Thrown on attempts to create a sender or receiver to a non-existent node.
- MalformedAddress : public AddressError
- Thrown when an address string with invalid syntax is used.
- ReceiverError : public LinkError
- FetchError : public ReceiverError
- NoMessageAvailable : public FetchError
- Thrown by Receiver::fetch(), Receiver::get() and Session::nextReceiver() to indicate that there no message was available before the timeout specified.
- SenderError : public LinkError
- SendError : public SenderError
- TargetCapacityExceeded : public SendError
- Thrown to indicate that the sender attempted to send a message that would result in the target node on the peer exceeding a preconfigured capacity.
- SessionError : public MessagingException
- TransactionError : public SessionError
- TransactionAborted : public TransactionError
- Thrown on Session::commit() if reconnection results in the transaction being automatically aborted.
- TransactionUnknown : public TransactionError
- The outcome of the transaction on the broker (commit or roll-back) is not known. This occurs when the connection fails after the commit was sent, but before a response is received.
- UnauthorizedAccess : public SessionError
- Thrown to indicate that the application attempted to do something for which it was not authorized by its peer.
- UnauthorizedAccess : public SessionError
- ConnectionError : public MessagingException
- TransportFailure : public MessagingException
- Thrown to indicate loss of underlying connection. When auto-reconnect is used this will be caught by the library and used to trigger reconnection attempts. If reconnection fails (according to whatever settings have been configured), then an instance of this class will be thrown to signal that.
10.1.3. Connection Exceptions
Note: Unless fully qualified, all exceptions listed are in the
qpid::messaging
namespace.
- Connection::Connection(const std::string&, const qpid::types::Variant::Map&)
MessagingException
if any of the options in the supplied map are not recognised.qpid::types::InvalidConversion
if any of the option values are of the wrong type.- Connection::Connection(const std::string& url, const std::string& options)
MessagingException
if any of the options in the supplied map are not recognised.qpid::types::InvalidConversion
if any of the option values are of the wrong type.InvalidOptionString
if the format of the option string is invalid.- Connection::setOption(const std::string& name, const qpid::types::Variant& value)
MessagingException
if the named option is not recognised.qpid::types::InvalidConversion
if the option value is of the wrong type.- Connection::open()
qpid::Url::Invalid
if the url is not valid (this may be the url supplied on construction or any of the reconnect_urls supplied via options).TransportFailure
if a connection could not be established.ConnectionError
for any other failure, including where the broker sends a connection.close control before the AMQP 0-10 defined connection handshake completes.qpid::types::InvalidConversion
if the broker sends an improperly encoded value for the 'known-host
' field of theconnection.open-ok control
as defined by AMQP 0-10 specification.- Connection::isOpen()
- Does not throw exceptions.
- Connection::close()
TargetCapacityExceeded
if any of the sessions established for the connection have attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if any of the sessions established for the connection have attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends a connection.close control (i.e. if broker initiates closing of an active connection just before the client does).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session while the close is in progress).TransportFailure
if a connection was lost while trying to perform the close 'handshake' with the broker.- Connection::createTransactionalSession(const std::string& name)
SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected which could happen on enabling transactions for the session (e.g. if the broker in question did not support transactions).ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of the session before it becomes active).TransportFailure
if the connection was lost (and if automatic reconnect is enabled could not be re-established).qpid::Url::Invalid
if reconnect is enabled and a url in thereconnect_urls
option list is invalid.qpid::types::InvalidConversion
if the broker were to send an improperly encoded value for the 'known-host
' field of theconnection.open-ok
control as defined by AMQP 0-10 specification.- Connection::createSession(const std::string&)
ConnectionError
if the broker to which the client is connected sends a connection.close control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of the session before it becomes active).TransportFailure
if the connection was lost (and if automatic reconnect is enabled could not be re-established).qpid::Url::Invalid
if reconnect is enabled and a url in thereconnect_urls
option list is invalid.qpid::types::InvalidConversion
if the broker were to send an improperly encoded value for the 'known-host
' field of the connection.open-ok control as defined by AMQP 0-10 specification.- Connection::getSession(const std::string&)
KeyError
if no session for the specified name exists.- Connection::getAuthenticatedUsername()
- Does not throw any exception.
10.1.4. Session Exceptions
Note: Unless fully qualified, all exceptions listed are in the
qpid::messaging
namespace.
- Session::close()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::commit()
TransactionAborted
if the original AMQP 0-10 session is lost, e.g. due to failover, forcing an automatic rollback.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::rollback()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::acknowledge(bool)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::acknowledge(Message&, bool)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::acknowledgeUpTo(Message&, bool)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::reject(Message&)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.ThrowsSessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::release(Message&)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::sync(bool)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::getReceivable()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::getUnsettledAcks()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::nextReceiver(Receiver&, Duration)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::nextReceiver(Duration)
Receiver::NoMessageAvailable
if no message became available in time.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.ThrowsSessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::createSender(const Address&)
ResolutionError
if there is an error in resolving the address.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::createSender(const std::string&)
ResolutionError
if there is an error in resolving the address.MalformedAddress
if the syntax of the address string is not valid.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::createReceiver(const Address&)
ResolutionError
if there is an error in resolving the address.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends a connection.close control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::createReceiver(const std::string&)
ResolutionError
if there is an error in resolving the address.MalformedAddress
if the syntax of the address string is not valid.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Session::getSender(const std::string&)
KeyError
if there is no sender for the specified name.- Session::getReceiver(const std::string&)
- KeyError if there is no receiver for the specified name.
- Session::checkError()
qpid::messaging::SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.qpid::messaging::ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).qpid::messaging::MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session).- Session::getConnection()
- Does not throw exceptions.
- Session::hasError()
- Does not throw exceptions.
10.1.5. Sender Exceptions
Note: Unless fully qualified, all exceptions listed are in the
qpid::messaging
namespace.
- Sender::send(const Message& message, bool)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends a session.detached control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Sender::close()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Sender::setCapacity(uint32_t)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Sender::getUnsettled()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Sender::getAvailable()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Sender::getCapacity()
- Does not throw exceptions.
- Sender::getName()
- Does not throw exceptions.
- Sender::getSession()
- Does not throw exceptions.
10.1.6. Receiver Exceptions
Note: Unless fully qualified, all exceptions listed are in the
qpid::messaging
namespace.
- Receiver::get(Message& message, Duration timeout=Duration::FOREVER)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::Message get(Duration timeout=Duration::FOREVER)
NoMessageAvailable
if there is no message to give after waiting for the specified timeout, or if the Receiver is closed, in which caseisClose()
will be true.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::fetch(Message& message, Duration timeout=Duration::FOREVER)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if an execution.exception command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::fetch(Duration timeout=Duration::FOREVER)
NoMessageAvailable
if there is no message to give after waiting for the specified timeout, or if the Receiver is closed, in which caseisClose()
will be true.TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::setCapacity(uint32_t)
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::getAvailable()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::getUnsettled()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::close()
TargetCapacityExceeded
if the session has attempted to send a message that would result in a queue exceeding configured limits.UnauthorizedAccess
if the session has attempted to perform an operation for which it has not been granted permission.SessionError
if anexecution.exception
command, as defined in AMQP 0-10, is received from the broker to which the client is connected.ConnectionError
if the broker to which the client is connected sends aconnection.close
control (i.e. if broker initiates closing of an active connection).MessagingException
if the broker to which the client is connected sends asession.detached
control (i.e. if broker initiates closing of an active session).TransportFailure
if a connection was lost (and if automatic reconnect is enabled could not be re-established).- Receiver::isClosed()
- Does not throw exceptions.
- Receiver::getCapacity()
- Does not throw exceptions.
- Receiver::getName()
- Does not throw exceptions.
- Receiver::getSession()
- Does not throw exceptions.