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