Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113098.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113098.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113098.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113099.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113099.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113099.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113100.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113100.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113100.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113101.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113101.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113101.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113102.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113102.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113102.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113103.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113103.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113103.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113104.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113104.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113104.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113105.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113105.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113105.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113106.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113106.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113106.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113107.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113107.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113107.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113108.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113108.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113108.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113109.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113109.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113109.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113110.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113110.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113110.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113111.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113111.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113111.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113112.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113112.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113112.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113113.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113113.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113113.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113114.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113114.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113114.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113115.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113115.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113115.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113116.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113116.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113116.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113117.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113117.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113117.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113118.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113118.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113118.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113119.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113119.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/jmx_console/3113119.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/qpid-logo.png
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/qpid-logo.png?rev=1097544&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html-single/images/qpid-logo.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01.html?rev=1097544&view=auto
==============================================================================
--- qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01.html 
(added)
+++ qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01.html Thu 
Apr 28 16:49:49 2011
@@ -0,0 +1,300 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; 
charset=ISO-8859-1"><title>Chapter 1.  Running the AMQP Messaging 
Broker</title><meta name="generator" content="DocBook XSL Stylesheets 
V1.75.2"><link rel="home" href="index.html" title="AMQP Messaging Broker 
(Implemented in C++)"><link rel="up" href="index.html" title="AMQP Messaging 
Broker (Implemented in C++)"><link rel="prev" href="pr01.html" 
title="Introduction"><link rel="next" href="ch01s02.html" title="1.2.  Cheat 
Sheet for configuring Queue Options"></head><body bgcolor="white" text="black" 
link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table 
width="100%" summary="Navigation header"><tr><th colspan="3" 
align="center">Chapter 1. 
+      Running the AMQP Messaging Broker
+    </th></tr><tr><td width="20%" align="left"><a accesskey="p" 
href="pr01.html">Prev</a> </td><th width="60%" align="center"> </th><td 
width="20%" align="right"> <a accesskey="n" 
href="ch01s02.html">Next</a></td></tr></table><hr></div><div class="chapter" 
title="Chapter 1.  Running the AMQP Messaging Broker"><div 
class="titlepage"><div><div><h2 class="title"><a 
name="id2568005"></a>Chapter 1. 
+      Running the AMQP Messaging Broker
+    </h2></div></div></div><div class="toc"><p><b>Table of 
Contents</b></p><dl><dt><span class="section"><a 
href="ch01.html#section-Running-a-Qpid-CPP-Broker">1.1. 
+    Running a Qpid C++ Broker
+  </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01.html#RASC-BuildingtheCppBrokerandClientLibraries">1.1.1. 
+            Building the
+            C++ Broker and Client Libraries
+          </a></span></dt><dt><span class="section"><a 
href="ch01.html#RASC-RunningtheCppBroker">1.1.2. 
+            Running the C++ Broker
+          </a></span></dt><dt><span class="section"><a 
href="ch01.html#RASC-Mostcommonquestionsgettingqpiddrunning">1.1.3. 
+            Most
+            common questions getting qpidd running
+          </a></span></dt><dt><span class="section"><a 
href="ch01.html#RASC-Authentication">1.1.4. 
+            Authentication
+          </a></span></dt><dt><span class="section"><a 
href="ch01.html#RASC-Slightlymorecomplexconfiguration">1.1.5. 
+            Slightly more
+            complex configuration
+          </a></span></dt><dt><span class="section"><a 
href="ch01.html#RASC-Loadingextramodules">1.1.6. 
+            Loading extra modules
+          </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s02.html">1.2. 
+      Cheat Sheet for configuring Queue Options
+    </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-ConfiguringQueueOptions">1.2.1.
 
+            Configuring
+            Queue Options
+          </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s03.html">1.3. 
+    Cheat Sheet for configuring Exchange Options
+  </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s03.html#CheatSheetforconfiguringExchangeOptions-ConfiguringExchangeOptions">1.3.1.
 
+      Configuring Exchange Options
+    </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s04.html">1.4. Broker Federation</a></span></dt><dd><dl><dt><span 
class="section"><a 
href="ch01s04.html#sect-Messaging_User_Guide-Broker_Federation-Message_Routes">1.4.1.
 Message Routes</a></span></dt><dt><span class="section"><a 
href="ch01s04.html#sect-Messaging_User_Guide-Broker_Federation-Federation_Topologies">1.4.2.
 Federation Topologies</a></span></dt><dt><span class="section"><a 
href="ch01s04.html#sect-Messaging_User_Guide-Broker_Federation-Federation_among_High_Availability_Message_Clusters">1.4.3.
 Federation among High Availability Message Clusters</a></span></dt><dt><span 
class="section"><a 
href="ch01s04.html#sect-Messaging_User_Guide-Broker_Federation-The_qpid_route_Utility">1.4.4.
 The qpid-route Utility</a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s05.html">1.5. Security</a></span></dt><dd><dl><dt><span 
