You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2012/12/09 21:53:01 UTC

svn commit: r1419158 [18/18] - in /qpid/site/docs/books/trunk: AMQP-Messaging-Broker-CPP-Book/html/ AMQP-Messaging-Broker-CPP-Book/pdf/ AMQP-Messaging-Broker-Java-Book/html/ AMQP-Messaging-Broker-Java-Book/html/images/ AMQP-Messaging-Broker-Java-Book/p...

Modified: qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-addresses.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-addresses.html?rev=1419158&r1=1419157&r2=1419158&view=diff
==============================================================================
--- qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-addresses.html (original)
+++ qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-addresses.html Sun Dec  9 20:52:52 2012
@@ -1,7 +1,7 @@
 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>2.4. Addresses</title><link rel="stylesheet" href="css/style.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.73.2"><link rel="start" href="index.html" title="Programming in Apache Qpid"><link rel="up" href="ch02.html" title="Chapter 2. Using the Qpid Messaging API"><link rel="prev" href="ch02s03.html" title="2.3. A Simple Messaging Program in .NET C#"><link rel="next" href="replay.html" title="2.5. Sender Capacity and Replay"></head><body><div class="container" bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><DIV class="header"><DIV class="logo"><H1>Apache Qpid™</H1><H2>Open Source AMQP Messaging</H2></DIV></DIV><DIV class="menu_box"><DIV class="menu_box_top"></DIV><DIV class="menu_box_body"><H3>Apache Qpid</H3><UL><LI><A href="http://qpid.apache.org/index.html">Home</A></LI><LI><A href="http://qpid.apache.org/d
 ownload.html">Download</A></LI><LI><A href="http://qpid.apache.org/getting_started.html">Getting Started</A></LI><LI><A href="http://www.apache.org/licenses/">License</A></LI><LI><A href="https://cwiki.apache.org/qpid/faq.html">FAQ</A></LI></UL></DIV><DIV class="menu_box_bottom"></DIV><DIV class="menu_box_top"></DIV><DIV class="menu_box_body"><H3>Documentation</H3><UL><LI><A href="http://qpid.apache.org/documentation.html#doc-release">Latest Release</A></LI><LI><A href="http://qpid.apache.org/documentation.html#doc-trunk">Trunk</A></LI><LI><A href="http://qpid.apache.org/documentation.html#doc-archives">Archive</A></LI></UL></DIV><DIV class="menu_box_bottom"></DIV><DIV class="menu_box_top"></DIV><DIV class="menu_box_body"><H3>Community</H3><UL><LI><A href="http://qpid.apache.org/getting_involved.html">Getting Involved</A></LI><LI><A href="http://qpid.apache.org/source_repository.html">Source Repository</A></LI><LI><A href="http://qpid.apache.org/mailing_lists.html">Mailing L
 ists</A></LI><LI><A href="https://cwiki.apache.org/qpid/">Wiki</A></LI><LI><A href="https://issues.apache.org/jira/browse/qpid">Issue Reporting</A></LI><LI><A href="http://qpid.apache.org/people.html">People</A></LI><LI><A href="http://qpid.apache.org/acknowledgements.html">Acknowledgements</A></LI></UL></DIV><DIV class="menu_box_bottom"></DIV><DIV class="menu_box_top"></DIV><DIV class="menu_box_body"><H3>Developers</H3><UL><LI><A href="https://cwiki.apache.org/qpid/building.html">Building Qpid</A></LI><LI><A href="https://cwiki.apache.org/qpid/developer-pages.html">Developer Pages</A></LI></UL></DIV><DIV class="menu_box_bottom"></DIV><DIV class="menu_box_top"></DIV><DIV class="menu_box_body"><H3>About AMQP</H3><UL><LI><A href="http://qpid.apache.org/amqp.html">What is AMQP?</A></LI></UL></DIV><DIV class="menu_box_bottom"></DIV><DIV class="menu_box_top"></DIV><DIV class="menu_box_body"><H3>About Apache</H3><UL><LI><A href="http://www.apache.org">Home</A></LI><LI><A href="htt
 p://www.apache.org/foundation/sponsorship.html">Sponsorship</A></LI><LI><A href="http://www.apache.org/foundation/thanks.html">Thanks</A></LI><LI><A href="http://www.apache.org/security/">Security</A></LI></UL></DIV><DIV class="menu_box_bottom"></DIV></DIV><div class="main_text_area"><div class="main_text_area_top"></div><div class="main_text_area_body"><DIV class="breadcrumbs"><span class="breadcrumb-link"><a href="index.html">Programming in Apache Qpid</a></span> &gt; <span class="breadcrumb-link"><a href="ch02.html">Using the Qpid Messaging API</a></span> &gt; <span class="breadcrumb-node">Addresses</span></DIV><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="section-addresses"></a>2.4. Addresses</h2></div></div></div><p>An <em class="firstterm">address</em> is the name of a message
       target or message source.
 
