summaryrefslogtreecommitdiff
path: root/qpid/python/examples/README.txt
diff options
context:
space:
mode:
authorRafael H. Schloming <rhs@apache.org>2010-07-13 16:33:24 +0000
committerRafael H. Schloming <rhs@apache.org>2010-07-13 16:33:24 +0000
commit2c7e79a2bac98657a2e613ef848e8615939bfc46 (patch)
tree9effeb2a9c3546d5c7567969341040e4ab8be419 /qpid/python/examples/README.txt
parent33b291a4801c7467879361add250d113cf73a4e1 (diff)
downloadqpid-python-2c7e79a2bac98657a2e613ef848e8615939bfc46.tar.gz
removed old python examples
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@963786 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/python/examples/README.txt')
-rw-r--r--qpid/python/examples/README.txt335
1 files changed, 29 insertions, 306 deletions
diff --git a/qpid/python/examples/README.txt b/qpid/python/examples/README.txt
index bd30b2a6f4..50bb0a8c9b 100644
--- a/qpid/python/examples/README.txt
+++ b/qpid/python/examples/README.txt
@@ -1,319 +1,42 @@
-Running the Python Examples
-============================
+The Python Examples
+===================
+README.txt -- This file.
-Running the Direct Examples
-----------------------------
+api -- Directory containing drain, spout,
+ sever, hello, and hello_xml examples.
-To run the direct examples, do the following:
+api/drain -- A simple messaging client that prints
+ messages from the source specified on
+ the command line.
-1. Make sure that a qpidd broker is running:
+api/spout -- A simple messaging client that sends
+ messages to the target specified on the
+ command line.
- $ ps -eaf | grep qpidd
+api/server -- An example server that process incoming
+ messages and sends replies.
- If a broker is running, you should see the qpidd process in the output of the above command.
-2.Declare a message queue and bind it to an exchange by running declare_queues.py, as follows:
+api/hello -- An example client that sends a message
+ and then receives it.
- $ python declare_queues.py
+api/hello_xml -- An example client that sends a message
+ to the xml exchange and then receives
+ it.
- This program has no output. After this program has been run, all messages sent to the amq.direct exchange using the routing key routing_key are sent to the queue named message_queue.
+reservations -- Directory containing an example machine
+ reservation system.
-3.Publish a series of messages to the amq.direct exchange by running direct_producer.py, as follows:
+reservations/common.py -- Utility code used by reserve,
+ machine-agent, and inventory scripts.
- $ python direct_producer.py
+reservations/reserve -- Messaging client for listing, reserving,
+ and releasing machines.
-This program has no output; the messages are routed to the message queue, as instructed by the binding.
+reservations/machine-agent -- Messaging server that tracks and reports
+ on the status of its host machine and
+ listens for reservation requests.
-4. Read the messages from the message queue using direct_consumer.py or listener.py, as follows:
-
- $ python direct_consumer.py
-
- or
-
- $ python listener.py
-
-You should see the following output:
-
-message 0
-message 1
-message 2
-message 3
-message 4
-message 5
-message 6
-message 7
-message 8
-message 9
-That's all, folks!
-
-
-
-Running the Fanout Examples
-----------------------------
-
-To run the programs for the Fanout example, do the following:
-
-1. Make sure that a qpidd broker is running:
-
- $ ps -eaf | grep qpidd
-
-If a broker is running, you should see the qpidd process in the output of the above command.
-
-2. In separate windows, start two or more fanout consumers or fanout listeners as follows:
-
- $ python fanout_consumer.py
-
- or
-
- $ python listener.py
-
-These programs each create a private queue, bind it to the amq.fanout exchange, and wait for messages to arrive on their queue.
-
-3. In a separate window, publish a series of messages to the amq.fanout exchange by running fanout_producer.py, as follows:
-
- $ python fanout_producer.py
-
-This program has no output; the messages are routed to the message queue, as instructed by the binding.
-
-4. Go to the windows where you are running consumers or listeners. You should see the following output for each listener or consumer:
-
- message 0
- message 1
- message 2
- message 3
- message 4
- message 5
- message 6
- message 7
- message 8
- message 9
- That's all, folks!
-
-
-
-Running the Publish-Subscribe Examples
----------------------------------------
-
-To run the programs for the Publish-Subscribe example, do the following:
-
-1. Make sure that a qpidd broker is running:
-
- $ ps -eaf | grep qpidd
-
-If a broker is running, you should see the qpidd process in the output of the above command.
-
-2. In separate windows, start one or more topic subscribers by running topic_subscriber.py, as follows:
-
- $ python topic_subscriber.py
-
-You will see output similar to this:
-
- Queues created - please start the topic producer
- Subscribing local queue 'local_news' to news-53408183-fcee-4b92-950b-90abb297e739'
- Subscribing local queue 'local_weather' to weather-53408183-fcee-4b92-950b-90abb297e739'
- Subscribing local queue 'local_usa' to usa-53408183-fcee-4b92-950b-90abb297e739'
- Subscribing local queue 'local_europe' to europe-53408183-fcee-4b92-950b-90abb297e739'
- Messages on 'news' queue:
-
-Each topic consumer creates a set of private queues, and binds each queue to the amq.topic exchange together with a binding that indicates which messages should be routed to the queue.
-
-3.In another window, start the topic publisher, which publishes messages to the amq.topic exchange, as follows:
-
- $ python topic_publisher.py
-
-This program has no output; the messages are routed to the message queues for each topic_consumer as specified by the bindings the consumer created.
-
-4. Go back to the window for each topic consumer. You should see output like this:
-
- Messages on 'news' queue:
- usa.news 0
- usa.news 1
- usa.news 2
- usa.news 3
- usa.news 4
- europe.news 0
- europe.news 1
- europe.news 2
- europe.news 3
- europe.news 4
- That's all, folks!
- Messages on 'weather' queue:
- usa.weather 0
- usa.weather 1
- usa.weather 2
- usa.weather 3
- usa.weather 4
- europe.weather 0
- europe.weather 1
- europe.weather 2
- europe.weather 3
- europe.weather 4
- That's all, folks!
- Messages on 'usa' queue:
- usa.news 0
- usa.news 1
- usa.news 2
- usa.news 3
- usa.news 4
- usa.weather 0
- usa.weather 1
- usa.weather 2
- usa.weather 3
- usa.weather 4
- That's all, folks!
- Messages on 'europe' queue:
- europe.news 0
- europe.news 1
- europe.news 2
- europe.news 3
- europe.news 4
- europe.weather 0
- europe.weather 1
- europe.weather 2
- europe.weather 3
- europe.weather 4
- That's all, folks!
-
-
-Running the Request/Response Examples
---------------------------------------
-
-To run the programs for the Request/Response example, do the following:
-
-1. Make sure that a qpidd broker is running:
-
- $ ps -eaf | grep qpidd
-
-If a broker is running, you should see the qpidd process in the output of the above command.
-
-2. Run the server.
-
- $ python server.py
-
-You should see the following output:
-
- Request server running - run your client now.
- (Times out after 100 seconds ...)
-
-3. In a separate window, start a client:
-
- $ python client.py
-
-You should see the following output:
-
- Request: Twas brillig, and the slithy toves
- Request: Did gyre and gimble in the wabe.
- Request: All mimsy were the borogroves,
- Request: And the mome raths outgrabe.
- Messages on queue: reply_to:db0f862e-6b36-4e0f-a4b2-ad049eb435ce
- Response: TWAS BRILLIG, AND THE SLITHY TOVES
- Response: DID GYRE AND GIMBLE IN THE WABE.
- Response: ALL MIMSY WERE THE BOROGROVES,
- Response: AND THE MOME RATHS OUTGRABE.
- No more messages!
-
-
-Running the XML-based Routing Examples
----------------------------------------
-
-To run the programs for the XML-based Routing example, do the following:
-
-1. Make sure that a qpidd broker is running:
-
- $ ps -eaf | grep qpidd
-
-If a broker is running, you should see the qpidd process in the output of the above command.
-
-2. Declare an XML exchange and a message queue, then bind the queue to the exchange by running declare_queues.py, as follows:
-
- $ python declare_queues.py
-
-This program has no output. After this program has been run, all messages sent to the xml exchange using the routing key weather are sent to the queue named message_queue if they satisfy the conditions specified in the following XQuery, which is used in the binding:
-
- let $w := ./weather
- return $w/station = 'Raleigh-Durham International Airport (KRDU)'
- and $w/temperature_f > 50
- and $w/temperature_f - $w/dewpoint > 5
- and $w/wind_speed_mph > 7
- and $w/wind_speed_mph < 20
-
-3. Publish a series of messages to the xml exchange by running xml_producer.py, as follows:
-
- $ python xml_producer.py
-
-The messages are routed to the message queue, as prescribed by the binding. Each message represents a weather report, such as this one:
-
- <weather>
- <station>Raleigh-Durham International Airport (KRDU)</station>
- <wind_speed_mph>16</wind_speed_mph>
- <temperature_f>70</temperature_f>
- <dewpoint>35</dewpoint>
- </weather>
-
-4. Read the messages from the message queue using direct_consumer.py or listener.py, as follows:
-
- $ python xml_consumer.py
-
- or
-
- $ python listener.py
-
-You should see the following output:
-
-<weather><station>Raleigh-Durham International Airport (KRDU)</station>
-<wind_speed_mph>16</wind_speed_mph><temperature_f>70</temperature_f>
-<dewpoint>35</dewpoint></weather>
-
-
-Running the Headers Examples
------------------------------
-
-To run the headers examples, do the following:
-
-1. Make sure that a qpidd broker is running:
-
- $ ps -eaf | grep qpidd
-
- If a broker is running, you should see the qpidd process in the output of the above command.
-
-2.Declare a message queues and bind them to an exchange by running declare_queues.py, as follows:
-
- $ python declare_queues.py
-
- This program has no output. After this program has been run, all messages sent to the amq.match exchange with an application-header of {'class': 'first'} will be routed to the queue named "first" and messages with an application-header of {'class': 'second'} will be routed to the queue named "second".
-
-3.Publish a series of messages to the amq.match exchange by running headers_producer.py, as follows:
-
- $ python headers_producer.py
-
-This program has no output; the messages are routed to the message queues, as instructed by the bindings.
-
-4. Read the messages from the message queues using headers_consumer.py as follows:
-
- $ python headers_consumer.py
-
-You should see the following output:
-
-message(first) 0
-message(first) 1
-message(first) 2
-message(first) 3
-message(first) 4
-message(first) 5
-message(first) 6
-message(first) 7
-message(first) 8
-message(first) 9
-That's all, folks!
-message(second) 0
-message(second) 1
-message(second) 2
-message(second) 3
-message(second) 4
-message(second) 5
-message(second) 6
-message(second) 7
-message(second) 8
-message(second) 9
-That's all, folks!
+reservations/inventory -- Messaging server that tracks the last
+ known status of machines.