class="section"><a href="ch01s05.html#sect-Messaging_User_Guide-Security-U
 ser_Authentication">1.5.1. User Authentication</a></span></dt><dt><span 
class="section"><a 
href="ch01s05.html#sect-Messaging_User_Guide-Security-Authorization">1.5.2. 
Authorization</a></span></dt><dt><span class="section"><a 
href="ch01s05.html#sect-Messaging_User_Guide-Security-Encryption_using_SSL">1.5.3.
 Encryption using SSL</a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s06.html">1.6. 
+      LVQ
+    </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s06.html#LVQ-UnderstandingLVQ">1.6.1. 
+            Understanding LVQ
+          </a></span></dt><dt><span class="section"><a 
href="ch01s06.html#LVQ-LVQsemantics-3A">1.6.2. 
+            LVQ semantics:
+          </a></span></dt><dt><span class="section"><a 
href="ch01s06.html#LVQ-LVQNOBROWSEsemantics-3A">1.6.3. 
+            LVQ_NO_BROWSE
+            semantics:
+          </a></span></dt><dt><span class="section"><a 
href="ch01s06.html#LVQ-Examplesource">1.6.4. 
+            LVQ Program Example
+          </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s07.html">1.7. 
+    Queue State Replication
+  </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s07.html#queuestatereplication-AsynchronousReplicationofQueueState">1.7.1.
 
+      Asynchronous
+      Replication of Queue State
+    </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s08.html">1.8. High Availability Messaging 
Clusters</a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s08.html#sect-Messaging_User_Guide-High_Availability_Messaging_Clusters-Starting_a_Broker_in_a_Cluster">1.8.1.
 Starting a Broker in a Cluster</a></span></dt><dt><span class="section"><a 
href="ch01s08.html#sect-Messaging_User_Guide-High_Availability_Messaging_Clusters-qpid_cluster">1.8.2.
 qpid-cluster</a></span></dt><dt><span class="section"><a 
href="ch01s08.html#sect-Messaging_User_Guide-High_Availability_Messaging_Clusters-Failover_in_Clients">1.8.3.
 Failover in Clients</a></span></dt><dt><span class="section"><a 
href="ch01s08.html#sect-Messaging_User_Guide-High_Availability_Messaging_Clusters-Error_handling_in_Clusters">1.8.4.
 Error handling in Clusters</a></span></dt><dt><span class="section"><a 
href="ch01s08.html#sect-Messaging_User_Guide-High_Availability_Messaging_Clusters-Persistence_in_H
 igh_Availability_Message_Clusters">1.8.5. Persistence in High Availability 
Message Clusters</a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s09.html">1.9. 
+    Producer Flow Control
+  </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s09.html#producerflowcontrol-Overview">1.9.1. 
+      Overview
+    </a></span></dt><dt><span class="section"><a 
href="ch01s09.html#producerflowcontrol-UserInterface">1.9.2. 
+        User Interface
+      </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s10.html">1.10. 
+      AMQP compatibility
+    </a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s10.html#AMQPcompatibility-AMQPCompatibilityofQpidreleases-3A">1.10.1.
 
+            AMQP
+            Compatibility of Qpid releases:
+          </a></span></dt><dt><span class="section"><a 
href="ch01s10.html#AMQPcompatibility-InteroptablebyAMQPspecificationversion">1.10.2.
 