-      <sup>[<a name="id2523484" href="#ftn.id2523484" class="footnote">2</a>]</sup>
+      <sup>[<a name="id2523110" href="#ftn.id2523110" class="footnote">2</a>]</sup>
 
       The methods that create senders and receivers require an
       address. The details of sending to a particular target or
@@ -12,22 +12,22 @@
       Qpid Messaging API recognises two kinds of nodes,
       <em class="firstterm">queues</em> and <em class="firstterm">topics</em>
 
-      <sup>[<a name="id2527054" href="#ftn.id2527054" class="footnote">3</a>]</sup>.
+      <sup>[<a name="id2541777" href="#ftn.id2541777" class="footnote">3</a>]</sup>.
 
       A queue stores each message until it has been received and
       acknowledged, and only one receiver can receive a given message
 
-      <sup>[<a name="id2548768" href="#ftn.id2548768" class="footnote">4</a>]</sup>.
+      <sup>[<a name="id2539549" href="#ftn.id2539549" class="footnote">4</a>]</sup>.
 
       A topic immediately delivers a message to all eligible
       receivers; if there are no eligible receivers, it discards the
       message.  In the AMQP 0-10 implementation of the API,
 
-      <sup>[<a name="id2525223" href="#ftn.id2525223" class="footnote">5</a>]</sup>
+      <sup>[<a name="id2532387" href="#ftn.id2532387" class="footnote">5</a>]</sup>
 
       queues map to AMQP queues, and topics map to AMQP exchanges.
 
-      <sup>[<a name="id2550301" href="#ftn.id2550301" class="footnote">6</a>]</sup>
+      <sup>[<a name="id2526704" href="#ftn.id2526704" class="footnote">6</a>]</sup>
       </p><p>In the rest of this tutorial, we present many examples
       using two programs that take an address as a command line
       parameter.  <span class="command"><strong>spout</strong></span> sends messages to the
@@ -39,13 +39,13 @@
       configure behavior—use the <span class="command"><strong>-h</strong></span> option
       for documentation on these options.
 
-      <sup>[<a name="id2536025" href="#ftn.id2536025" class="footnote">7</a>]</sup>
+      <sup>[<a name="id2542454" href="#ftn.id2542454" class="footnote">7</a>]</sup>
 
 
       The examples in this tutorial also use the
       <span class="command"><strong>qpid-config</strong></span> utility to configure AMQP 0-10
       queues and exchanges on a Qpid broker.
-      </p><div class="example"><a name="id2510950"></a><p class="title"><b>Example 2.4. Queues</b></p><div class="example-contents"><p>Create a queue with <span class="command"><strong>qpid-config</strong></span>, send a message using
+      </p><div class="example"><a name="id2530025"></a><p class="title"><b>Example 2.4. Queues</b></p><div class="example-contents"><p>Create a queue with <span class="command"><strong>qpid-config</strong></span>, send a message using
 	<span class="command"><strong>spout</strong></span>, and read it using <span class="command"><strong>drain</strong></span>:</p><pre class="screen">
 	  $ qpid-config add queue hello-world
 	  $ ./spout hello-world
@@ -58,7 +58,7 @@
 	<span class="command"><strong>drain</strong></span> one more time, no messages will be retrieved.</p><pre class="screen">
 	  $ ./drain hello-world
 	  $
-	</pre></div></div><br class="example-break"><div class="example"><a name="id2537559"></a><p class="title"><b>Example 2.5. Topics</b></p><div class="example-contents"><p>This example is similar to the previous example, but it
+	</pre></div></div><br class="example-break"><div class="example"><a name="id2535543"></a><p class="title"><b>Example 2.5. Topics</b></p><div class="example-contents"><p>This example is similar to the previous example, but it
 	uses a topic instead of a queue.</p><p>First, use <span class="command"><strong>qpid-config</strong></span> to remove the queue
 	and create an exchange with the same name:</p><pre class="screen">
 	  $ qpid-config del queue hello-world
@@ -85,7 +85,7 @@
 	  Message(properties={spout-id:7da2d27d-93e6-4803-8a61-536d87b8d93f:0}, content='')
         </pre><p>You can run <span class="command"><strong>drain</strong></span> in several separate
 	windows; each creates a subscription for the exchange, and
