You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by jo...@apache.org on 2010/05/05 23:22:14 UTC

svn commit: r941497 - /qpid/trunk/qpid/python/examples/api/hello_xml

Author: jonathan
Date: Wed May  5 21:22:14 2010
New Revision: 941497

URL: http://svn.apache.org/viewvc?rev=941497&view=rev
Log:
XML Exchange example.

Added:
    qpid/trunk/qpid/python/examples/api/hello_xml   (with props)

Added: qpid/trunk/qpid/python/examples/api/hello_xml
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/python/examples/api/hello_xml?rev=941497&view=auto
==============================================================================
--- qpid/trunk/qpid/python/examples/api/hello_xml (added)
+++ qpid/trunk/qpid/python/examples/api/hello_xml Wed May  5 21:22:14 2010
@@ -0,0 +1,77 @@
+#!/usr/bin/env python
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+import sys
+from qpid.messaging import *
+
+broker =  "localhost:5672"
+connection = Connection(broker)
+
+try:
+  connection.open()
+  session = connection.session()
+
+# Set up the receiver
+  query = """
+   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   """
+
+#  query="./weather"
+
+  address = """
+    xml; {
+       create: always, 
+       node:{ type: queue }, 
+       link: { 
+         x-bindings: [{ exchange: xml, key: weather, arguments: { xquery: %r} }] 
+       } 
+    }
+    """ % query
+
+  receiver = session.receiver(address)
+
+# Send an observation
+
+  observations = """
+      <weather>
+         <station>Raleigh-Durham International Airport (KRDU)</station>
+         <wind_speed_mph>16</wind_speed_mph>
+         <temperature_f>70</temperature_f>
+         <dewpoint>35</dewpoint>
+      </weather>  """
+
+  message = Message(subject="weather", content=observations)
+  sender = session.sender("xml")
+  sender.send(message)
+
+# Retrieve matching message from the receiver and print it
+
+  message = receiver.fetch(timeout=1)
+  print message.content
+  session.acknowledge()
+
+except MessagingError,m:
+  print m
+finally:
+  connection.close()

Propchange: qpid/trunk/qpid/python/examples/api/hello_xml
------------------------------------------------------------------------------
    svn:executable = *



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org