+            Interop
+            table by AMQP specification version
+          </a></span></dt></dl></dd><dt><span class="section"><a 
href="ch01s11.html">1.11. Qpid Interoperability 
Documentation</a></span></dt><dd><dl><dt><span class="section"><a 
href="ch01s11.html#QpidInteroperabilityDocumentation-SASL">1.11.1. 
+            SASL
+          </a></span></dt></dl></dd></dl></div><div class="section" 
title="1.1.  Running a Qpid C++ Broker"><div class="titlepage"><div><div><h2 
class="title" style="clear: both"><a 
name="section-Running-a-Qpid-CPP-Broker"></a>1.1. 
+    Running a Qpid C++ Broker
+  </h2></div></div></div><div class="section" title="1.1.1.  Building the C++ 
Broker and Client Libraries"><div class="titlepage"><div><div><h3 
class="title"><a name="RASC-BuildingtheCppBrokerandClientLibraries"></a>1.1.1. 
+            Building the
+            C++ Broker and Client Libraries
+          </h3></div></div></div><p>
+            The root directory for the C++ distribution is named
+            qpidc-0.4. The README file in that directory gives
+            instructions for building the broker and client libraries. In
+            most cases you will do the following:
+          </p><pre class="programlisting">
+[qpidc-0.4]$ ./configure
+[qpidc-0.4]$ make
+</pre></div><div class="section" title="1.1.2.  Running the C++ Broker"><div 
class="titlepage"><div><div><h3 class="title"><a 
name="RASC-RunningtheCppBroker"></a>1.1.2. 
+            Running the C++ Broker
+          </h3></div></div></div><p>
+            Once you have built the broker and client libraries, you can
+            start the broker from the command line:
+          </p><pre class="programlisting">
+[qpidc-0.4]$ src/qpidd
+</pre><p>
+            Use the --daemon option to run the broker as a daemon
+            process:
+          </p><pre class="programlisting">
+[qpidc-0.4]$ src/qpidd --daemon
+</pre><p>
+            You can stop a running daemon with the --quit option:
+          </p><pre class="programlisting">
+[qpidc-0.4]$ src/qpidd --quit
+</pre><p>
+            You can see all available options with the --help option
+          </p><pre class="programlisting">
+[qpidc-0.4]$ src/qpidd --help
+</pre></div><div class="section" title="1.1.3.  Most common questions getting 
qpidd running"><div class="titlepage"><div><div><h3 class="title"><a 
name="RASC-Mostcommonquestionsgettingqpiddrunning"></a>1.1.3. 
+            Most
+            common questions getting qpidd running
+          </h3></div></div></div><div class="section" title='1.1.3.1.  Error 
when starting broker: "no data directory"'><div class="titlepage"><div><div><h4 
class="title"><a 
name="RASC-Errorwhenstartingbroker-3A-22nodatadirectory-22"></a>1.1.3.1. 
+            Error
+            when starting broker: "no data directory"
+          </h4></div></div></div><p>
+            The qpidd broker requires you to set a data directory or specify
+            --no-data-dir (see help for more details). The data
+            directory is used for the journal, so it is important when
+            reliability counts. Make sure your process has write permission
+            to the data directory.
+          </p><p>
+            The default location is
+          </p><pre class="programlisting">
+/lib/var/qpidd
+</pre><p>
+            An alternate location can be set with --data-dir
+          </p></div><div class="section" title='1.1.3.2.  Error when starting 
broker: "that process is locked"'><div class="titlepage"><div><div><h4 
class="title"><a 
name="RASC-Errorwhenstartingbroker-3A-22thatprocessislocked-22"></a>1.1.3.2. 
+            Error
+            when starting broker: "that process is locked"
+          </h4></div></div></div><p>
+            Note that when qpidd starts it creates a lock file is data
+            directory are being used. If you have a un-controlled exit,
+            please mail
+            the trace from the core to the [email protected] mailing list.
+            To clear the lock run
+          </p><pre class="programlisting">
+./qpidd -q
+</pre><p>
+            It should also be noted that multiple brokers can be run on the
+            same host. To do so set alternate data directories for each qpidd
+            instance.
+          </p></div><div class="section" title="1.1.3.3.  Using a 
configuration file"><div class="titlepage"><div><div><h4 class="title"><a 
name="RASC-Usingaconfigurationfile"></a>1.1.3.3. 
+            Using a configuration
+            file
+          </h4></div></div></div><p>
+            Each option that can be specified on the command line can also be
+            specified in a configuration file. To see available options, use
+            --help on the command line:
+          </p><pre class="programlisting">
+./qpidd --help
+</pre><p>
+            A configuration file uses name/value pairs, one on each line. To
+            convert a command line option to a configuration file entry:
+          </p><p>
+            a.) remove the '--' from the beginning of the option.
+            b.) place a '=' between the option and the value (use
+            <span class="emphasis"><em>yes</em></span> or <span 
class="emphasis"><em>true</em></span> to enable options that take no
+            value when specified on the command line).
+            c.) place one option per line.
+          </p><p>
+            For instance, the --daemon option takes no value, the
+            --log-to-syslog option takes the values yes or
+            no. The following configuration file sets these two
+            options:
+          </p><pre class="programlisting">
+daemon=yes
+log-to-syslog=yes
+</pre></div><div class="section" title="1.1.3.4.  Can I use any Language 
client with the C++ Broker?"><div class="titlepage"><div><div><h4 
class="title"><a 
name="RASC-CanIuseanyLanguageclientwiththeCppBroker-3F"></a>1.1.3.4. 
+            Can I use
+            any Language client with the C++ Broker?
+          </h4></div></div></div><p>
+            Yes, all the clients work with the C++ broker; it is written in
+            C+<span class="emphasis"><em>, but uses the AMQP wire protocol. 
Any broker can be used
+            with any client that uses the same AMQP version. When running the
+            C</em></span>+ broker, it is highly recommended to run AMQP 0-10.
+          </p><p>
+            Note that JMS also works with the C++ broker.
+          </p></div></div><div class="section" title="1.1.4.  
Authentication"><div class="titlepage"><div><div><h3 class="title"><a 
name="RASC-Authentication"></a>1.1.4. 
+            Authentication
+          </h3></div></div></div><div class="section" title="1.1.4.1.  
Linux"><div class="titlepage"><div><div><h4 class="title"><a 
name="RASC-Linux"></a>1.1.4.1. 
+            Linux
+          </h4></div></div></div><p>
+            The PLAIN authentication is done on a username+password, which is
+            stored in the sasldb_path file. Usernames and passwords can be
+            added to the file using the command:
+          </p><pre class="programlisting">
+saslpasswd2 -f /var/lib/qpidd/qpidd.sasldb -u &lt;REALM&gt; &lt;USER&gt;
+</pre><p>
+            The REALM is important and should be the same as the
+            --auth-realm
+            option to the broker. This lets the broker properly find the user
+            in
+            the sasldb file.
+          </p><p>
+            Existing user accounts may be listed with:
+          </p><pre class="programlisting">
+sasldblistusers2 -f /var/lib/qpidd/qpidd.sasldb
+</pre><p>
+            NOTE: The sasldb file must be readable by the user running the
+            qpidd daemon, and should be readable only by that user.
+          </p></div><div class="section" title="1.1.4.2.  Windows"><div 
class="titlepage"><div><div><h4 class="title"><a 
name="RASC-Windows"></a>1.1.4.2. 
+            Windows
+          </h4></div></div></div><p>
+            On Windows, the users are authenticated against the local
+            machine. You should add the appropriate users using the standard
+            Windows tools (Control Panel-&gt;User Accounts). To run many of
+            the examples, you will need to create a user "guest" with
+            password "guest".
+          </p><p>
+            If you cannot or do not want to create new users, you can run
+            without authentication by specifying the no-auth option to the
+            broker.
+          </p></div></div><div class="section" title="1.1.5.  Slightly more 
complex configuration"><div class="titlepage"><div><div><h3 class="title"><a 
name="RASC-Slightlymorecomplexconfiguration"></a>1.1.5. 
+            Slightly more
+            complex configuration
+          </h3></div></div></div><p>
+            The easiest way to get a full listing of the broker's options are
+            to use the --help command, run it locally for the latest set of
+            options. These options can then be set in the conf file for
+            convenience (see above)
+          </p><pre class="programlisting">
+./qpidd --help
+
+Usage: qpidd OPTIONS
+Options:
+  -h [ --help ]                    Displays the help message
+  -v [ --version ]                 Displays version information
+  --config FILE (/etc/qpidd.conf)  Reads configuration from FILE
+
+Module options:
+  --module-dir DIR (/usr/lib/qpidd)  Load all .so modules in this directory
+  --load-module FILE                 Specifies additional module(s) to be 
loaded
+  --no-module-dir                    Don't load modules from module directory
+
+Broker Options:
+  --data-dir DIR (/var/lib/qpidd)   Directory to contain persistent data 
generated by the broker
+  --no-data-dir                     Don't use a data directory.  No persistent
+                                    configuration will be loaded or stored
+  -p [ --port ] PORT (5672)         Tells the broker to listen on PORT
+  --worker-threads N (3)            Sets the broker thread pool size
+  --max-connections N (500)         Sets the maximum allowed connections
+  --connection-backlog N (10)       Sets the connection backlog limit for the
+                                    server socket
+  --staging-threshold N (5000000)   Stages messages over N bytes to disk
+  -m [ --mgmt-enable ] yes|no (1)   Enable Management
+  --mgmt-pub-interval SECONDS (10)  Management Publish Interval
+  --ack N (0)                       Send session.ack/solicit-ack at least every
+                                    N frames. 0 disables voluntary ack/solitict
+                                   -ack
+
+Daemon options:
+  -d [ --daemon ]             Run as a daemon.
+  -w [ --wait ] SECONDS (10)  Sets the maximum wait time to initialize the
+                              daemon. If the daemon fails to initialize, prints
+                              an error and returns 1
+  -c [ --check ]              Prints the daemon's process ID to stdout and
+                              returns 0 if the daemon is running, otherwise
+                              returns 1
+  -q [ --quit ]               Tells the daemon to shut down
+Logging options:
+  --log-output FILE (stderr)  Send log output to FILE. FILE can be a file name
+                              or one of the special values:
+                              stderr, stdout, syslog
+  -t [ --trace ]              Enables all logging
+  --log-enable RULE (error+)  Enables logging for selected levels and component
+                              s. RULE is in the form 'LEVEL+:PATTERN'
+                              Levels are one of:
+                              trace debug info notice warning error critical
+                              For example:
+                              '--log-enable warning+' logs all warning, error
+                              and critical messages.
+                              '--log-enable debug:framing' logs debug messages
+                              from the framing namespace. This option can be
+                              used multiple times
+  --log-time yes|no (1)       Include time in log messages
+  --log-level yes|no (1)      Include severity level in log messages
+  --log-source yes|no (0)     Include source file:line in log messages
+  --log-thread yes|no (0)     Include thread ID in log messages
+  --log-function yes|no (0)   Include function signature in log messages
+</pre></div><div class="section" title="1.1.6.  Loading extra modules"><div 
class="titlepage"><div><div><h3 class="title"><a 
name="RASC-Loadingextramodules"></a>1.1.6. 
+            Loading extra modules
+          </h3></div></div></div><p>
+            By default the broker will load all the modules in the module
+            directory, however it will NOT display options for modules that
+            are not loaded. So to see the options for extra modules loaded
+            you need to load the module and then add the help command like
+            this:
+          </p><pre class="programlisting">
+./qpidd --load-module libbdbstore.so --help
+Usage: qpidd OPTIONS
+Options:
+  -h [ --help ]                    Displays the help message
+  -v [ --version ]                 Displays version information
+  --config FILE (/etc/qpidd.conf)  Reads configuration from FILE
+
+
+ / .... non module options would be here ... /
+
+
+Store Options:
+  --store-directory DIR     Store directory location for persistence (overrides
+                            --data-dir)
+  --store-async yes|no (1)  Use async persistence storage - if store supports
+                            it, enables AIO O_DIRECT.
+  --store-force yes|no (0)  Force changing modes of store, will delete all
+                            existing data if mode is changed. Be SURE you want
+                            to do this!
+  --num-jfiles N (8)        Number of files in persistence journal
+  --jfile-size-pgs N (24)   Size of each journal file in multiples of read
+                            pages (1 read page = 64kiB)
+</pre></div></div></div><div class="navfooter"><hr><table width="100%" 
summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" 
href="pr01.html">Prev</a> </td><td width="20%" align="center"> </td><td 
width="40%" align="right"> <a accesskey="n" 
href="ch01s02.html">Next</a></td></tr><tr><td width="40%" align="left" 
valign="top">Introduction </td><td width="20%" align="center"><a accesskey="h" 
href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1.2. 
+      Cheat Sheet for configuring Queue Options
+    </td></tr></table></div></body></html>

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s02.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s02.html?rev=1097544&view=auto
==============================================================================
--- qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s02.html 
(added)
+++ qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s02.html 
Thu Apr 28 16:49:49 2011
@@ -0,0 +1,201 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; 
charset=ISO-8859-1"><title>1.2.  Cheat Sheet for configuring Queue 
Options</title><meta name="generator" content="DocBook XSL Stylesheets 
V1.75.2"><link rel="home" href="index.html" title="AMQP Messaging Broker 
(Implemented in C++)"><link rel="up" href="ch01.html" title="Chapter 1.  
Running the AMQP Messaging Broker"><link rel="prev" href="ch01.html" 
title="Chapter 1.  Running the AMQP Messaging Broker"><link rel="next" 
href="ch01s03.html" title="1.3.  Cheat Sheet for configuring Exchange 
Options"></head><body bgcolor="white" text="black" link="#0000FF" 
vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" 
summary="Navigation header"><tr><th colspan="3" align="center">1.2. 
+      Cheat Sheet for configuring Queue Options
+    </th></tr><tr><td width="20%" align="left"><a accesskey="p" 
href="ch01.html">Prev</a> </td><th width="60%" align="center">Chapter 1. 
+      Running the AMQP Messaging Broker
+    </th><td width="20%" align="right"> <a accesskey="n" 
href="ch01s03.html">Next</a></td></tr></table><hr></div><div class="section" 
title="1.2.  Cheat Sheet for configuring Queue Options"><div 
class="titlepage"><div><div><h2 class="title" style="clear: both"><a 
name="id2567912"></a>1.2. 
+      Cheat Sheet for configuring Queue Options
+    </h2></div></div></div><div class="section" title="1.2.1.  Configuring 
Queue Options"><div class="titlepage"><div><div><h3 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-ConfiguringQueueOptions"></a>1.2.1. 
+            Configuring
+            Queue Options
+          </h3></div></div></div><p>
+            The C++ Broker M4 or later supports the following additional
+            Queue constraints.
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>
+                <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-ConfiguringQueueOptions"
 title="1.2.1.  Configuring Queue Options">Section 1.2.1, &#8220;