-	each receives all messages sent to the exchange.</p></div></div><br class="example-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2516584"></a>2.4.1. Address Strings</h3></div></div></div><p>So far, our examples have used address strings that
+	each receives all messages sent to the exchange.</p></div></div><br class="example-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2527610"></a>2.4.1. Address Strings</h3></div></div></div><p>So far, our examples have used address strings that
 	contain only the name of a node. An <em class="firstterm">address
 	string</em> can also contain a
 	<em class="firstterm">subject</em> and
@@ -97,7 +97,7 @@
 	maps, or lists. A complete BNF for address strings appears in
 	<a class="xref" href="section-addresses.html#section-address-string-bnf" title="2.4.4. Address String Grammar">Section 2.4.4, “Address String Grammar”</a>.</p><p>So far, the address strings in this tutorial have only
 	used simple names. The following sections show how to use
-	subjects and options.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2522247"></a>2.4.2. Subjects</h3></div></div></div><p>Every message has a property called
+	subjects and options.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2531698"></a>2.4.2. Subjects</h3></div></div></div><p>Every message has a property called
 	<em class="firstterm">subject</em>, which is analogous to the
 	subject on an email message. If no subject is specified, the
 	message's subject is null. For convenience, address strings
@@ -116,7 +116,7 @@
 	    Currently, a receiver bound to a queue ignores subjects,
 	    receiving messages from the queue without filtering. Support
 	    for subject filtering on queues will be implemented soon.
-	  </p></div><div class="example"><a name="id2549922"></a><p class="title"><b>Example 2.6. Using subjects</b></p><div class="example-contents"><p>In this example we show how subjects affect message
+	  </p></div><div class="example"><a name="id2543150"></a><p class="title"><b>Example 2.6. Using subjects</b></p><div class="example-contents"><p>In this example we show how subjects affect message
 	  flow.</p><p>First, let's use <span class="command"><strong>qpid-config</strong></span> to create a topic exchange.</p><pre class="screen">
 	    $ qpid-config add exchange topic news-service
 	  </pre><p>Now we use drain to receive messages from <code class="literal">news-service</code> that match the subject <code class="literal">sports</code>.</p><p><span class="emphasis"><em>First Window:</em></span></p><pre class="screen">
@@ -152,7 +152,7 @@
 	<code class="literal">usa.news</code>; if it is
 	<code class="literal">europe.#</code>, it matches messages with subjects
 	like <code class="literal">europe.news</code> or
-	<code class="literal">europe.pseudo.news</code>.</p><div class="example"><a name="id2516199"></a><p class="title"><b>Example 2.7. Subjects with multi-word keys</b></p><div class="example-contents"><p>This example uses drain and spout to demonstrate the
+	<code class="literal">europe.pseudo.news</code>.</p><div class="example"><a name="id2536833"></a><p class="title"><b>Example 2.7. Subjects with multi-word keys</b></p><div class="example-contents"><p>This example uses drain and spout to demonstrate the
 	  use of subjects with two-word keys.</p><p>Let's use <span class="command"><strong>drain</strong></span> with the subject
 	  <code class="literal">*.news</code> to listen for messages in which
 	  the second word of the key is
@@ -187,7 +187,7 @@
 	    Message(properties={qpid.subject:news, spout-id:cbd42b0f-c87b-4088-8206-26d7627c9640:0}, content='')
 	    Message(properties={qpid.subject:usa.news, spout-id:234a78d7-daeb-4826-90e1-1c6540781eac:0}, content='')
 	    Message(properties={qpid.subject:usa.faux.news, spout-id:6029430a-cfcb-4700-8e9b-cbe4a81fca5f:0}, content='')
-	  </pre></div></div><br class="example-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2541123"></a>2.4.3. Address String Options</h3></div></div></div><p>
+	  </pre></div></div><br class="example-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2518054"></a>2.4.3. Address String Options</h3></div></div></div><p>
 	  The options in an address string can contain additional
 	  information for the senders or receivers created for it,
 	  including:
@@ -223,11 +223,11 @@
 	  Let's use some examples to show how these different kinds of
 	  address string options affect the behavior of senders and
 	  receives.
-	</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2542675"></a>2.4.3.1. assert</h4></div></div></div><p>
+	</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2541273"></a>2.4.3.1. assert</h4></div></div></div><p>
 	    In this section, we use the <code class="literal">assert</code> option
 	    to ensure that the address resolves to a node of the required
 	    type.
