summaryrefslogtreecommitdiff
path: root/cpp/examples/README.txt
diff options
context:
space:
mode:
authorStephen D. Huston <shuston@apache.org>2009-05-29 20:08:04 +0000
committerStephen D. Huston <shuston@apache.org>2009-05-29 20:08:04 +0000
commit648d1ac54775cbbfdc0629a6ce7d9468e45403b3 (patch)
tree24996530739feb056ab0724f2b9a7b3d2a94913f /cpp/examples/README.txt
parentd0e6cc18bbc8e0e11f526baddc2fc29ed6875b63 (diff)
downloadqpid-python-648d1ac54775cbbfdc0629a6ce7d9468e45403b3.tar.gz
Add a suffix so Windows can associate it with a reader program
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@780088 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/examples/README.txt')
-rw-r--r--cpp/examples/README.txt165
1 files changed, 165 insertions, 0 deletions
diff --git a/cpp/examples/README.txt b/cpp/examples/README.txt
new file mode 100644
index 0000000000..b5e9c49f9a
--- /dev/null
+++ b/cpp/examples/README.txt
@@ -0,0 +1,165 @@
+= Qpid C++ Examples =
+
+
+This directory contains example C++ programs for Apache Qpid. They are
+based on the 0-10 version of the AMQP specification (see www.amqp.org for
+details). A short description of each example follows.
+
+Please note that by default these examples attempt to connect to a Qpid
+broker running on the local host (127.0.0.1) at the standard AMQP port (5672).
+It is possible to instruct the examples to connect to an alternate broker
+host and port by specifying the host name/address and port number as arguments
+to the programs. For example, to have the declare_queues program connect to a
+broker running on host1, port 9999, run the following command:
+
+On Linux:
+ # ./declare_queues host1 9999
+
+On Windows:
+ C:\Program Files\Apache\qpidc-0.5\examples\direct> declare_queues host1 9999
+
+The qpid C++ broker executable is named qpidd on Linux and qpidd.exe
+on Windows. The default install locations are:
+- Linux: /usr/sbin
+- Windows: C:\Program Files\Apache\qpidc-0.5\bin
+
+In a C++ source distribution the broker is located in the src subdirectory
+(generally, from this examples directory, ../src).
+
+== Direct ==
+
+This example shows how to create Point-to-Point applications using Qpid. This
+example contains three components.
+
+ 1. declare_queues
+ This will bind a queue to the amq.direct exchange, so that the messages
+ sent to the amq.direct exchange with a given routing key (routing_key) are
+ delivered to a specific queue (message_queue).
+
+ 2. direct_producer
+ Publishes messages to the amq.direct exchange using the given routing key
+ (routing_key) discussed above.
+
+ 3. listener
+ Uses a message listener to listen for messages from a specific queue
+ (message_queue) as discussed above.
+
+In order to run this example,
+
+On Linux:
+ # ./declare_queues
+ # ./direct_producer
+ # ./listener
+
+On Windows:
+ C:\Program Files\Apache\qpidc-0.5\examples\direct> declare_queues
+ C:\Program Files\Apache\qpidc-0.5\examples\direct> direct_producer
+ C:\Program Files\Apache\qpidc-0.5\examples\direct> listener
+
+Note that there is no requirement for the listener to be running before the
+messages are published. The messages are stored in the queue until consumed
+by the listener.
+
+== Fanout ==
+
+This example shows how to create Fanout exchange applications using Qpid.
+This example has two components. Unlike the Direct example, the Fanout exchange
+does not need a routing key to be specified.
+
+ 1. fanout_producer
+ Publishes a message to the amq.fanout exchange, without using a routing key.
+
+ 2. listener
+ Uses a message listener to listen for messages from the amq.fanout exchange.
+
+
+Note that unlike the Direct example, it is necessary to start the listener
+before the messages are published. The fanout exchange does not hold messages
+in a queue. Therefore, it is recommended that the two parts of the example be
+run in separate windows.
+
+In order to run this example:
+
+On Linux:
+ # ./listener
+
+ # ./fanout_producer
+
+On Windows:
+ C:\Program Files\Apache\qpidc-0.5\examples\fanout> listener
+
+ C:\Program Files\Apache\qpidc-0.5\examples\direct> fanout_producer
+
+== Publisher/Subscriber ==
+
+This example demonstrates the ability to create topic Publishers and
+Subscribers using Qpid. This example has two components.
+
+ 1. topic_publisher
+ This application is used to publish messages to the amq.topic exchange
+ using multipart routing keys, usa.weather, europe.weather, usa.news and
+ europe.news.
+
+ 2. topic_listener
+ This application is used to subscribe to several private queues, such as
+ usa, europe, weather and news. In this program, each private queue created
+ is bound to the amq.topic exchange using bindings that match the
+ corresponding parts of the multipart routing keys. For example, subscribing
+ to #.news will retrieve news irrespective of destination.
+
+This example also shows the use of the 'control' routing key which is used by
+control messages.
+
+Due to this example's design, the topic_listener must be running before
+starting the topic_publisher. Therefore, it is recommended that the two parts
+of the example be run in separate windows.
+
+In order to run this example,
+
+On Linux:
+ # ./topic_listener
+
+ # ./topic_publisher
+
+On Windows:
+ C:\Program Files\Apache\qpidc-0.5\examples\pub-sub> topic_listener
+
+ C:\Program Files\Apache\qpidc-0.5\examples\pub-sub> topic_publisher
+
+== Request/Response ==
+
+This example shows a simple server that will accept strings from a client,
+convert them to upper case, and send them back to the client. This example
+has two components.
+
+ 1. client
+ This sends lines of poetry to the server.
+
+ 2. server
+ This is a simple service that will convert incoming strings to upper case
+ and send the result to amq.direct exchange on which the client listens.
+ It uses the request's reply_to property as the response's routing key.
+
+In order to run this example,
+
+On Linux:
+ # ./server
+ # ./client
+
+On Windows:
+ C:\Program Files\Apache\qpidc-0.5\examples\request-response> server
+ C:\Program Files\Apache\qpidc-0.5\examples\request-response> client
+
+== QMF Agent ==
+
+This example demonstrates integration with the Qpid Management Framework (QMF).
+The qmf-agent program will connect to a running Qpid broker and advertise a
+managed object (org.apache.qpid.agent.example:parent). Using the qpid-tool,
+you can monitor the object and also call a method (create_child) to spawn
+managed child objects.
+
+To build this example, simply invoke make on Unix or Linux. On Windows, you
+must invoke
+ nmake /f example_gen.mak
+before building the sample to generate the supporting model classes
+(e.g., Parent,Child,etc.).