+            Configuring
+            Queue Options
+          &#8221;</a>
+              </p></li><li class="listitem"><p>
+                </p><div class="itemizedlist"><ul class="itemizedlist" 
type="circle"><li class="listitem"><p>
+                    <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-ApplyingQueueSizingConstraints"
 title="1.2.1.1.  Applying Queue Sizing Constraints">Section 1.2.1.1, &#8220;
+            Applying Queue Sizing Constraints
+          &#8221;</a>
+                  </p></li><li class="listitem"><p>
+                    <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-ChangingtheQueueorderingBehaviors-28FIFO-2FLVQ-29"
 title="1.2.1.2.  Changing the Queue ordering Behaviors 
(FIFO/LVQ)">Section 1.2.1.2, &#8220;
+            Changing the Queue ordering Behaviors (FIFO/LVQ)
+          &#8221;</a>
+                  </p></li><li class="listitem"><p>
+                    <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-Settingadditionalbehaviors"
 title="1.2.1.3.  Setting additional behaviors">Section 1.2.1.3, &#8220;
+            Setting additional behaviors
+          &#8221;</a>
+                  </p></li><li class="listitem"><p>
+                    </p><div class="itemizedlist"><ul class="itemizedlist" 
type="square"><li class="listitem"><p>
+                        <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-PersistLastNode" 
title="1.2.1.3.1.  Persist Last Node">Section 1.2.1.3.1, &#8220;
+            Persist
+            Last Node
+          &#8221;</a>
+                      </p></li><li class="listitem"><p>
+                        <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-Queueeventgeneration" 
title="1.2.1.3.2.  Queue event generation">Section 1.2.1.3.2, &#8220;
+            Queue
+            event generation
+          &#8221;</a>
+                      </p></li></ul></div><p>
+                  </p></li><li class="listitem"><p>
+                    <a class="xref" 
href="ch01s02.html#CheatSheetforconfiguringQueueOptions-OtherClients" 
title="1.2.1.4.  Other Clients">Section 1.2.1.4, &#8220;
+            Other
+            Clients
+          &#8221;</a>
+                  </p></li></ul></div><p>
+              </p></li></ul></div><p>
+            The 0.10 C++ Broker supports the following additional Queue 
configuration options:
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>
+              <a class="xref" href="ch01s09.html" title="1.9.  Producer Flow 
Control">Section 1.9, &#8220;
+    Producer Flow Control
+  &#8221;</a>
+            </p></li></ul></div><div class="section" title="1.2.1.1.  Applying 
Queue Sizing Constraints"><div class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-ApplyingQueueSizingConstraints"></a>1.2.1.1. 
+            Applying Queue Sizing Constraints
+          </h4></div></div></div><p>
+            This allows to specify how to size a queue and what to do when
+            the sizing constraints have been reached. The queue size can be
+            limited by the number messages (message depth) or byte depth on
+            the queue.
+          </p><p>
+            Once the Queue meets/ exceeds these constraints the follow
+            policies can be applied
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>REJECT - Reject the published message
+            </p></li><li class="listitem"><p>FLOW_TO_DISK - Flow the messages 
to disk, to preserve memory
+            </p></li><li class="listitem"><p>RING - start overwriting messages 
in a ring based on sizing.
+            If head meets tail, advance head
+            </p></li><li class="listitem"><p>RING_STRICT - start overwriting 
messages in a ring based on
+            sizing. If head meets tail, AND the consumer has the tail message
+            acquired it will reject
+            </p></li></ul></div><p>
+            Examples:
+          </p><p>
+            Create a queue an auto delete queue that will support 100 000
+            bytes, and then REJECT
+          </p><pre class="programlisting">
+#include "qpid/client/QueueOptions.h"
+
+    QueueOptions qo;
+    qo.setSizePolicy(REJECT,100000,0);
+
+    session.queueDeclare(arg::queue=queue, arg::autoDelete=true, 
arg::arguments=qo);
+</pre><p>
+            Create a queue that will support 1000 messages into a RING buffer
+          </p><pre class="programlisting">
+#include "qpid/client/QueueOptions.h"
+
+    QueueOptions qo;
+    qo.setSizePolicy(RING,0,1000);
+
+    session.queueDeclare(arg::queue=queue, arg::arguments=qo);
+</pre></div><div class="section" title="1.2.1.2.  Changing the Queue ordering 
Behaviors (FIFO/LVQ)"><div class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-ChangingtheQueueorderingBehaviors-28FIFO-2FLVQ-29"></a>1.2.1.2. 
+            Changing the Queue ordering Behaviors (FIFO/LVQ)
+          </h4></div></div></div><p>
+            The default ordering in a queue in Qpid is FIFO. However
+            additional ordering semantics can be used namely LVQ (Last Value
+            Queue). Last Value Queue is define as follows.
+          </p><p>
+            If I publish symbols RHT, IBM, JAVA, MSFT, and then publish RHT
+            before the consumer is able to consume RHT, that message will be
+            over written in the queue and the consumer will receive the last
+            published value for RHT.
+          </p><p>
+            Example:
+          </p><pre class="programlisting">
+#include "qpid/client/QueueOptions.h"
+
+    QueueOptions qo;
+    qo.setOrdering(LVQ);
+
+    session.queueDeclare(arg::queue=queue, arg::arguments=qo);
+
+    .....
+    string key;
+    qo.getLVQKey(key);
+
+    ....
+    for each message, set the into application headers before transfer
+    message.getHeaders().setString(key,"RHT");
+    
+</pre><p>
+            Notes:
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>Messages that are dequeued and the 
re-queued will have the
+            following exceptions. a.) if a new message has been queued with
+            the same key, the re-queue from the consumer, will combine these
+            two messages. b.) If an update happens for a message of the same
+            key, after the re-queue, it will not update the re-queued
+            message. This is done to protect a client from being able to
+            adversely manipulate the queue.
+            </p></li><li class="listitem"><p>Acquire: When a message is 
acquired from the queue, no matter
+            it's position, it will behave the same as a dequeue
+            </p></li><li class="listitem"><p>LVQ does not support durable 
messages. If the queue or
+            messages are declared durable on an LVQ, the durability will be
+            ignored.
+            </p></li></ul></div><p>
+            A fully worked <a class="xref" 
href="ch01s06.html#LVQ-Examplesource" title="1.6.4.  LVQ Program 
Example">Section 1.6.4, &#8220;
+            LVQ Program Example
+          &#8221;</a> can be found here
+          </p></div><div class="section" title="1.2.1.3.  Setting additional 
behaviors"><div class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-Settingadditionalbehaviors"></a>1.2.1.3. 
+            Setting additional behaviors
+          </h4></div></div></div><div class="section" title="1.2.1.3.1.  
Persist Last Node"><div class="titlepage"><div><div><h5 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-PersistLastNode"></a>1.2.1.3.1. 
+            Persist
+            Last Node
+          </h5></div></div></div><p>
+            This option is used in conjunction with clustering. It allows for
+            a queue configured with this option to persist transient messages
+            if the cluster fails down to the last node. If additional nodes
+            in the cluster are restored it will stop persisting transient
+            messages.
+          </p><p>
+            Note
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>if a cluster is started with only one 
active node, this mode
+            will not be triggered. It is only triggered the first time the
+            cluster fails down to 1 node.
+            </p></li><li class="listitem"><p>The queue MUST be configured 
durable
+            </p></li></ul></div><p>
+            Example:
+          </p><pre class="programlisting">
+#include "qpid/client/QueueOptions.h"
+
+    QueueOptions qo;
+    qo.clearPersistLastNode();
+
+    session.queueDeclare(arg::queue=queue, arg::durable=true, 
arg::arguments=qo);
+</pre></div><div class="section" title="1.2.1.3.2.  Queue event 
generation"><div class="titlepage"><div><div><h5 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-Queueeventgeneration"></a>1.2.1.3.2. 
+            Queue
+            event generation
+          </h5></div></div></div><p>
+            This option is used to determine whether enqueue/dequeue events
+            representing changes made to queue state are generated. These
+            events can then be processed by plugins such as that used for
+            <a class="xref" href="ch01s07.html" title="1.7.  Queue State 
Replication">Section 1.7, &#8220;
+    Queue State Replication
+  &#8221;</a>.
+          </p><p>
+            Example:
+          </p><pre class="programlisting">
+#include "qpid/client/QueueOptions.h"
+
+    QueueOptions options;
+    options.enableQueueEvents(1);
+    session.queueDeclare(arg::queue="my-queue", arg::arguments=options);
+</pre><p>
+            The boolean option indicates whether only enqueue events should
+            be generated. The key set by this is
+            'qpid.queue_event_generation' and the value is and integer value
+            of 1 (to replicate only enqueue events) or 2 (to replicate both
+            enqueue and dequeue events).
+          </p></div></div><div class="section" title="1.2.1.4.  Other 
Clients"><div class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringQueueOptions-OtherClients"></a>1.2.1.4. 
+            Other
+            Clients
+          </h4></div></div></div><p>
+            Note that these options can be set from any client. QueueOptions
+            just correctly formats the arguments passed to the QueueDeclare()
+            method.
+          </p></div></div></div><div class="navfooter"><hr><table width="100%" 
summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" 
href="ch01.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" 
href="ch01.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" 
href="ch01s03.html">Next</a></td></tr><tr><td width="40%" align="left" 
valign="top">Chapter 1. 
+      Running the AMQP Messaging Broker
+     </td><td width="20%" align="center"><a accesskey="h" 
href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1.3. 
+    Cheat Sheet for configuring Exchange Options
+  </td></tr></table></div></body></html>