-	  </p><div class="example"><a name="id2549818"></a><p class="title"><b>Example 2.8. Assertions on Nodes</b></p><div class="example-contents"><p>Let's use <span class="command"><strong>qpid-config</strong></span> to create a
+	  </p><div class="example"><a name="id2534913"></a><p class="title"><b>Example 2.8. Assertions on Nodes</b></p><div class="example-contents"><p>Let's use <span class="command"><strong>qpid-config</strong></span> to create a
 	    queue and a topic.</p><pre class="screen">
 	      $ qpid-config add queue my-queue
 	      $ qpid-config add exchange topic my-topic
@@ -252,15 +252,15 @@
 	      Queue my-topic does not exist
 	    </pre></div></div><br class="example-break"><p>Now let's use the <code class="literal">create</code> option to
 	  create the queue <code class="literal">xoxox</code> if it does not already
-	  exist:</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2547298"></a>2.4.3.2. create</h4></div></div></div><p>In previous examples, we created the queue before
+	  exist:</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2536327"></a>2.4.3.2. create</h4></div></div></div><p>In previous examples, we created the queue before
 	  listening for messages on it. Using <code class="literal">create:
 	  always</code>, the queue is automatically created if it
-	  does not exist.</p><div class="example"><a name="id2542532"></a><p class="title"><b>Example 2.9. Creating a Queue Automatically</b></p><div class="example-contents"><p><span class="emphasis"><em>First Window:</em></span></p><pre class="screen">$ ./drain -t 30 "xoxox ; {create: always}"</pre><p>Now we can send messages to this queue:</p><p><span class="emphasis"><em>Second Window:</em></span></p><pre class="screen">$ ./spout "xoxox ; {create: always}"</pre><p>Returning to the first window, we see that <span class="command"><strong>drain</strong></span> has received this message:</p><pre class="screen">Message(properties={spout-id:1a1a3842-1a8b-4f88-8940-b4096e615a7d:0}, content='')</pre></div></div><br class="example-break"><p>The details of the node thus created can be controlled by further options within the node. See <a class="xref" href="section-addresses.html#table-node-properties" title="Table 2.2. Node Properties">Table 2.2, “Node Propertiesâ€�
 �</a> for details.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2533104"></a>2.4.3.3. browse</h4></div></div></div><p>Some options specify message transfer semantics; for
+	  does not exist.</p><div class="example"><a name="id2535465"></a><p class="title"><b>Example 2.9. Creating a Queue Automatically</b></p><div class="example-contents"><p><span class="emphasis"><em>First Window:</em></span></p><pre class="screen">$ ./drain -t 30 "xoxox ; {create: always}"</pre><p>Now we can send messages to this queue:</p><p><span class="emphasis"><em>Second Window:</em></span></p><pre class="screen">$ ./spout "xoxox ; {create: always}"</pre><p>Returning to the first window, we see that <span class="command"><strong>drain</strong></span> has received this message:</p><pre class="screen">Message(properties={spout-id:1a1a3842-1a8b-4f88-8940-b4096e615a7d:0}, content='')</pre></div></div><br class="example-break"><p>The details of the node thus created can be controlled by further options within the node. See <a class="xref" href="section-addresses.html#table-node-properties" title="Table 2.2. Node Properties">Table 2.2, “Node Propertiesâ€�
 �</a> for details.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2519383"></a>2.4.3.3. browse</h4></div></div></div><p>Some options specify message transfer semantics; for
 	  instance, they may state whether messages should be consumed or
 	  read in browsing mode, or specify reliability
 	  characteristics. The following example uses the
 	  <code class="literal">browse</code> option to receive messages without
-	  removing them from a queue.</p><div class="example"><a name="id2549929"></a><p class="title"><b>Example 2.10. Browsing a Queue</b></p><div class="example-contents"><p>
+	  removing them from a queue.</p><div class="example"><a name="id2512294"></a><p class="title"><b>Example 2.10. Browsing a Queue</b></p><div class="example-contents"><p>
 	      Let's use the browse mode to receive messages without
 	      removing them from the queue. First we send three messages to the
 	      queue:
@@ -278,7 +278,7 @@
 	      Message(properties={spout-id:fbb93f30-0e82-4b6d-8c1d-be60eb132530:0}, content='one')
 	      Message(properties={spout-id:ab9e7c31-19b0-4455-8976-34abe83edc5f:0}, content='two')
 	      Message(properties={spout-id:ea75d64d-ea37-47f9-96a9-d38e01c97925:0}, content='three')
