Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
Public Member Functions | Protected Types | Protected Attributes
qpid::client::Subscription Class Reference

A handle to an active subscription. More...

#include <qpid/client/Subscription.h>

List of all members.

Public Member Functions

 Subscription (SubscriptionImpl *=0)
 Subscription (const Subscription &)
 ~Subscription ()
Subscriptionoperator= (const Subscription &)
std::string getName () const
 The name of the subscription, used as the "destination" for messages from the broker.
std::string getQueue () const
 Name of the queue this subscription subscribes to.
const SubscriptionSettingsgetSettings () const
 Get the flow control and acknowledgement settings for this subscription.
void setFlowControl (const FlowControl &)
 Set the flow control parameters.
void setAutoAck (unsigned int n)
 Automatically acknowledge (acquire and accept) batches of n messages.
SequenceSet getUnacquired () const
 Get the set of ID's for messages received by this subscription but not yet acquired.
SequenceSet getUnaccepted () const
 Get the set of ID's for messages received by this subscription but not yet accepted.
void acquire (const SequenceSet &messageIds)
 Acquire messageIds and remove them from the unacquired set.
void accept (const SequenceSet &messageIds)
 Accept messageIds and remove them from the unaccepted set.
void release (const SequenceSet &messageIds)
 Release messageIds and remove them from the unaccepted set.
QPID_CLIENT_INLINE_EXTERN void acquire (const Message &m)
QPID_CLIENT_INLINE_EXTERN void accept (const Message &m)
QPID_CLIENT_INLINE_EXTERN void release (const Message &m)
Session getSession () const
 Get the session associated with this subscription.
SubscriptionManager getSubscriptionManager ()
 Get the subscription manager associated with this subscription.
void cancel ()
 Cancel the subscription.
void grantMessageCredit (uint32_t)
 Grant the specified amount of message credit.
void grantByteCredit (uint32_t)
 Grant the specified amount of byte credit.
