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

Implement a subclass of MessageListener and subscribe it using the SubscriptionManager to receive messages. More...

#include <qpid/client/MessageListener.h>

List of all members.

Public Member Functions

virtual ~MessageListener ()
virtual void received (Message &msg)=0
 Called for each message arriving from the broker.

Detailed Description

Implement a subclass of MessageListener and subscribe it using the SubscriptionManager to receive messages.

Another way to receive messages is by using a LocalQueue.

   <h2>Using a MessageListener</h2>

   <ul>
   <li>
   <p>The received() function is called when a message arrives:</p>
   <pre>virtual void received(Message&amp; message)=0;</pre>
   </li>
   <li>
   <p>Derive your own listener, implement the received() function:</p>
   <pre>
   class Listener : public MessageListener {
    private:
      SubscriptionManager&amp; subscriptions;
    public:
      Listener(SubscriptionManager&amp; subscriptions);
      virtual void received(Message&amp; message);
   };

   Listener::Listener(SubscriptionManager&amp; subs) : subscriptions(subs)
   {}

   void Listener::received(Message&amp; message) {
     std::cout &lt;&lt; "Message: " &lt;&lt; message.getData() &lt;&lt; std::endl;
     if (message.getData() == "That's all, folks!") {
         std::cout &lt;&lt; "Shutting down listener for " &lt;&lt; message.getDestination()
                  &lt;&lt; std::endl;
         subscriptions.cancel(message.getDestination());
     }
   }
  </pre>
   <pre>
   SubscriptionManager subscriptions(session);

   // Create a listener and subscribe it to the queue named "message_queue"
   Listener listener(subscriptions);
   subscriptions.subscribe(listener, "message_queue");

   // Receive messages until the subscription is cancelled
   // by Listener::received()
   subscriptions.run();
   </pre>
   </li>
   </ul>

Definition at line 87 of file MessageListener.h.


Constructor & Destructor Documentation

virtual qpid::client::MessageListener::~MessageListener ( )
virtual

Member Function Documentation

virtual void qpid::client::MessageListener::received ( Message msg)
pure virtual

Called for each message arriving from the broker.

Override in your own subclass to process messages.


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

Qpid C++ API Reference
Generated on Tue Jul 2 2013 for Qpid C++ Client API by doxygen 1.8.1.1