-	    </pre></div></div><br class="example-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2516029"></a>2.4.3.4. x-bindings</h4></div></div></div><p>Greater control over the AMQP 0-10 binding process can
+	    </pre></div></div><br class="example-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2522301"></a>2.4.3.4. x-bindings</h4></div></div></div><p>Greater control over the AMQP 0-10 binding process can
 	  be achieved by including an <code class="literal">x-bindings</code>
 	  option in an address string.
 
@@ -308,7 +308,7 @@
 	  </pre><p>When using longer queries with <span class="command"><strong>drain</strong></span>,
 	  it is often useful to place the query in a file, and use
 	  <span class="command"><strong>cat</strong></span> in the command line. We do this in the
-	  following example.</p><div class="example"><a name="id2527268"></a><p class="title"><b>Example 2.11. Using the XML Exchange</b></p><div class="example-contents"><p>This example uses an x-binding that contains queries, which filter based on the content of XML messages. Here is an XQuery that we will use in this example:</p><pre class="programlisting">
+	  following example.</p><div class="example"><a name="id2525121"></a><p class="title"><b>Example 2.11. Using the XML Exchange</b></p><div class="example-contents"><p>This example uses an x-binding that contains queries, which filter based on the content of XML messages. Here is an XQuery that we will use in this example:</p><pre class="programlisting">
 	      
 		       let $w := ./weather
 		       return $w/station = 'Raleigh-Durham International Airport (KRDU)'
@@ -337,7 +337,7 @@
 	      &lt;temperature_f&gt;40&lt;/temperature_f&gt;
 	      &lt;dewpoint&gt;35&lt;/dewpoint&gt;
 	      &lt;/weather&gt;') 
-	      </pre></div></div><br class="example-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2513678"></a>2.4.3.5. Address String Options - Reference</h4></div></div></div><div class="table"><a name="id2522251"></a><p class="title"><b>Table 2.1. Address String Options</b></p><div class="table-contents"><table summary="Address String Options" width="100%" border="1"><colgroup><col><col><col></colgroup><thead><tr><th>option</th><th>value</th><th>semantics</th></tr></thead><tbody><tr><td>
+	      </pre></div></div><br class="example-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2531785"></a>2.4.3.5. Address String Options - Reference</h4></div></div></div><div class="table"><a name="id2550294"></a><p class="title"><b>Table 2.1. Address String Options</b></p><div class="table-contents"><table summary="Address String Options" width="100%" border="1"><colgroup><col><col><col></colgroup><thead><tr><th>option</th><th>value</th><th>semantics</th></tr></thead><tbody><tr><td>
 		    assert
 		  </td><td>
 		    one of: always, never, sender or receiver
@@ -454,7 +454,7 @@
 		    that a message is not lost, and is delivered precisely
 		    once. Currently only <code class="literal">unreliable</code>
 		    and <code class="literal">at-least-once</code> are supported.
-		    <sup>[<a name="id2494475" href="#ftn.id2494475" class="footnote">a</a>]</sup>
+		    <sup>[<a name="id2494479" href="#ftn.id2494479" class="footnote">a</a>]</sup>
 		  </td></tr><tr><td>
 		    durable
 		  </td><td>
@@ -489,7 +489,7 @@
 		    independent of the create option. They are considered
 		    logically part of the linking process rather than of
 		    node creation.
-		  </td></tr></tbody><tbody class="footnotes"><tr><td colspan="3"><div class="footnote"><p><sup>[<a name="ftn.id2494475" href="#id2494475" class="para">a</a>] </sup>If at-most-once is requested,
+		  </td></tr></tbody><tbody class="footnotes"><tr><td colspan="3"><div class="footnote"><p><sup>[<a name="ftn.id2494479" href="#id2494479" class="para">a</a>] </sup>If at-most-once is requested,
 		    unreliable will be used and for durable messages on
 		    durable queues there is the possibility that messages
 		    will be redelivered; if exactly-once is requested,
@@ -545,10 +545,10 @@
 	</pre><div class="itemizedlist"><p class="title"><b>Create, Delete, and Assert Policies</b></p><p>The create, delete, and assert policies specify who should
 	  perfom the associated action:</p><ul><li><p><span class="emphasis"><em>always</em></span>: the action is performed by any messaging client</p></li><li><p><span class="emphasis"><em>sender</em></span>: the action is only performed by a sender</p></li><li><p><span class="emphasis"><em>receiver</em></span>: the action is only performed by a receiver</p></li><li><p><span class="emphasis"><em>never</em></span>: the action is never performed (this is the default)</p></li></ul></div><div class="itemizedlist"><p class="title"><b>Node-Type</b></p><p>The node-type is one of:</p><ul><li><p><span class="emphasis"><em>topic</em></span>: in the AMQP 0-10
 	  mapping, a topic node defaults to the topic exchange, x-declare