QPID_CLIENT_INLINE_EXTERN bool isValid () const
QPID_CLIENT_INLINE_EXTERN bool isNull () const
QPID_CLIENT_INLINE_EXTERN operator bool () const
 Conversion to bool supports idiom if (handle) { handle->...
QPID_CLIENT_INLINE_EXTERN bool operator! () const
 Operator ! supports idiom if (!handle) { do_if_handle_is_null(); }.
void swap (Handle< SubscriptionImpl > &h)

Protected Types

typedef SubscriptionImpl Impl

Protected Attributes

Implimpl

Detailed Description

A handle to an active subscription.

Provides methods to query the subscription status and control acknowledgement (acquire and accept) of messages.

Definition at line 42 of file Subscription.h.


Member Typedef Documentation

typedef SubscriptionImpl qpid::client::Handle< SubscriptionImpl >::Impl [protected, inherited]

Definition at line 57 of file Handle.h.


Constructor & Destructor Documentation

qpid::client::Subscription::Subscription ( SubscriptionImpl *  = 0)
qpid::client::Subscription::Subscription ( const Subscription )
qpid::client::Subscription::~Subscription ( )

Member Function Documentation

void qpid::client::Subscription::accept ( const SequenceSet &  messageIds)

Accept messageIds and remove them from the unaccepted set.

Precondition:
messageIds is a subset of getUnaccepted()
QPID_CLIENT_INLINE_EXTERN void qpid::client::Subscription::accept ( const Message m) [inline]

Definition at line 97 of file Subscription.h.

References accept(), and qpid::client::Message::getId().

Referenced by accept().

void qpid::client::Subscription::acquire ( const SequenceSet &  messageIds)

Acquire messageIds and remove them from the unacquired set.

oAdd them to the unaccepted set if getSettings().acceptMode == ACCEPT_MODE_EXPLICIT.

QPID_CLIENT_INLINE_EXTERN void qpid::client::Subscription::acquire ( const Message m) [inline]

Definition at line 94 of file Subscription.h.

References acquire(), and qpid::client::Message::getId().

Referenced by acquire().

void qpid::client::Subscription::cancel ( )

Cancel the subscription.

std::string qpid::client::Subscription::getName ( ) const

The name of the subscription, used as the "destination" for messages from the broker.

Usually the same as the queue name but can be set differently.

std::string qpid::client::Subscription::getQueue ( ) const

Name of the queue this subscription subscribes to.

Session qpid::client::Subscription::getSession ( ) const

Get the session associated with this subscription.

const SubscriptionSettings& qpid::client::Subscription::getSettings ( ) const

Get the flow control and acknowledgement settings for this subscription.

SubscriptionManager qpid::client::Subscription::getSubscriptionManager ( )

Get the subscription manager associated with this subscription.

SequenceSet qpid::client::Subscription::getUnaccepted ( ) const

Get the set of ID's for messages received by this subscription but not yet accepted.

SequenceSet qpid::client::Subscription::getUnacquired ( ) const

Get the set of ID's for messages received by this subscription but not yet acquired.

This will always be empty if getSettings().acquireMode=ACQUIRE_MODE_PRE_ACQUIRED

void qpid::client::Subscription::grantByteCredit ( uint32_t  )

Grant the specified amount of byte credit.

void qpid::client::Subscription::grantMessageCredit ( uint32_t  )

Grant the specified amount of message credit.

QPID_CLIENT_INLINE_EXTERN bool qpid::client::Handle< SubscriptionImpl >::isNull ( ) const [inline, inherited]
Returns:
true if handle is null. It is an error to call any function on a null handle.

Definition at line 46 of file Handle.h.

References qpid::client::Handle< T >::impl.

QPID_CLIENT_INLINE_EXTERN bool qpid::client::Handle< SubscriptionImpl >::isValid ( ) const [inline, inherited]
Returns:
true if handle is valid, i.e. not null.

Definition at line 43 of file Handle.h.

References qpid::client::Handle< T >::impl.

QPID_CLIENT_INLINE_EXTERN qpid::client::Handle< SubscriptionImpl >::operator bool ( ) const [inline, inherited]

Conversion to bool supports idiom if (handle) { handle->...

}

Definition at line 49 of file Handle.h.

References qpid::client::Handle< T >::impl.

QPID_CLIENT_INLINE_EXTERN bool qpid::client::Handle< SubscriptionImpl >::operator! ( ) const [inline, inherited]

Operator ! supports idiom if (!handle) { do_if_handle_is_null(); }.

Definition at line 52 of file Handle.h.

References qpid::client::Handle< T >::impl.

Subscription& qpid::client::Subscription::operator= ( const Subscription )
QPID_CLIENT_INLINE_EXTERN void qpid::client::Subscription::release ( const Message m) [inline]

Definition at line 100 of file Subscription.h.

References qpid::client::Message::getId(), and release().

Referenced by release().

void qpid::client::Subscription::release ( const SequenceSet &  messageIds)

Release messageIds and remove them from the unaccepted set.

Precondition:
messageIds is a subset of getUnaccepted()
void qpid::client::Subscription::setAutoAck ( unsigned int  n)

Automatically acknowledge (acquire and accept) batches of n messages.

You can disable auto-acknowledgement by setting n=0, and use acquire() and accept() to manually acquire and accept messages.

void qpid::client::Subscription::setFlowControl ( const FlowControl )

Set the flow control parameters.

void qpid::client::Handle< SubscriptionImpl >::swap ( Handle< SubscriptionImpl > &  h) [inline, inherited]

Definition at line 54 of file Handle.h.

References qpid::client::Handle< T >::impl, and qmf::Handle< T >::impl.


Member Data Documentation

Impl* qpid::client::Handle< SubscriptionImpl >::impl [protected, inherited]

Definition at line 64 of file Handle.h.


The documentation for this class was generated from the following file:

Qpid C++ API Reference
Generated on Mon Aug 22 2011 for Qpid C++ Client API by doxygen 1.7.4