Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation |
#include <qpid/messaging/Session.h>
Inherits qpid::messaging::Handle< SessionImpl >.
Public Member Functions | |
QPID_MESSAGING_EXTERN | Session (SessionImpl *impl=0) |
QPID_MESSAGING_EXTERN | Session (const Session &) |
QPID_MESSAGING_EXTERN | ~Session () |
QPID_MESSAGING_EXTERN Session & | operator= (const Session &) |
QPID_MESSAGING_EXTERN void | close () |
Closes a session and all associated senders and receivers. | |
QPID_MESSAGING_EXTERN void | commit () |
QPID_MESSAGING_EXTERN void | rollback () |
QPID_MESSAGING_EXTERN void | acknowledge (bool sync=false) |
Acknowledges all outstanding messages that have been received by the application on this session. | |
QPID_MESSAGING_EXTERN void | reject (Message &) |
Rejects the specified message. | |
QPID_MESSAGING_EXTERN void | release (Message &) |
Releases the specified message. | |
QPID_MESSAGING_EXTERN void | sync (bool block=true) |
Request synchronisation with the server. | |
QPID_MESSAGING_EXTERN uint32_t | getReceivable () |
Returns the total number of messages received and waiting to be fetched by all Receivers belonging to this session. | |
QPID_MESSAGING_EXTERN uint32_t | getUnsettledAcks () |
Returns a count of the number of messages received this session that have been acknowledged, but for which that acknowledgement has not yet been confirmed as processed by the server. | |
QPID_MESSAGING_EXTERN bool | nextReceiver (Receiver &, Duration timeout=Duration::FOREVER) |
Retrieves the receiver for the next available message. | |
QPID_MESSAGING_EXTERN Receiver | nextReceiver (Duration timeout=Duration::FOREVER) |
Returns the receiver for the next available message. | |
QPID_MESSAGING_EXTERN Sender | createSender (const Address &address) |
Create a new sender through which messages can be sent to the specified address. | |
QPID_MESSAGING_EXTERN Sender | createSender (const std::string &address) |
QPID_MESSAGING_EXTERN Receiver | createReceiver (const Address &address) |
Create a new receiver through which messages can be received from the specified address. | |
QPID_MESSAGING_EXTERN Receiver | createReceiver (const std::string &address) |
QPID_MESSAGING_EXTERN Sender | getSender (const std::string &name) const |
Returns the sender with the specified name. | |
QPID_MESSAGING_EXTERN Receiver | getReceiver (const std::string &name) const |
Returns the receiver with the specified name. | |
QPID_MESSAGING_EXTERN Connection | getConnection () const |
Returns a handle to the connection this session is associated with. | |
QPID_MESSAGING_EXTERN bool | hasError () |
QPID_MESSAGING_EXTERN void | checkError () |
QPID_MESSAGING_EXTERN bool | isValid () const |
QPID_MESSAGING_EXTERN bool | isNull () const |
QPID_MESSAGING_EXTERN | operator bool () const |
Conversion to bool supports idiom if (handle) { handle->. | |
QPID_MESSAGING_EXTERN bool | operator! () const |
Operator ! supports idiom if (!handle) { do_if_handle_is_null(); }. | |
void | swap (Handle< SessionImpl > &h) |
Protected Types | |
typedef SessionImpl | Impl |
Protected Attributes | |
Impl * | impl |
Definition at line 49 of file Session.h.
typedef SessionImpl qpid::messaging::Handle< SessionImpl >::Impl [protected, inherited] |
QPID_MESSAGING_EXTERN qpid::messaging::Session::Session | ( | SessionImpl * | impl = 0 |
) |
QPID_MESSAGING_EXTERN qpid::messaging::Session::Session | ( | const Session & | ) |
QPID_MESSAGING_EXTERN qpid::messaging::Session::~Session | ( | ) |
QPID_MESSAGING_EXTERN void qpid::messaging::Session::acknowledge | ( | bool | sync = false |
) |
Acknowledges all outstanding messages that have been received by the application on this session.
sync | if true, blocks until the acknowledgement has been processed by the server |
QPID_MESSAGING_EXTERN void qpid::messaging::Session::checkError | ( | ) |
QPID_MESSAGING_EXTERN void qpid::messaging::Session::close | ( | ) |
Closes a session and all associated senders and receivers.
An opened session should be closed before the last handle to it goes out of scope. All a connections sessions can be closed by a call to Connection::close().
QPID_MESSAGING_EXTERN void qpid::messaging::Session::commit | ( | ) |
QPID_MESSAGING_EXTERN Receiver qpid::messaging::Session::createReceiver | ( | const std::string & | address | ) |
Create a new receiver through which messages can be received from the specified address.
QPID_MESSAGING_EXTERN Sender qpid::messaging::Session::createSender | ( | const std::string & | address | ) |
Create a new sender through which messages can be sent to the specified address.
QPID_MESSAGING_EXTERN Connection qpid::messaging::Session::getConnection | ( | ) | const |
Returns a handle to the connection this session is associated with.
QPID_MESSAGING_EXTERN uint32_t qpid::messaging::Session::getReceivable | ( | ) |
Returns the total number of messages received and waiting to be fetched by all Receivers belonging to this session.
This is the total number of available messages across all receivers on this session.
QPID_MESSAGING_EXTERN Receiver qpid::messaging::Session::getReceiver | ( | const std::string & | name | ) | const |
QPID_MESSAGING_EXTERN Sender qpid::messaging::Session::getSender | ( | const std::string & | name | ) | const |
QPID_MESSAGING_EXTERN uint32_t qpid::messaging::Session::getUnsettledAcks | ( | ) |
Returns a count of the number of messages received this session that have been acknowledged, but for which that acknowledgement has not yet been confirmed as processed by the server.
QPID_MESSAGING_EXTERN bool qpid::messaging::Session::hasError | ( | ) |
QPID_MESSAGING_EXTERN bool qpid::messaging::Handle< SessionImpl >::isNull | ( | ) | const [inline, inherited] |
Definition at line 46 of file Handle.h.
References qpid::messaging::Handle< T >::impl.
QPID_MESSAGING_EXTERN bool qpid::messaging::Handle< SessionImpl >::isValid | ( | ) | const [inline, inherited] |
Definition at line 43 of file Handle.h.
References qpid::messaging::Handle< T >::impl.
QPID_MESSAGING_EXTERN Receiver qpid::messaging::Session::nextReceiver | ( | Duration | timeout = Duration::FOREVER |
) |
Returns the receiver for the next available message.
If there are no available messages at present the call will block for up to the specified timeout waiting for one to arrive.
Receiver::NoMessageAvailable | if no message became available in time. |
QPID_MESSAGING_EXTERN bool qpid::messaging::Session::nextReceiver | ( | Receiver & | , | |
Duration | timeout = Duration::FOREVER | |||
) |
Retrieves the receiver for the next available message.
If there are no available messages at present the call will block for up to the specified timeout waiting for one to arrive. Returns true if a message was available at the point of return, in which case the passed in receiver reference will be set to the receiver for that message or false if no message was available.
QPID_MESSAGING_EXTERN qpid::messaging::Handle< SessionImpl >::operator bool | ( | ) | const [inline, inherited] |
Conversion to bool supports idiom if (handle) { handle->.
.. }
Definition at line 49 of file Handle.h.
References qpid::messaging::Handle< T >::impl.
QPID_MESSAGING_EXTERN bool qpid::messaging::Handle< SessionImpl >::operator! | ( | ) | const [inline, inherited] |
Operator ! supports idiom if (!handle) { do_if_handle_is_null(); }.
Definition at line 52 of file Handle.h.
References qpid::messaging::Handle< T >::impl.
QPID_MESSAGING_EXTERN void qpid::messaging::Session::reject | ( | Message & | ) |
Rejects the specified message.
This will prevent the message being redelivered. This must be called before the message is acknowledged.
QPID_MESSAGING_EXTERN void qpid::messaging::Session::release | ( | Message & | ) |
Releases the specified message.
This will allow the broker to redeliver the message. This must be called before the message is acknowledged.
QPID_MESSAGING_EXTERN void qpid::messaging::Session::rollback | ( | ) |
void qpid::messaging::Handle< SessionImpl >::swap | ( | Handle< SessionImpl > & | h | ) | [inline, inherited] |
QPID_MESSAGING_EXTERN void qpid::messaging::Session::sync | ( | bool | block = true |
) |
Request synchronisation with the server.
block | if true, this call will block until the server confirms completion of all pending operations; if false the call will request notifcation from the server but will return before receiving it. |
Impl* qpid::messaging::Handle< SessionImpl >::impl [protected, inherited] |