-	  may be used to specify other exchange types</p></li><li><p><span class="emphasis"><em>queue</em></span>: this is the default node-type</p></li></ul></div></div><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a name="ftn.id2523484" href="#id2523484" class="para">2</a>] </sup>In the programs we have just seen, we used
+	  may be used to specify other exchange types</p></li><li><p><span class="emphasis"><em>queue</em></span>: this is the default node-type</p></li></ul></div></div><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a name="ftn.id2523110" href="#id2523110" class="para">2</a>] </sup>In the programs we have just seen, we used
       <code class="literal">amq.topic</code> as the default address if none is
       passed in. This is the name of a standard exchange that always
-      exists on an AMQP 0-10 messaging broker.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2527054" href="#id2527054" class="para">3</a>] </sup>The terms <span class="emphasis"><em>queue</em></span> and
+      exists on an AMQP 0-10 messaging broker.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2541777" href="#id2541777" class="para">3</a>] </sup>The terms <span class="emphasis"><em>queue</em></span> and
       <span class="emphasis"><em>topic</em></span> here were chosen to align with
       their meaning in JMS. These two addressing 'patterns',
       queue and topic, are sometimes refered as point-to-point
@@ -556,11 +556,11 @@
       called a <span class="emphasis"><em>topic exchange</em></span>. When the term
       <span class="emphasis"><em>topic</em></span> occurs alone, it refers to a
       Messaging API topic, not the topic
-      exchange.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2548768" href="#id2548768" class="para">4</a>] </sup>There are exceptions to this rule; for instance,
+      exchange.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2539549" href="#id2539549" class="para">4</a>] </sup>There are exceptions to this rule; for instance,
       a receiver can use <code class="literal">browse</code> mode, which leaves
       messages on the queue for other receivers to
-      read.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2525223" href="#id2525223" class="para">5</a>] </sup>The AMQP 0-10 implementation is the only one
-      that currently exists.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2550301" href="#id2550301" class="para">6</a>] </sup>In AMQP 0-10, messages are sent to
+      read.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2532387" href="#id2532387" class="para">5</a>] </sup>The AMQP 0-10 implementation is the only one
+      that currently exists.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2526704" href="#id2526704" class="para">6</a>] </sup>In AMQP 0-10, messages are sent to
       exchanges, and read from queues. The Messaging API also
       allows a sender to send messages to a queue; internally,
       Qpid implements this by sending the message to the default
@@ -569,7 +569,7 @@
       from a topic; internally, Qpid implements this by setting up
       a private subscription queue for the receiver and binding
       the subscription queue to the exchange that corresponds to
-      the topic.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2536025" href="#id2536025" class="para">7</a>] </sup>Currently, the C++, Python, and .NET C#
+      the topic.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2542454" href="#id2542454" class="para">7</a>] </sup>Currently, the C++, Python, and .NET C#
       implementations of <span class="command"><strong>drain</strong></span> and
       <span class="command"><strong>spout</strong></span> have slightly different
       options. This tutorial uses the C++ implementation. The

Modified: qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-amqp0-10-mapping.html
URL: http://svn.apache.org/viewvc/qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-amqp0-10-mapping.html?rev=1419158&r1=1419157&r2=1419158&view=diff
==============================================================================
--- qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-amqp0-10-mapping.html (original)
+++ qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/html/section-amqp0-10-mapping.html Sun Dec  9 20:52:52 2012
@@ -75,7 +75,7 @@
             subject exactly). For more control the x-bindings element
             in the link properties must be used.
           </p></li><li><p>
-            For the XML exchange,<sup>[<a name="id2552904" href="#ftn.id2552904" class="footnote">12</a>]</sup> if a subject is specified it is
+            For the XML exchange,<sup>[<a name="id2552907" href="#ftn.id2552907" class="footnote">12</a>]</sup> if a subject is specified it is
             used as the binding key and an XQuery is defined that
             matches any message with that value for
             qpid.subject. Again this means that only messages whose
@@ -104,12 +104,12 @@
       <code class="varname">message-properties</code> struct, and
       <code class="varname">dp</code> refers to an AMQP 0-10
       <code class="varname">delivery-properties</code> struct.</p><div class="table"><a name="table-amqp0-10-message-properties"></a><p class="title"><b>Table 2.9. Mapping to AMQP 0-10 Message Properties</b></p><div class="table-contents"><table summary="Mapping to AMQP 0-10 Message Properties" width="100%" border="1"><colgroup><col><col><col></colgroup><thead><tr><th>Python API</th><th>C++ API