Added: 
qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s03.html
URL: 
http://svn.apache.org/viewvc/qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s03.html?rev=1097544&view=auto
==============================================================================
--- qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s03.html 
(added)
+++ qpid/site/docs/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s03.html 
Thu Apr 28 16:49:49 2011
@@ -0,0 +1,98 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; 
charset=ISO-8859-1"><title>1.3.  Cheat Sheet for configuring Exchange 
Options</title><meta name="generator" content="DocBook XSL Stylesheets 
V1.75.2"><link rel="home" href="index.html" title="AMQP Messaging Broker 
(Implemented in C++)"><link rel="up" href="ch01.html" title="Chapter 1.  
Running the AMQP Messaging Broker"><link rel="prev" href="ch01s02.html" 
title="1.2.  Cheat Sheet for configuring Queue Options"><link rel="next" 
href="ch01s04.html" title="1.4. Broker Federation"></head><body bgcolor="white" 
text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div 
class="navheader"><table width="100%" summary="Navigation header"><tr><th 
colspan="3" align="center">1.3. 
+    Cheat Sheet for configuring Exchange Options
+  </th></tr><tr><td width="20%" align="left"><a accesskey="p" 
href="ch01s02.html">Prev</a> </td><th width="60%" align="center">Chapter 1. 
+      Running the AMQP Messaging Broker
+    </th><td width="20%" align="right"> <a accesskey="n" 
href="ch01s04.html">Next</a></td></tr></table><hr></div><div class="section" 
title="1.3.  Cheat Sheet for configuring Exchange Options"><div 
class="titlepage"><div><div><h2 class="title" style="clear: both"><a 
name="id2567860"></a>1.3. 
+    Cheat Sheet for configuring Exchange Options
+  </h2></div></div></div><div class="section" title="1.3.1.  Configuring 
Exchange Options"><div class="titlepage"><div><div><h3 class="title"><a 
name="CheatSheetforconfiguringExchangeOptions-ConfiguringExchangeOptions"></a>1.3.1. 
+      Configuring Exchange Options
+    </h3></div></div></div><p>
+            The C++ Broker M4 or later supports the following additional
+            Exchange options in addition to the standard AMQP define options
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>Exchange Level Message sequencing
+            </p></li><li class="listitem"><p>Initial Value Exchange
+            </p></li></ul></div><p>
+            Note that these features can be used on any exchange type, that
+            has been declared with the options set.
+          </p><p>
+            It also supports an additional option to the bind operation on a
+            direct exchange
+          </p><div class="itemizedlist"><ul class="itemizedlist" 
type="disc"><li class="listitem"><p>Exclusive binding for key
+            </p></li></ul></div><div class="section" title="1.3.1.1.  Exchange 
Level Message sequencing"><div class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringExchangeOptions-ExchangeLevelMessagesequencing"></a>1.3.1.1. 
+            Exchange Level Message sequencing
+          </h4></div></div></div><p>
+            This feature can be used to place a sequence number into each
+            message's headers, based on the order they pass through an
+            exchange. The sequencing starts at 0 and then wraps in an AMQP
+            int64 type.
+          </p><p>
+            The field name used is "qpid.msg_sequence"
+          </p><p>
+            To use this feature an exchange needs to be declared specifying
+            this option in the declare
+          </p><pre class="programlisting">
+....
+    FieldTable args;
+    args.setInt("qpid.msg_sequence",1);
+
+...
+    // now declare the exchange
+    session.exchangeDeclare(arg::exchange="direct", arg::arguments=args);
+</pre><p>
+            Then each message passing through that exchange will be numbers
+            in the application headers.
+          </p><pre class="programlisting">
+    unit64_t seqNo;
+    //after message transfer
+    seqNo = message.getHeaders().getAsInt64("qpid.msg_sequence");
+</pre></div><div class="section" title="1.3.1.2.  Initial Value Exchange"><div 
class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringExchangeOptions-InitialValueExchange"></a>1.3.1.2. 
+            Initial
+            Value Exchange
+          </h4></div></div></div><p>
+            This feature caches a last message sent to an exchange. When a
+            new binding is created onto the exchange it will then attempt to
+            route this cached messaged to the queue, based on the binding.
+            This allows for topics or the creation of configurations where a
+            new consumer can receive the last message sent to the broker,
+            with matching routing.
+          </p><p>
+            To use this feature an exchange needs to be declared specifying
+            this option in the declare
+          </p><pre class="programlisting">
+....
+    FieldTable args;
+    args.setInt("qpid.ive",1);
+
+...
+    // now declare the exchange
+    session.exchangeDeclare(arg::exchange="direct", arg::arguments=args);
+</pre><p>
+            now use the exchange in the same way you would use any other
+            exchange.
+          </p></div><div class="section" title="1.3.1.3.  Exclusive binding 
for key"><div class="titlepage"><div><div><h4 class="title"><a 
name="CheatSheetforconfiguringExchangeOptions-Exclusivebindingforkey"></a>1.3.1.3. 
+            Exclusive
+            binding for key
+          </h4></div></div></div><p>
+            Direct exchanges in qpidd support a qpid.exclusive-binding option
+            on the bind operation that causes the binding specified to be the
+            only one for the given key. I.e. if there is already a binding at
+            this exchange with this key it will be atomically updated to bind
+            the new queue. This means that the binding can be changed
+            concurrently with an incoming stream of messages and each message
+            will be routed to exactly one queue.
+          </p><pre class="programlisting">
+....
+    FieldTable args;
+    args.setInt("qpid.exclusive-binding",1);
+
+    //the following will cause the only binding from amq.direct with 'my-key' 
+    //to be the one to 'my-queue'; if there were any previous bindings for that
+    //key they will be removed. This is atomic w.r.t message routing through 
the
+    //exchange.
+    session.exchangeBind(arg::exchange="amq.direct", arg::queue="my-queue",
+                         arg::bindingKey="my-key", arg::arguments=args);
+
+...
+</pre></div></div></div><div class="navfooter"><hr><table width="100%" 
summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" 
href="ch01s02.html">Prev</a> </td><td width="20%" align="center"><a 
accesskey="u" href="ch01.html">Up</a></td><td width="40%" align="right"> <a 
accesskey="n" href="ch01s04.html">Next</a></td></tr><tr><td width="40%" 
align="left" valign="top">1.2. 
+      Cheat Sheet for configuring Queue Options
+     </td><td width="20%" align="center"><a accesskey="h" 
href="index.html">Home</a></td><td width="40%" align="right" 
valign="top"> 1.4. Broker Federation</td></tr></table></div></body></html>



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to