summaryrefslogtreecommitdiff
path: root/cpp/docs/api/doxygen_mainpage.h
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2008-11-05 21:52:38 +0000
committerAlan Conway <aconway@apache.org>2008-11-05 21:52:38 +0000
commit1313412f46137d26660f583e6436f26935e0c841 (patch)
tree4d68e7919bfc2a7d436299fe4ce190b2ba1bb973 /cpp/docs/api/doxygen_mainpage.h
parent6a6005d60961fd51900ec2177c723759dfcc71ec (diff)
downloadqpid-python-1313412f46137d26660f583e6436f26935e0c841.tar.gz
QPID-1294 (Johnathan Robie) Improved doxygen generation. Files missed in previous commit.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@711708 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/docs/api/doxygen_mainpage.h')
-rw-r--r--cpp/docs/api/doxygen_mainpage.h110
1 files changed, 110 insertions, 0 deletions
diff --git a/cpp/docs/api/doxygen_mainpage.h b/cpp/docs/api/doxygen_mainpage.h
new file mode 100644
index 0000000000..590cbd797d
--- /dev/null
+++ b/cpp/docs/api/doxygen_mainpage.h
@@ -0,0 +1,110 @@
+// This header file is just for doxygen documentation purposes.
+
+/** \mainpage Qpid C++ API Reference
+ *
+ * <h2>Messaging Client API classes</h2>
+ * <ul>
+ * <li><p>\ref clientapi</p></li>
+ * </ul>
+ *
+ * <h2>Code for common tasks</h2>
+ *
+ * <ul><li><p>Includes and Namespaces</p>
+ * <pre> \#include <qpid/client/Connection.h>
+ * \#include <qpid/client/Session.h>
+ * \#include <qpid/client/Message.h>
+ * \#include <qpid/client/SubscriptionManager.h>
+ *
+ *
+ * using namespace qpid::client;
+ * using namespace qpid::framing;</pre></li>
+ *
+ * <li><p>Opening and closing connections and sessions</p>
+ * <pre> Connection connection;
+ * try {
+ * connection.open(host, port);
+ * Session session = connection.newSession();
+ * ...
+ * connection.close();
+ * return 0;
+ * } catch(const std::exception& error) {
+ * std::cout << error.what() << std::endl;
+ * }
+ * return 1;</pre>
+ *
+ *
+ * <li><p>Declaring and binding queues:</p>
+ *
+ * <pre> session.queueDeclare(arg::queue="message_queue");
+ * session.exchangeBind(arg::exchange="amq.direct", arg::queue="message_queue", arg::bindingKey="routing_key");</pre></li>
+ *
+ * <li><p>Sending a message:</p>
+ *
+ * <pre> message.getDeliveryProperties().setRoutingKey("routing_key");
+ * message.setData("Hi, Mom!");
+ * session.messageTransfer(arg::content=message, arg::destination="amq.direct");</pre></li>
+ *
+ * <li><p>Sending a message (asynchronous):</p>
+ *
+ * <pre> ##include <qpid/client/AsyncSession.h>
+ * async(session).messageTransfer(arg::content=message, arg::destination="amq.direct");
+ * ...
+ * session.sync();</pre></li>
+ *
+ *
+ * <li><p>Replying to a message:</p>
+ * <pre> Message request, response;
+ * ...
+ * if (request.getMessageProperties().hasReplyTo()) {
+ * string routingKey = request.getMessageProperties().getReplyTo().getRoutingKey();
+ * string exchange = request.getMessageProperties().getReplyTo().getExchange();
+ * response.getDeliveryProperties().setRoutingKey(routingKey);
+ * messageTransfer(arg::content=response, arg::destination=exchange);
+ * }
+ * </pre></li>
+ *
+ * <li><p>A message listener:</p>
+ *
+ * <pre> class Listener : public MessageListener{
+ * private:
+ * SubscriptionManager& subscriptions;
+ * public:
+ * Listener(SubscriptionManager& subscriptions);
+ * virtual void received(Message& message);
+ * };
+ *
+ * void Listener::received(Message& message) {
+ * std::cout << "Message: " << message.getData() << std::endl;
+ * if (endCondition(message)) {
+ * subscriptions.cancel(message.getDestination());
+ * }
+ * }</pre></li>
+ *
+ * <li><p>Using a message listener with a subscription manager:</p>
+ *
+ * <pre> SubscriptionManager subscriptions(session);
+ *
+ * Listener listener(subscriptions);
+ * subscriptions.subscribe(listener, "message_queue");
+ * subscriptions.run();</pre></li>
+ *
+ * <li><p>Using a LocalQueue with a subscription manager</p>
+ *
+ * <pre> SubscriptionManager subscriptions(session);
+ *
+ * LocalQueue local_queue;
+ * subscriptions.subscribe(local_queue, string("message_queue"));
+ *
+ * Message message;
+ * for (int i=0; i<10; i++) {
+ * local_queue.get(message, 10000);
+ * std::cout << message.getData() << std::endl;
+ * }</pre></li><ul>
+ *
+ *
+ */
+
+/**
+ * \defgroup clientapi Qpid C++ Client API
+ *
+ */