-	      <sup>[<a name="id2553022" href="#ftn.id2553022" class="footnote">a</a>]</sup>
-	      </th><th>AMQP 0-10 Property<sup>[<a name="id2553040" href="#ftn.id2553040" class="footnote">b</a>]</sup></th></tr></thead><tbody><tr><td>msg.id</td><td>msg.{get,set}MessageId()</td><td>mp.message_id</td></tr><tr><td>msg.subject</td><td>msg.{get,set}Subject()</td><td>mp.application_headers["qpid.subject"]</td></tr><tr><td>msg.user_id</td><td>msg.{get,set}UserId()</td><td>mp.user_id</td></tr><tr><td>msg.reply_to</td><td>msg.{get,set}ReplyTo()</td><td>mp.reply_to<sup>[<a name="id2553102" href="#ftn.id2553102" class="footnote">c</a>]</sup></td></tr><tr><td>msg.correlation_id</td><td>msg.{get,set}CorrelationId()</td><td>mp.correlation_id</td></tr><tr><td>msg.durable</td><td>msg.{get,set}Durable()</td><td>dp.delivery_mode == delivery_mode.persistent<sup>[<a name="id2553128" href="#ftn.id2553128" class="footnote">d</a>]</sup></td></tr><tr><td>msg.priority</td><td>msg.{get,set}Priority()</td><td>dp.priority</td></tr><tr><td>msg.ttl</td><td>msg.{get,set}Ttl()</td><td>dp.ttl</t
 d></tr><tr><td>msg.redelivered</td><td>msg.{get,set}Redelivered()</td><td>dp.redelivered</td></tr><tr><td>msg.properties</td><td>msg.getProperties()/msg.setProperty()</td><td>mp.application_headers</td></tr><tr><td>msg.content_type</td><td>msg.{get,set}ContentType()</td><td>mp.content_type</td></tr></tbody><tbody class="footnotes"><tr><td colspan="3"><div class="footnote"><p><sup>[<a name="ftn.id2553022" href="#id2553022" class="para">a</a>] </sup>
+	      <sup>[<a name="id2553025" href="#ftn.id2553025" class="footnote">a</a>]</sup>
+	      </th><th>AMQP 0-10 Property<sup>[<a name="id2553042" href="#ftn.id2553042" class="footnote">b</a>]</sup></th></tr></thead><tbody><tr><td>msg.id</td><td>msg.{get,set}MessageId()</td><td>mp.message_id</td></tr><tr><td>msg.subject</td><td>msg.{get,set}Subject()</td><td>mp.application_headers["qpid.subject"]</td></tr><tr><td>msg.user_id</td><td>msg.{get,set}UserId()</td><td>mp.user_id</td></tr><tr><td>msg.reply_to</td><td>msg.{get,set}ReplyTo()</td><td>mp.reply_to<sup>[<a name="id2553104" href="#ftn.id2553104" class="footnote">c</a>]</sup></td></tr><tr><td>msg.correlation_id</td><td>msg.{get,set}CorrelationId()</td><td>mp.correlation_id</td></tr><tr><td>msg.durable</td><td>msg.{get,set}Durable()</td><td>dp.delivery_mode == delivery_mode.persistent<sup>[<a name="id2553131" href="#ftn.id2553131" class="footnote">d</a>]</sup></td></tr><tr><td>msg.priority</td><td>msg.{get,set}Priority()</td><td>dp.priority</td></tr><tr><td>msg.ttl</td><td>msg.{get,set}Ttl()</td><td>dp.ttl</t
 d></tr><tr><td>msg.redelivered</td><td>msg.{get,set}Redelivered()</td><td>dp.redelivered</td></tr><tr><td>msg.properties</td><td>msg.getProperties()/msg.setProperty()</td><td>mp.application_headers</td></tr><tr><td>msg.content_type</td><td>msg.{get,set}ContentType()</td><td>mp.content_type</td></tr></tbody><tbody class="footnotes"><tr><td colspan="3"><div class="footnote"><p><sup>[<a name="ftn.id2553025" href="#id2553025" class="para">a</a>] </sup>
 		  The .NET Binding for C++ Messaging provides all the
 		  message and delivery properties described in the C++ API.
 		  See  <a class="xref" href="ch05s03.html#table-Dotnet-Binding-Message" title="Table 5.13. .NET Binding for the C++ Messaging API Class: Message">Table 5.13, “.NET Binding for the C++ Messaging API Class: Message”</a> .
-		</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553040" href="#id2553040" class="para">b</a>] </sup>In these entries, <code class="literal">mp</code> refers to an AMQP message property, and <code class="literal">dp</code> refers to an AMQP delivery property.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553102" href="#id2553102" class="para">c</a>] </sup>The reply_to is converted from the protocol representation into an address.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553128" href="#id2553128" class="para">d</a>] </sup>Note that msg.durable is a boolean, not an enum.</p></div></td></tr></tbody></table></div></div><br class="table-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="section-amqp0-10-message-props"></a>2.16.1. 0-10 Message Property Keys</h3></div></div></div><p>
+		</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553042" href="#id2553042" class="para">b</a>] </sup>In these entries, <code class="literal">mp</code> refers to an AMQP message property, and <code class="literal">dp</code> refers to an AMQP delivery property.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553104" href="#id2553104" class="para">c</a>] </sup>The reply_to is converted from the protocol representation into an address.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553131" href="#id2553131" class="para">d</a>] </sup>Note that msg.durable is a boolean, not an enum.</p></div></td></tr></tbody></table></div></div><br class="table-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="section-amqp0-10-message-props"></a>2.16.1. 0-10 Message Property Keys</h3></div></div></div><p>
           The QPID Messaging API also recognises special message property keys and
           automatically provides a mapping to their corresponding AMQP 0-10 definitions.
         </p><div class="itemizedlist"><ul><li><p>
@@ -136,8 +136,8 @@
               (<code class="literal">delivery-properties.timestamp</code>), the timestamp value will
               be made available via the <code class="literal">x-amqp-0-10.timestamp</code> message
               property.
-              <sup>[<a name="id2553320" href="#ftn.id2553320" class="footnote">13</a>]</sup>
-            </p></li></ul></div><div class="example"><a name="id2553331"></a><p class="title"><b>Example 2.20. Accessing the AMQP 0-10 Message Timestamp in Python</b></p><div class="example-contents"><p>
+              <sup>[<a name="id2553322" href="#ftn.id2553322" class="footnote">13</a>]</sup>
+            </p></li></ul></div><div class="example"><a name="id2553334"></a><p class="title"><b>Example 2.20. Accessing the AMQP 0-10 Message Timestamp in Python</b></p><div class="example-contents"><p>
             The following code fragment checks for and extracts the message timestamp from
             a received message.
           </p><pre class="programlisting">
@@ -147,7 +147,7 @@
 	    print("Timestamp=%s" % str(msg.properties["x-amqp-0-10.timestamp"]))
 	    except Empty:
 	    pass
-          </pre></div></div><br class="example-break"><div class="example"><a name="id2553355"></a><p class="title"><b>Example 2.21. Accessing the AMQP 0-10 Message Timestamp in C++</b></p><div class="example-contents"><p>
+          </pre></div></div><br class="example-break"><div class="example"><a name="id2553358"></a><p class="title"><b>Example 2.21. Accessing the AMQP 0-10 Message Timestamp in C++</b></p><div class="example-contents"><p>
             The same example, except in C++.
           </p><pre class="programlisting">
 	    messaging::Message msg;
@@ -156,9 +156,9 @@
 	    std::cout &lt;&lt; "Timestamp=" &lt;&lt; msg.getProperties()["x-amqp-0-10.timestamp"].asString() &lt;&lt; std::endl;
 	    }
 	    }
-          </pre></div></div><br class="example-break"></div><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a name="ftn.id2552904" href="#id2552904" class="para">12</a>] </sup>Note that the XML
+          </pre></div></div><br class="example-break"></div><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a name="ftn.id2552907" href="#id2552907" class="para">12</a>] </sup>Note that the XML
             exchange is not a standard AMQP exchange type. It is a
             Qpid extension and is currently only supported by the C++
-            broker.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553320" href="#id2553320" class="para">13</a>] </sup>
+            broker.</p></div><div class="footnote"><p><sup>[<a name="ftn.id2553322" href="#id2553322" class="para">13</a>] </sup>
                   This special property is currently not supported by the Qpid JMS client.
                 </p></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s15.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="Message-Groups-Guide.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.15. Logging </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.17. Using Message Groups</td></tr></table></div><div class="main_text_area_bottom"></div></div></div></body></html>

Modified: qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/pdf/Programming-In-Apache-Qpid.pdf
URL: http://svn.apache.org/viewvc/qpid/site/docs/books/trunk/Programming-In-Apache-Qpid/pdf/Programming-In-Apache-Qpid.pdf?rev=1419158&r1=1419157&r2=1419158&view=diff
==============================================================================
Binary files - no diff available.



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org