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 2017/11/26 18:22:35 UTC

[15/42] qpid-site git commit: QPID-8051: update site content for qpid-python-1.37.0

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/e970301e/input/releases/qpid-python-1.37.0/messaging-api/api/qpid.messaging.driver-pysrc.html
----------------------------------------------------------------------
diff --git a/input/releases/qpid-python-1.37.0/messaging-api/api/qpid.messaging.driver-pysrc.html b/input/releases/qpid-python-1.37.0/messaging-api/api/qpid.messaging.driver-pysrc.html
new file mode 100644
index 0000000..eb5338f
--- /dev/null
+++ b/input/releases/qpid-python-1.37.0/messaging-api/api/qpid.messaging.driver-pysrc.html
@@ -0,0 +1,1738 @@
+<?xml version="1.0" encoding="ascii"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+          "DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+  <title>qpid.messaging.driver</title>
+  <link rel="stylesheet" href="epydoc.css" type="text/css" />
+  <script type="text/javascript" src="epydoc.js"></script>
+</head>
+
+<body bgcolor="white" text="black" link="blue" vlink="#204080"
+      alink="#204080">
+<!-- ==================== NAVIGATION BAR ==================== -->
+<table class="navbar" border="0" width="100%" cellpadding="0"
+       bgcolor="#a0c0ff" cellspacing="0">
+  <tr valign="middle">
+  <!-- Home link -->
+      <th>&nbsp;&nbsp;&nbsp;<a
+        href="qpid.messaging-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
+
+  <!-- Tree link -->
+      <th>&nbsp;&nbsp;&nbsp;<a
+        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
+
+  <!-- Index link -->
+      <th>&nbsp;&nbsp;&nbsp;<a
+        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
+
+  <!-- Help link -->
+      <th>&nbsp;&nbsp;&nbsp;<a
+        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
+
+  <!-- Project homepage -->
+      <th class="navbar" align="right" width="100%">
+        <table border="0" cellpadding="0" cellspacing="0">
+          <tr><th class="navbar" align="center"
+            ><a class="navbar" target="_top" href="http://qpid.apache.org/index.html">Qpid Python Messaging API</a></th>
+          </tr></table></th>
+  </tr>
+</table>
+<table width="100%" cellpadding="0" cellspacing="0">
+  <tr valign="top">
+    <td width="100%">
+      <span class="breadcrumbs">
+        Package&nbsp;qpid ::
+        <a href="qpid.messaging-module.html">Package&nbsp;messaging</a> ::
+        Module&nbsp;driver
+      </span>
+    </td>
+    <td>
+      <table cellpadding="0" cellspacing="0">
+        <!-- hide/show private -->
+        <tr><td align="right"><span class="options"
+            >[<a href="frames.html" target="_top">frames</a
+            >]&nbsp;|&nbsp;<a href="qpid.messaging.driver-pysrc.html"
+            target="_top">no&nbsp;frames</a>]</span></td></tr>
+      </table>
+    </td>
+  </tr>
+</table>
+<h1 class="epydoc">Source Code for <a href="qpid.messaging.driver-module.html">Module qpid.messaging.driver</a></h1>
+<pre class="py-src">
+<a name="L1"></a><tt class="py-lineno">   1</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L2"></a><tt class="py-lineno">   2</tt>  <tt class="py-line"><tt class="py-comment"># Licensed to the Apache Software Foundation (ASF) under one</tt> </tt>
+<a name="L3"></a><tt class="py-lineno">   3</tt>  <tt class="py-line"><tt class="py-comment"># or more contributor license agreements.  See the NOTICE file</tt> </tt>
+<a name="L4"></a><tt class="py-lineno">   4</tt>  <tt class="py-line"><tt class="py-comment"># distributed with this work for additional information</tt> </tt>
+<a name="L5"></a><tt class="py-lineno">   5</tt>  <tt class="py-line"><tt class="py-comment"># regarding copyright ownership.  The ASF licenses this file</tt> </tt>
+<a name="L6"></a><tt class="py-lineno">   6</tt>  <tt class="py-line"><tt class="py-comment"># to you under the Apache License, Version 2.0 (the</tt> </tt>
+<a name="L7"></a><tt class="py-lineno">   7</tt>  <tt class="py-line"><tt class="py-comment"># "License"); you may not use this file except in compliance</tt> </tt>
+<a name="L8"></a><tt class="py-lineno">   8</tt>  <tt class="py-line"><tt class="py-comment"># with the License.  You may obtain a copy of the License at</tt> </tt>
+<a name="L9"></a><tt class="py-lineno">   9</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L10"></a><tt class="py-lineno">  10</tt>  <tt class="py-line"><tt class="py-comment">#   http://www.apache.org/licenses/LICENSE-2.0</tt> </tt>
+<a name="L11"></a><tt class="py-lineno">  11</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L12"></a><tt class="py-lineno">  12</tt>  <tt class="py-line"><tt class="py-comment"># Unless required by applicable law or agreed to in writing,</tt> </tt>
+<a name="L13"></a><tt class="py-lineno">  13</tt>  <tt class="py-line"><tt class="py-comment"># software distributed under the License is distributed on an</tt> </tt>
+<a name="L14"></a><tt class="py-lineno">  14</tt>  <tt class="py-line"><tt class="py-comment"># "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</tt> </tt>
+<a name="L15"></a><tt class="py-lineno">  15</tt>  <tt class="py-line"><tt class="py-comment"># KIND, either express or implied.  See the License for the</tt> </tt>
+<a name="L16"></a><tt class="py-lineno">  16</tt>  <tt class="py-line"><tt class="py-comment"># specific language governing permissions and limitations</tt> </tt>
+<a name="L17"></a><tt class="py-lineno">  17</tt>  <tt class="py-line"><tt class="py-comment"># under the License.</tt> </tt>
+<a name="L18"></a><tt class="py-lineno">  18</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L19"></a><tt class="py-lineno">  19</tt>  <tt class="py-line"> </tt>
+<a name="L20"></a><tt class="py-lineno">  20</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">socket</tt><tt class="py-op">,</tt> <tt class="py-name">struct</tt><tt class="py-op">,</tt> <tt class="py-name">sys</tt><tt class="py-op">,</tt> <tt class="py-name">time</tt> </tt>
+<a name="L21"></a><tt class="py-lineno">  21</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">logging</tt> <tt class="py-keyword">import</tt> <tt class="py-name">getLogger</tt><tt class="py-op">,</tt> <tt class="py-name">DEBUG</tt> </tt>
+<a name="L22"></a><tt class="py-lineno">  22</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt> <tt class="py-keyword">import</tt> <tt class="py-name">compat</tt> </tt>
+<a name="L23"></a><tt class="py-lineno">  23</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt> <tt class="py-keyword">import</tt> <tt class="py-name">sasl</tt> </tt>
+<a name="L24"></a><tt class="py-lineno">  24</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">concurrency</tt> <tt class="py-keyword">import</tt> <tt class="py-name">synchronized</tt> </tt>
+<a name="L25"></a><tt class="py-lineno">  25</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">datatypes</tt> <tt class="py-keyword">import</tt> <tt class="py-name">RangedSet</tt><tt class="py-op">,</tt> <tt class="py-name">Serial</tt> </tt>
+<a name="L26"></a><tt class="py-lineno">  26</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">framing</tt> <tt class="py-keyword">import</tt> <tt class="py-name">OpEncoder</tt><tt class="py-op">,</tt> <tt class="py-name">SegmentEncoder</tt><tt class="py-op">,</tt> <tt class="py-name">FrameEncoder</tt><tt class="py-op">,</tt> \ </tt>
+<a name="L27"></a><tt class="py-lineno">  27</tt>  <tt class="py-line">    <tt class="py-name">FrameDecoder</tt><tt class="py-op">,</tt> <tt class="py-name">SegmentDecoder</tt><tt class="py-op">,</tt> <tt class="py-name">OpDecoder</tt> </tt>
+<a name="L28"></a><tt class="py-lineno">  28</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt id="link-0" class="py-name" targets="Package qpid.messaging=qpid.messaging-module.html"><a title="qpid.messaging" class="py-name" href="#" onclick="return doclink('link-0', 'messaging', 'link-0');">messaging</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module qpid.messaging.address=qpid.messaging.address-module.html"><a title="qpid.messaging.address" class="py-name" href="#" onclick="return doclink('link-1', 'address', 'link-1');">address</a></tt><tt class="py-op">,</tt> <tt id="link-2" class="py-name" targets="Module qpid.messaging.transports=qpid.messaging.transports-module.html"><a title="qpid.messaging.transports" class="py-name" href="#" onclick="return doclink('link-2', 'transports', 'link-2');">transports</a></tt> </tt>
+<a name="L29"></a><tt class="py-lineno">  29</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name"><a title="qpid.messaging" class="py-name" href="#" onclick="return doclink('link-3', 'messaging', 'link-0');">messaging</a></tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Module qpid.messaging.constants=qpid.messaging.constants-module.html"><a title="qpid.messaging.constants" class="py-name" href="#" onclick="return doclink('link-4', 'constants', 'link-4');">constants</a></tt> <tt class="py-keyword">import</tt> <tt id="link-5" class="py-name" targets="Variable qpid.messaging.constants.UNLIMITED=qpid.messaging.constants-module.html#UNLIMITED"><a title="qpid.messaging.constants.UNLIMITED" class="py-name" href="#" onclick="return doclink('link-5', 'UNLIMITED', 'link-5');">UNLIMITED</a></tt><tt class="py-op">,</tt> <tt id="link-6" class="py-name" targets="Variable qpid.messaging.
 constants.REJECTED=qpid.messaging.constants-module.html#REJECTED"><a title="qpid.messaging.constants.REJECTED" class="py-name" href="#" onclick="return doclink('link-6', 'REJECTED', 'link-6');">REJECTED</a></tt><tt class="py-op">,</tt> <tt id="link-7" class="py-name" targets="Variable qpid.messaging.constants.RELEASED=qpid.messaging.constants-module.html#RELEASED"><a title="qpid.messaging.constants.RELEASED" class="py-name" href="#" onclick="return doclink('link-7', 'RELEASED', 'link-7');">RELEASED</a></tt> </tt>
+<a name="L30"></a><tt class="py-lineno">  30</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="qpid.messaging" class="py-name" href="#" onclick="return doclink('link-8', 'messaging', 'link-0');">messaging</a></tt><tt class="py-op">.</tt><tt id="link-9" class="py-name" targets="Module qpid.messaging.exceptions=qpid.messaging.exceptions-module.html"><a title="qpid.messaging.exceptions" class="py-name" href="#" onclick="return doclink('link-9', 'exceptions', 'link-9');">exceptions</a></tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
+<a name="L31"></a><tt class="py-lineno">  31</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name"><a title="qpid.messaging" class="py-name" href="#" onclick="return doclink('link-10', 'messaging', 'link-0');">messaging</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Module qpid.messaging.message=qpid.messaging.message-module.html"><a title="qpid.messaging.message" class="py-name" href="#" onclick="return doclink('link-11', 'message', 'link-11');">message</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">get_codec</tt><tt class="py-op">,</tt> <tt id="link-12" class="py-name" targets="Class qpid.messaging.message.Disposition=qpid.messaging.message.Disposition-class.html"><a title="qpid.messaging.message.Disposition" class="py-name" href="#" onclick="return doclink('link-12', 'Disposition', 'link-12');">Disposition</a></tt><tt class="py-op">,</tt> <tt id="
 link-13" class="py-name" targets="Class qpid.messaging.message.Message=qpid.messaging.message.Message-class.html"><a title="qpid.messaging.message.Message" class="py-name" href="#" onclick="return doclink('link-13', 'Message', 'link-13');">Message</a></tt> </tt>
+<a name="L32"></a><tt class="py-lineno">  32</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="qpid.messaging" class="py-name" href="#" onclick="return doclink('link-14', 'messaging', 'link-0');">messaging</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name" targets="Module qpid.messaging.endpoints=qpid.messaging.endpoints-module.html"><a title="qpid.messaging.endpoints" class="py-name" href="#" onclick="return doclink('link-15', 'endpoints', 'link-15');">endpoints</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">MangledString</tt> </tt>
+<a name="L33"></a><tt class="py-lineno">  33</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">ops</tt> <tt class="py-keyword">import</tt> <tt class="py-op">*</tt> </tt>
+<a name="L34"></a><tt class="py-lineno">  34</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">selector</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Selector</tt> </tt>
+<a name="L35"></a><tt class="py-lineno">  35</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Module qpid.messaging.util=qpid.messaging.util-module.html"><a title="qpid.messaging.util" class="py-name" href="#" onclick="return doclink('link-16', 'util', 'link-16');">util</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">URL</tt><tt class="py-op">,</tt> <tt class="py-name">default</tt><tt class="py-op">,</tt><tt class="py-name">get_client_properties_with_defaults</tt> </tt>
+<a name="L36"></a><tt class="py-lineno">  36</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">validator</tt> <tt class="py-keyword">import</tt> <tt class="py-name">And</tt><tt class="py-op">,</tt> <tt class="py-name">Context</tt><tt class="py-op">,</tt> <tt class="py-name">List</tt><tt class="py-op">,</tt> <tt class="py-name">Map</tt><tt class="py-op">,</tt> <tt class="py-name">Types</tt><tt class="py-op">,</tt> <tt class="py-name">Values</tt> </tt>
+<a name="L37"></a><tt class="py-lineno">  37</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">threading</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Condition</tt><tt class="py-op">,</tt> <tt class="py-name">Thread</tt> </tt>
+<a name="L38"></a><tt class="py-lineno">  38</tt>  <tt class="py-line"> </tt>
+<a name="L39"></a><tt class="py-lineno">  39</tt>  <tt class="py-line"><tt id="link-17" class="py-name" targets="Variable qpid.messaging.driver.log=qpid.messaging.driver-module.html#log,Variable qpid.messaging.endpoints.log=qpid.messaging.endpoints-module.html#log,Variable qpid.messaging.util.log=qpid.messaging.util-module.html#log"><a title="qpid.messaging.driver.log
+qpid.messaging.endpoints.log
+qpid.messaging.util.log" class="py-name" href="#" onclick="return doclink('link-17', 'log', 'link-17');">log</a></tt> <tt class="py-op">=</tt> <tt class="py-name">getLogger</tt><tt class="py-op">(</tt><tt class="py-string">"qpid.messaging"</tt><tt class="py-op">)</tt> </tt>
+<a name="L40"></a><tt class="py-lineno">  40</tt>  <tt class="py-line"><tt id="link-18" class="py-name" targets="Variable qpid.messaging.driver.rawlog=qpid.messaging.driver-module.html#rawlog"><a title="qpid.messaging.driver.rawlog" class="py-name" href="#" onclick="return doclink('link-18', 'rawlog', 'link-18');">rawlog</a></tt> <tt class="py-op">=</tt> <tt class="py-name">getLogger</tt><tt class="py-op">(</tt><tt class="py-string">"qpid.messaging.io.raw"</tt><tt class="py-op">)</tt> </tt>
+<a name="L41"></a><tt class="py-lineno">  41</tt>  <tt class="py-line"><tt id="link-19" class="py-name" targets="Variable qpid.messaging.driver.opslog=qpid.messaging.driver-module.html#opslog"><a title="qpid.messaging.driver.opslog" class="py-name" href="#" onclick="return doclink('link-19', 'opslog', 'link-19');">opslog</a></tt> <tt class="py-op">=</tt> <tt class="py-name">getLogger</tt><tt class="py-op">(</tt><tt class="py-string">"qpid.messaging.io.ops"</tt><tt class="py-op">)</tt> </tt>
+<a name="addr2reply_to"></a><div id="addr2reply_to-def"><a name="L42"></a><tt class="py-lineno">  42</tt>  <tt class="py-line"> </tt>
+<a name="L43"></a><tt class="py-lineno">  43</tt> <a class="py-toggle" href="#" id="addr2reply_to-toggle" onclick="return toggle('addr2reply_to');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver-module.html#addr2reply_to">addr2reply_to</a><tt class="py-op">(</tt><tt class="py-param">addr</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="addr2reply_to-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="addr2reply_to-expanded"><a name="L44"></a><tt class="py-lineno">  44</tt>  <tt class="py-line">  <tt id="link-20" class="py-name" targets="Variable qpid.messaging.driver.name=qpid.messaging.driver-module.html#name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-20', 'name', 'link-20');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">subject</tt><tt class="py-op">,</tt> <tt class="py-name">options</tt> <tt class="py-op">=</tt> <tt id="link-21" class="py-name"><a title="qpid.messaging.address" class="py-name" href="#" onclick="return doclink('link-21', 'address', 'link-1');">address</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name" targets="Function qpid.messaging.address.parse()=qpid.messaging.address-module.html#parse"><a title="qpid.messaging.address.parse" class="py-name" href="#" onclick="return doclink('link
 -22', 'parse', 'link-22');">parse</a></tt><tt class="py-op">(</tt><tt class="py-name">addr</tt><tt class="py-op">)</tt> </tt>
+<a name="L45"></a><tt class="py-lineno">  45</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">options</tt><tt class="py-op">:</tt> </tt>
+<a name="L46"></a><tt class="py-lineno">  46</tt>  <tt class="py-line">    <tt class="py-name">type</tt> <tt class="py-op">=</tt> <tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"node"</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"type"</tt><tt class="py-op">)</tt> </tt>
+<a name="L47"></a><tt class="py-lineno">  47</tt>  <tt class="py-line">  <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L48"></a><tt class="py-lineno">  48</tt>  <tt class="py-line">    <tt class="py-name">type</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
+<a name="L49"></a><tt class="py-lineno">  49</tt>  <tt class="py-line"> </tt>
+<a name="L50"></a><tt class="py-lineno">  50</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">type</tt> <tt class="py-op">==</tt> <tt class="py-string">"topic"</tt><tt class="py-op">:</tt> </tt>
+<a name="L51"></a><tt class="py-lineno">  51</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">ReplyTo</tt><tt class="py-op">(</tt><tt id="link-23" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-23', 'name', 'link-20');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">subject</tt><tt class="py-op">)</tt> </tt>
+<a name="L52"></a><tt class="py-lineno">  52</tt>  <tt class="py-line">  <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L53"></a><tt class="py-lineno">  53</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">ReplyTo</tt><tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt id="link-24" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-24', 'name', 'link-20');">name</a></tt><tt class="py-op">)</tt> </tt>
+</div><a name="L54"></a><tt class="py-lineno">  54</tt>  <tt class="py-line"> </tt>
+<a name="reply_to2addr"></a><div id="reply_to2addr-def"><a name="L55"></a><tt class="py-lineno">  55</tt> <a class="py-toggle" href="#" id="reply_to2addr-toggle" onclick="return toggle('reply_to2addr');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver-module.html#reply_to2addr">reply_to2addr</a><tt class="py-op">(</tt><tt class="py-param">reply_to</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="reply_to2addr-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="reply_to2addr-expanded"><a name="L56"></a><tt class="py-lineno">  56</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">reply_to</tt><tt class="py-op">.</tt><tt class="py-name">exchange</tt> <tt class="py-keyword">in</tt> <tt class="py-op">(</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-string">""</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+<a name="L57"></a><tt class="py-lineno">  57</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">reply_to</tt><tt class="py-op">.</tt><tt class="py-name">routing_key</tt> </tt>
+<a name="L58"></a><tt class="py-lineno">  58</tt>  <tt class="py-line">  <tt class="py-keyword">elif</tt> <tt class="py-name">reply_to</tt><tt class="py-op">.</tt><tt class="py-name">routing_key</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
+<a name="L59"></a><tt class="py-lineno">  59</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-string">"%s; {node: {type: topic}}"</tt> <tt class="py-op">%</tt> <tt class="py-name">reply_to</tt><tt class="py-op">.</tt><tt class="py-name">exchange</tt> </tt>
+<a name="L60"></a><tt class="py-lineno">  60</tt>  <tt class="py-line">  <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L61"></a><tt class="py-lineno">  61</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-string">"%s/%s; {node: {type: topic}}"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">reply_to</tt><tt class="py-op">.</tt><tt class="py-name">exchange</tt><tt class="py-op">,</tt> <tt class="py-name">reply_to</tt><tt class="py-op">.</tt><tt class="py-name">routing_key</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L62"></a><tt class="py-lineno">  62</tt>  <tt class="py-line"> </tt>
+<a name="Attachment"></a><div id="Attachment-def"><a name="L63"></a><tt class="py-lineno">  63</tt> <a class="py-toggle" href="#" id="Attachment-toggle" onclick="return toggle('Attachment');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="qpid.messaging.driver.Attachment-class.html">Attachment</a><tt class="py-op">:</tt> </tt>
+</div><div id="Attachment-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="Attachment-expanded"><a name="L64"></a><tt class="py-lineno">  64</tt>  <tt class="py-line"> </tt>
+<a name="Attachment.__init__"></a><div id="Attachment.__init__-def"><a name="L65"></a><tt class="py-lineno">  65</tt> <a class="py-toggle" href="#" id="Attachment.__init__-toggle" onclick="return toggle('Attachment.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.Attachment-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">target</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Attachment.__init__-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="Attachment.__init__-expanded"><a name="L66"></a><tt class="py-lineno">  66</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">target</tt> <tt class="py-op">=</tt> <tt class="py-name">target</tt> </tt>
+</div></div><a name="L67"></a><tt class="py-lineno">  67</tt>  <tt class="py-line"> </tt>
+<a name="L68"></a><tt class="py-lineno">  68</tt>  <tt class="py-line"><tt class="py-comment"># XXX</tt> </tt>
+<a name="L69"></a><tt class="py-lineno">  69</tt>  <tt class="py-line"> </tt>
+<a name="L70"></a><tt class="py-lineno">  70</tt>  <tt class="py-line"><tt id="link-25" class="py-name" targets="Variable qpid.messaging.driver.DURABLE_DEFAULT=qpid.messaging.driver-module.html#DURABLE_DEFAULT"><a title="qpid.messaging.driver.DURABLE_DEFAULT" class="py-name" href="#" onclick="return doclink('link-25', 'DURABLE_DEFAULT', 'link-25');">DURABLE_DEFAULT</a></tt><tt class="py-op">=</tt><tt class="py-name">False</tt> </tt>
+<a name="Pattern"></a><div id="Pattern-def"><a name="L71"></a><tt class="py-lineno">  71</tt>  <tt class="py-line"> </tt>
+<a name="L72"></a><tt class="py-lineno">  72</tt>  <tt class="py-line"><tt class="py-comment"># XXX</tt> </tt>
+<a name="L73"></a><tt class="py-lineno">  73</tt>  <tt class="py-line"> </tt>
+<a name="L74"></a><tt class="py-lineno">  74</tt> <a class="py-toggle" href="#" id="Pattern-toggle" onclick="return toggle('Pattern');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="qpid.messaging.driver.Pattern-class.html">Pattern</a><tt class="py-op">:</tt> </tt>
+</div><div id="Pattern-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="Pattern-expanded"><a name="L75"></a><tt class="py-lineno">  75</tt>  <tt class="py-line">  <tt class="py-docstring">"""</tt> </tt>
+<a name="L76"></a><tt class="py-lineno">  76</tt>  <tt class="py-line"><tt class="py-docstring">  The pattern filter matches the supplied wildcard pattern against a</tt> </tt>
+<a name="L77"></a><tt class="py-lineno">  77</tt>  <tt class="py-line"><tt class="py-docstring">  message subject.</tt> </tt>
+<a name="L78"></a><tt class="py-lineno">  78</tt>  <tt class="py-line"><tt class="py-docstring">  """</tt> </tt>
+<a name="L79"></a><tt class="py-lineno">  79</tt>  <tt class="py-line"> </tt>
+<a name="Pattern.__init__"></a><div id="Pattern.__init__-def"><a name="L80"></a><tt class="py-lineno">  80</tt> <a class="py-toggle" href="#" id="Pattern.__init__-toggle" onclick="return toggle('Pattern.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.Pattern-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">value</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Pattern.__init__-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="Pattern.__init__-expanded"><a name="L81"></a><tt class="py-lineno">  81</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-name">value</tt> </tt>
+</div><a name="L82"></a><tt class="py-lineno">  82</tt>  <tt class="py-line"> </tt>
+<a name="L83"></a><tt class="py-lineno">  83</tt>  <tt class="py-line">  <tt class="py-comment"># XXX: this should become part of the driver</tt> </tt>
+<a name="Pattern._bind"></a><div id="Pattern._bind-def"><a name="L84"></a><tt class="py-lineno">  84</tt> <a class="py-toggle" href="#" id="Pattern._bind-toggle" onclick="return toggle('Pattern._bind');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.Pattern-class.html#_bind">_bind</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sst</tt><tt class="py-op">,</tt> <tt class="py-param">exchange</tt><tt class="py-op">,</tt> <tt class="py-param">queue</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Pattern._bind-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="Pattern._bind-expanded"><a name="L85"></a><tt class="py-lineno">  85</tt>  <tt class="py-line">    <tt class="py-keyword">from</tt> <tt class="py-name">qpid</tt><tt class="py-op">.</tt><tt class="py-name">ops</tt> <tt class="py-keyword">import</tt> <tt class="py-name">ExchangeBind</tt> </tt>
+<a name="L86"></a><tt class="py-lineno">  86</tt>  <tt class="py-line"> </tt>
+<a name="L87"></a><tt class="py-lineno">  87</tt>  <tt class="py-line">    <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name" targets="Method qpid.messaging.driver.SessionState.write_cmd()=qpid.messaging.driver.SessionState-class.html#write_cmd"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-26', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">ExchangeBind</tt><tt class="py-op">(</tt><tt class="py-name">exchange</tt><tt class="py-op">=</tt><tt class="py-name">exchange</tt><tt class="py-op">,</tt> <tt class="py-name">queue</tt><tt class="py-op">=</tt><tt class="py-name">queue</tt><tt class="py-op">,</tt> </tt>
+<a name="L88"></a><tt class="py-lineno">  88</tt>  <tt class="py-line">                               <tt class="py-name">binding_key</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">"*"</tt><tt class="py-op">,</tt> <tt class="py-string">"#"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+</div></div><a name="L89"></a><tt class="py-lineno">  89</tt>  <tt class="py-line"> </tt>
+<a name="L90"></a><tt class="py-lineno">  90</tt>  <tt class="py-line"><tt id="link-27" class="py-name" targets="Variable qpid.messaging.driver.SUBJECT_DEFAULTS=qpid.messaging.driver-module.html#SUBJECT_DEFAULTS"><a title="qpid.messaging.driver.SUBJECT_DEFAULTS" class="py-name" href="#" onclick="return doclink('link-27', 'SUBJECT_DEFAULTS', 'link-27');">SUBJECT_DEFAULTS</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
+<a name="L91"></a><tt class="py-lineno">  91</tt>  <tt class="py-line">  <tt class="py-string">"topic"</tt><tt class="py-op">:</tt> <tt class="py-string">"#"</tt> </tt>
+<a name="L92"></a><tt class="py-lineno">  92</tt>  <tt class="py-line">  <tt class="py-op">}</tt> </tt>
+<a name="noop"></a><div id="noop-def"><a name="L93"></a><tt class="py-lineno">  93</tt>  <tt class="py-line"> </tt>
+<a name="L94"></a><tt class="py-lineno">  94</tt> <a class="py-toggle" href="#" id="noop-toggle" onclick="return toggle('noop');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver-module.html#noop">noop</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-keyword">pass</tt> </tt>
+</div><a name="sync_noop"></a><div id="sync_noop-def"><a name="L95"></a><tt class="py-lineno">  95</tt> <a class="py-toggle" href="#" id="sync_noop-toggle" onclick="return toggle('sync_noop');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver-module.html#sync_noop">sync_noop</a><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-keyword">pass</tt> </tt>
+</div><a name="L96"></a><tt class="py-lineno">  96</tt>  <tt class="py-line"> </tt>
+<a name="SessionState"></a><div id="SessionState-def"><a name="L97"></a><tt class="py-lineno">  97</tt> <a class="py-toggle" href="#" id="SessionState-toggle" onclick="return toggle('SessionState');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html">SessionState</a><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="SessionState-expanded"><a name="L98"></a><tt class="py-lineno">  98</tt>  <tt class="py-line"> </tt>
+<a name="SessionState.__init__"></a><div id="SessionState.__init__-def"><a name="L99"></a><tt class="py-lineno">  99</tt> <a class="py-toggle" href="#" id="SessionState.__init__-toggle" onclick="return toggle('SessionState.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">driver</tt><tt class="py-op">,</tt> <tt class="py-param">session</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">channel</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState.__init__-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="SessionState.__init__-expanded"><a name="L100"></a><tt class="py-lineno"> 100</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-28" class="py-name" targets="Module qpid.messaging.driver=qpid.messaging.driver-module.html"><a title="qpid.messaging.driver" class="py-name" href="#" onclick="return doclink('link-28', 'driver', 'link-28');">driver</a></tt> <tt class="py-op">=</tt> <tt id="link-29" class="py-name"><a title="qpid.messaging.driver" class="py-name" href="#" onclick="return doclink('link-29', 'driver', 'link-28');">driver</a></tt> </tt>
+<a name="L101"></a><tt class="py-lineno"> 101</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method qpid.messaging.endpoints.Connection.session()=qpid.messaging.endpoints.Connection-class.html#session"><a title="qpid.messaging.endpoints.Connection.session" class="py-name" href="#" onclick="return doclink('link-30', 'session', 'link-30');">session</a></tt> <tt class="py-op">=</tt> <tt id="link-31" class="py-name"><a title="qpid.messaging.endpoints.Connection.session" class="py-name" href="#" onclick="return doclink('link-31', 'session', 'link-30');">session</a></tt> </tt>
+<a name="L102"></a><tt class="py-lineno"> 102</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-32', 'name', 'link-20');">name</a></tt> <tt class="py-op">=</tt> <tt id="link-33" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-33', 'name', 'link-20');">name</a></tt> </tt>
+<a name="L103"></a><tt class="py-lineno"> 103</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel</tt> <tt class="py-op">=</tt> <tt class="py-name">channel</tt> </tt>
+<a name="L104"></a><tt class="py-lineno"> 104</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">detached</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
+<a name="L105"></a><tt class="py-lineno"> 105</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">committing</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
+<a name="L106"></a><tt class="py-lineno"> 106</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">aborting</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
+<a name="L107"></a><tt class="py-lineno"> 107</tt>  <tt class="py-line"> </tt>
+<a name="L108"></a><tt class="py-lineno"> 108</tt>  <tt class="py-line">    <tt class="py-comment"># sender state</tt> </tt>
+<a name="L109"></a><tt class="py-lineno"> 109</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sent</tt> <tt class="py-op">=</tt> <tt class="py-name">Serial</tt><tt class="py-op">(</tt><tt class="py-number">0</tt><tt class="py-op">)</tt> </tt>
+<a name="L110"></a><tt class="py-lineno"> 110</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">acknowledged</tt> <tt class="py-op">=</tt> <tt class="py-name">RangedSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L111"></a><tt class="py-lineno"> 111</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">actions</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
+<a name="L112"></a><tt class="py-lineno"> 112</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">min_completion</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sent</tt> </tt>
+<a name="L113"></a><tt class="py-lineno"> 113</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_completion</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sent</tt> </tt>
+<a name="L114"></a><tt class="py-lineno"> 114</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">results</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
+<a name="L115"></a><tt class="py-lineno"> 115</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">need_sync</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
+<a name="L116"></a><tt class="py-lineno"> 116</tt>  <tt class="py-line"> </tt>
+<a name="L117"></a><tt class="py-lineno"> 117</tt>  <tt class="py-line">    <tt class="py-comment"># receiver state</tt> </tt>
+<a name="L118"></a><tt class="py-lineno"> 118</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">received</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
+<a name="L119"></a><tt class="py-lineno"> 119</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">executed</tt> <tt class="py-op">=</tt> <tt class="py-name">RangedSet</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L120"></a><tt class="py-lineno"> 120</tt>  <tt class="py-line"> </tt>
+<a name="L121"></a><tt class="py-lineno"> 121</tt>  <tt class="py-line">    <tt class="py-comment"># XXX: need to periodically exchange completion/known_completion</tt> </tt>
+<a name="L122"></a><tt class="py-lineno"> 122</tt>  <tt class="py-line"> </tt>
+<a name="L123"></a><tt class="py-lineno"> 123</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">destinations</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
+</div><a name="L124"></a><tt class="py-lineno"> 124</tt>  <tt class="py-line"> </tt>
+<a name="SessionState.write_query"></a><div id="SessionState.write_query-def"><a name="L125"></a><tt class="py-lineno"> 125</tt> <a class="py-toggle" href="#" id="SessionState.write_query-toggle" onclick="return toggle('SessionState.write_query');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html#write_query">write_query</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">query</tt><tt class="py-op">,</tt> <tt class="py-param">handler</tt><tt class="py-op">,</tt> <tt class="py-param">obj</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState.write_query-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="SessionState.write_query-expanded"><a name="L126"></a><tt class="py-lineno"> 126</tt>  <tt class="py-line">    <tt class="py-name">id</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sent</tt> </tt>
+<a name="L127"></a><tt class="py-lineno"> 127</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-34', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">query</tt><tt class="py-op">,</tt> <tt class="py-keyword">lambda</tt><tt class="py-op">:</tt> <tt class="py-name">handler</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">results</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-name">id</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">obj</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L128"></a><tt class="py-lineno"> 128</tt>  <tt class="py-line"> </tt>
+<a name="SessionState.apply_overrides"></a><div id="SessionState.apply_overrides-def"><a name="L129"></a><tt class="py-lineno"> 129</tt> <a class="py-toggle" href="#" id="SessionState.apply_overrides-toggle" onclick="return toggle('SessionState.apply_overrides');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html#apply_overrides">apply_overrides</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cmd</tt><tt class="py-op">,</tt> <tt class="py-param">overrides</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState.apply_overrides-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="SessionState.apply_overrides-expanded"><a name="L130"></a><tt class="py-lineno"> 130</tt>  <tt class="py-line">    <tt class="py-keyword">for</tt> <tt class="py-name">k</tt><tt class="py-op">,</tt> <tt class="py-name">v</tt> <tt class="py-keyword">in</tt> <tt class="py-name">overrides</tt><tt class="py-op">.</tt><tt class="py-name">items</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+<a name="L131"></a><tt class="py-lineno"> 131</tt>  <tt class="py-line">      <tt class="py-name">cmd</tt><tt class="py-op">[</tt><tt class="py-name">k</tt><tt class="py-op">.</tt><tt class="py-name">replace</tt><tt class="py-op">(</tt><tt class="py-string">'-'</tt><tt class="py-op">,</tt> <tt class="py-string">'_'</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">v</tt> </tt>
+</div><a name="L132"></a><tt class="py-lineno"> 132</tt>  <tt class="py-line"> </tt>
+<a name="SessionState.write_cmd"></a><div id="SessionState.write_cmd-def"><a name="L133"></a><tt class="py-lineno"> 133</tt> <a class="py-toggle" href="#" id="SessionState.write_cmd-toggle" onclick="return toggle('SessionState.write_cmd');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html#write_cmd">write_cmd</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cmd</tt><tt class="py-op">,</tt> <tt class="py-param">action</tt><tt class="py-op">=</tt><tt id="link-35" class="py-name" targets="Function qpid.messaging.driver.noop()=qpid.messaging.driver-module.html#noop"><a title="qpid.messaging.driver.noop" class="py-name" href="#" onclick="return doclink('link-35', 'noop', 'link-35');">noop</a></tt><tt class="py-op">,</tt> <tt class="py-param">overrides</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param
 ">sync</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState.write_cmd-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="SessionState.write_cmd-expanded"><a name="L134"></a><tt class="py-lineno"> 134</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">overrides</tt><tt class="py-op">:</tt> </tt>
+<a name="L135"></a><tt class="py-lineno"> 135</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name" targets="Method qpid.messaging.driver.SessionState.apply_overrides()=qpid.messaging.driver.SessionState-class.html#apply_overrides"><a title="qpid.messaging.driver.SessionState.apply_overrides" class="py-name" href="#" onclick="return doclink('link-36', 'apply_overrides', 'link-36');">apply_overrides</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">,</tt> <tt class="py-name">overrides</tt><tt class="py-op">)</tt> </tt>
+<a name="L136"></a><tt class="py-lineno"> 136</tt>  <tt class="py-line"> </tt>
+<a name="L137"></a><tt class="py-lineno"> 137</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">action</tt> <tt class="py-op">!=</tt> <tt id="link-37" class="py-name"><a title="qpid.messaging.driver.noop" class="py-name" href="#" onclick="return doclink('link-37', 'noop', 'link-35');">noop</a></tt><tt class="py-op">:</tt> </tt>
+<a name="L138"></a><tt class="py-lineno"> 138</tt>  <tt class="py-line">      <tt class="py-name">cmd</tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Method qpid.messaging.endpoints.Sender.sync()=qpid.messaging.endpoints.Sender-class.html#sync,Method qpid.messaging.endpoints.Session.sync()=qpid.messaging.endpoints.Session-class.html#sync"><a title="qpid.messaging.endpoints.Sender.sync
+qpid.messaging.endpoints.Session.sync" class="py-name" href="#" onclick="return doclink('link-38', 'sync', 'link-38');">sync</a></tt> <tt class="py-op">=</tt> <tt id="link-39" class="py-name"><a title="qpid.messaging.endpoints.Sender.sync
+qpid.messaging.endpoints.Session.sync" class="py-name" href="#" onclick="return doclink('link-39', 'sync', 'link-38');">sync</a></tt> </tt>
+<a name="L139"></a><tt class="py-lineno"> 139</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">detached</tt><tt class="py-op">:</tt> </tt>
+<a name="L140"></a><tt class="py-lineno"> 140</tt>  <tt class="py-line">      <tt class="py-keyword">raise</tt> <tt class="py-name">Exception</tt><tt class="py-op">(</tt><tt class="py-string">"detached"</tt><tt class="py-op">)</tt> </tt>
+<a name="L141"></a><tt class="py-lineno"> 141</tt>  <tt class="py-line">    <tt class="py-name">cmd</tt><tt class="py-op">.</tt><tt class="py-name">id</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sent</tt> </tt>
+<a name="L142"></a><tt class="py-lineno"> 142</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">sent</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
+<a name="L143"></a><tt class="py-lineno"> 143</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">actions</tt><tt class="py-op">[</tt><tt class="py-name">cmd</tt><tt class="py-op">.</tt><tt class="py-name">id</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">action</tt> </tt>
+<a name="L144"></a><tt class="py-lineno"> 144</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">max_completion</tt> <tt class="py-op">=</tt> <tt class="py-name">cmd</tt><tt class="py-op">.</tt><tt class="py-name">id</tt> </tt>
+<a name="L145"></a><tt class="py-lineno"> 145</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-40" class="py-name" targets="Method qpid.messaging.driver.Engine.write_op()=qpid.messaging.driver.Engine-class.html#write_op,Method qpid.messaging.driver.SessionState.write_op()=qpid.messaging.driver.SessionState-class.html#write_op"><a title="qpid.messaging.driver.Engine.write_op
+qpid.messaging.driver.SessionState.write_op" class="py-name" href="#" onclick="return doclink('link-40', 'write_op', 'link-40');">write_op</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
+<a name="L146"></a><tt class="py-lineno"> 146</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">need_sync</tt> <tt class="py-op">=</tt> <tt class="py-keyword">not</tt> <tt class="py-name">cmd</tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="qpid.messaging.endpoints.Sender.sync
+qpid.messaging.endpoints.Session.sync" class="py-name" href="#" onclick="return doclink('link-41', 'sync', 'link-38');">sync</a></tt> </tt>
+</div><a name="L147"></a><tt class="py-lineno"> 147</tt>  <tt class="py-line"> </tt>
+<a name="SessionState.write_cmds"></a><div id="SessionState.write_cmds-def"><a name="L148"></a><tt class="py-lineno"> 148</tt> <a class="py-toggle" href="#" id="SessionState.write_cmds-toggle" onclick="return toggle('SessionState.write_cmds');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html#write_cmds">write_cmds</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">cmds</tt><tt class="py-op">,</tt> <tt class="py-param">action</tt><tt class="py-op">=</tt><tt id="link-42" class="py-name"><a title="qpid.messaging.driver.noop" class="py-name" href="#" onclick="return doclink('link-42', 'noop', 'link-35');">noop</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState.write_cmds-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="SessionState.write_cmds-expanded"><a name="L149"></a><tt class="py-lineno"> 149</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">cmds</tt><tt class="py-op">:</tt> </tt>
+<a name="L150"></a><tt class="py-lineno"> 150</tt>  <tt class="py-line">      <tt class="py-keyword">for</tt> <tt class="py-name">cmd</tt> <tt class="py-keyword">in</tt> <tt class="py-name">cmds</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
+<a name="L151"></a><tt class="py-lineno"> 151</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-43', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">cmd</tt><tt class="py-op">)</tt> </tt>
+<a name="L152"></a><tt class="py-lineno"> 152</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-44', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">cmds</tt><tt class="py-op">[</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">action</tt><tt class="py-op">)</tt> </tt>
+<a name="L153"></a><tt class="py-lineno"> 153</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L154"></a><tt class="py-lineno"> 154</tt>  <tt class="py-line">      <tt class="py-name">action</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L155"></a><tt class="py-lineno"> 155</tt>  <tt class="py-line"> </tt>
+<a name="SessionState.write_op"></a><div id="SessionState.write_op-def"><a name="L156"></a><tt class="py-lineno"> 156</tt> <a class="py-toggle" href="#" id="SessionState.write_op-toggle" onclick="return toggle('SessionState.write_op');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.SessionState-class.html#write_op">write_op</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">op</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="SessionState.write_op-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="SessionState.write_op-expanded"><a name="L157"></a><tt class="py-lineno"> 157</tt>  <tt class="py-line">    <tt class="py-name">op</tt><tt class="py-op">.</tt><tt class="py-name">channel</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">channel</tt> </tt>
+<a name="L158"></a><tt class="py-lineno"> 158</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-45" class="py-name"><a title="qpid.messaging.driver" class="py-name" href="#" onclick="return doclink('link-45', 'driver', 'link-28');">driver</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="qpid.messaging.driver.Engine.write_op
+qpid.messaging.driver.SessionState.write_op" class="py-name" href="#" onclick="return doclink('link-46', 'write_op', 'link-40');">write_op</a></tt><tt class="py-op">(</tt><tt class="py-name">op</tt><tt class="py-op">)</tt> </tt>
+</div></div><a name="L159"></a><tt class="py-lineno"> 159</tt>  <tt class="py-line"> </tt>
+<a name="L160"></a><tt class="py-lineno"> 160</tt>  <tt class="py-line"><tt id="link-47" class="py-name" targets="Variable qpid.messaging.driver.POLICIES=qpid.messaging.driver-module.html#POLICIES"><a title="qpid.messaging.driver.POLICIES" class="py-name" href="#" onclick="return doclink('link-47', 'POLICIES', 'link-47');">POLICIES</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Values</tt><tt class="py-op">(</tt><tt class="py-string">"always"</tt><tt class="py-op">,</tt> <tt class="py-string">"sender"</tt><tt class="py-op">,</tt> <tt class="py-string">"receiver"</tt><tt class="py-op">,</tt> <tt class="py-string">"never"</tt><tt class="py-op">)</tt> </tt>
+<a name="L161"></a><tt class="py-lineno"> 161</tt>  <tt class="py-line"><tt id="link-48" class="py-name" targets="Variable qpid.messaging.driver.RELIABILITY=qpid.messaging.driver-module.html#RELIABILITY"><a title="qpid.messaging.driver.RELIABILITY" class="py-name" href="#" onclick="return doclink('link-48', 'RELIABILITY', 'link-48');">RELIABILITY</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Values</tt><tt class="py-op">(</tt><tt class="py-string">"unreliable"</tt><tt class="py-op">,</tt> <tt class="py-string">"at-most-once"</tt><tt class="py-op">,</tt> <tt class="py-string">"at-least-once"</tt><tt class="py-op">,</tt> </tt>
+<a name="L162"></a><tt class="py-lineno"> 162</tt>  <tt class="py-line">                     <tt class="py-string">"exactly-once"</tt><tt class="py-op">)</tt> </tt>
+<a name="L163"></a><tt class="py-lineno"> 163</tt>  <tt class="py-line"> </tt>
+<a name="L164"></a><tt class="py-lineno"> 164</tt>  <tt class="py-line"><tt id="link-49" class="py-name" targets="Variable qpid.messaging.driver.DECLARE=qpid.messaging.driver-module.html#DECLARE"><a title="qpid.messaging.driver.DECLARE" class="py-name" href="#" onclick="return doclink('link-49', 'DECLARE', 'link-49');">DECLARE</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Map</tt><tt class="py-op">(</tt><tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> <tt class="py-name">restricted</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
+<a name="L165"></a><tt class="py-lineno"> 165</tt>  <tt class="py-line"><tt id="link-50" class="py-name" targets="Variable qpid.messaging.driver.BINDINGS=qpid.messaging.driver-module.html#BINDINGS"><a title="qpid.messaging.driver.BINDINGS" class="py-name" href="#" onclick="return doclink('link-50', 'BINDINGS', 'link-50');">BINDINGS</a></tt> <tt class="py-op">=</tt> <tt class="py-name">List</tt><tt class="py-op">(</tt><tt class="py-name">Map</tt><tt class="py-op">(</tt><tt class="py-op">{</tt> </tt>
+<a name="L166"></a><tt class="py-lineno"> 166</tt>  <tt class="py-line">      <tt class="py-string">"exchange"</tt><tt class="py-op">:</tt> <tt class="py-name">Types</tt><tt class="py-op">(</tt><tt class="py-name">basestring</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L167"></a><tt class="py-lineno"> 167</tt>  <tt class="py-line">      <tt class="py-string">"queue"</tt><tt class="py-op">:</tt> <tt class="py-name">Types</tt><tt class="py-op">(</tt><tt class="py-name">basestring</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L168"></a><tt class="py-lineno"> 168</tt>  <tt class="py-line">      <tt class="py-string">"key"</tt><tt class="py-op">:</tt> <tt class="py-name">Types</tt><tt class="py-op">(</tt><tt class="py-name">basestring</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L169"></a><tt class="py-lineno"> 169</tt>  <tt class="py-line">      <tt class="py-string">"arguments"</tt><tt class="py-op">:</tt> <tt class="py-name">Map</tt><tt class="py-op">(</tt><tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> <tt class="py-name">restricted</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
+<a name="L170"></a><tt class="py-lineno"> 170</tt>  <tt class="py-line">      <tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L171"></a><tt class="py-lineno"> 171</tt>  <tt class="py-line"> </tt>
+<a name="L172"></a><tt class="py-lineno"> 172</tt>  <tt class="py-line"><tt id="link-51" class="py-name" targets="Variable qpid.messaging.driver.COMMON_OPTS=qpid.messaging.driver-module.html#COMMON_OPTS"><a title="qpid.messaging.driver.COMMON_OPTS" class="py-name" href="#" onclick="return doclink('link-51', 'COMMON_OPTS', 'link-51');">COMMON_OPTS</a></tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt> </tt>
+<a name="L173"></a><tt class="py-lineno"> 173</tt>  <tt class="py-line">  <tt class="py-string">"create"</tt><tt class="py-op">:</tt> <tt id="link-52" class="py-name"><a title="qpid.messaging.driver.POLICIES" class="py-name" href="#" onclick="return doclink('link-52', 'POLICIES', 'link-47');">POLICIES</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L174"></a><tt class="py-lineno"> 174</tt>  <tt class="py-line">  <tt class="py-string">"delete"</tt><tt class="py-op">:</tt> <tt id="link-53" class="py-name"><a title="qpid.messaging.driver.POLICIES" class="py-name" href="#" onclick="return doclink('link-53', 'POLICIES', 'link-47');">POLICIES</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L175"></a><tt class="py-lineno"> 175</tt>  <tt class="py-line">  <tt class="py-string">"assert"</tt><tt class="py-op">:</tt> <tt id="link-54" class="py-name"><a title="qpid.messaging.driver.POLICIES" class="py-name" href="#" onclick="return doclink('link-54', 'POLICIES', 'link-47');">POLICIES</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L176"></a><tt class="py-lineno"> 176</tt>  <tt class="py-line">  <tt class="py-string">"node"</tt><tt class="py-op">:</tt> <tt class="py-name">Map</tt><tt class="py-op">(</tt><tt class="py-op">{</tt> </tt>
+<a name="L177"></a><tt class="py-lineno"> 177</tt>  <tt class="py-line">      <tt class="py-string">"type"</tt><tt class="py-op">:</tt> <tt class="py-name">Values</tt><tt class="py-op">(</tt><tt class="py-string">"queue"</tt><tt class="py-op">,</tt> <tt class="py-string">"topic"</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L178"></a><tt class="py-lineno"> 178</tt>  <tt class="py-line">      <tt class="py-string">"durable"</tt><tt class="py-op">:</tt> <tt class="py-name">Types</tt><tt class="py-op">(</tt><tt class="py-name">bool</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L179"></a><tt class="py-lineno"> 179</tt>  <tt class="py-line">      <tt class="py-string">"x-declare"</tt><tt class="py-op">:</tt> <tt id="link-55" class="py-name"><a title="qpid.messaging.driver.DECLARE" class="py-name" href="#" onclick="return doclink('link-55', 'DECLARE', 'link-49');">DECLARE</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L180"></a><tt class="py-lineno"> 180</tt>  <tt class="py-line">      <tt class="py-string">"x-bindings"</tt><tt class="py-op">:</tt> <tt id="link-56" class="py-name"><a title="qpid.messaging.driver.BINDINGS" class="py-name" href="#" onclick="return doclink('link-56', 'BINDINGS', 'link-50');">BINDINGS</a></tt> </tt>
+<a name="L181"></a><tt class="py-lineno"> 181</tt>  <tt class="py-line">      <tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L182"></a><tt class="py-lineno"> 182</tt>  <tt class="py-line">  <tt class="py-string">"link"</tt><tt class="py-op">:</tt> <tt class="py-name">Map</tt><tt class="py-op">(</tt><tt class="py-op">{</tt> </tt>
+<a name="L183"></a><tt class="py-lineno"> 183</tt>  <tt class="py-line">      <tt class="py-string">"name"</tt><tt class="py-op">:</tt> <tt class="py-name">Types</tt><tt class="py-op">(</tt><tt class="py-name">basestring</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L184"></a><tt class="py-lineno"> 184</tt>  <tt class="py-line">      <tt class="py-string">"durable"</tt><tt class="py-op">:</tt> <tt class="py-name">Types</tt><tt class="py-op">(</tt><tt class="py-name">bool</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L185"></a><tt class="py-lineno"> 185</tt>  <tt class="py-line">      <tt class="py-string">"reliability"</tt><tt class="py-op">:</tt> <tt id="link-57" class="py-name"><a title="qpid.messaging.driver.RELIABILITY" class="py-name" href="#" onclick="return doclink('link-57', 'RELIABILITY', 'link-48');">RELIABILITY</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L186"></a><tt class="py-lineno"> 186</tt>  <tt class="py-line">      <tt class="py-string">"x-declare"</tt><tt class="py-op">:</tt> <tt id="link-58" class="py-name"><a title="qpid.messaging.driver.DECLARE" class="py-name" href="#" onclick="return doclink('link-58', 'DECLARE', 'link-49');">DECLARE</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L187"></a><tt class="py-lineno"> 187</tt>  <tt class="py-line">      <tt class="py-string">"x-bindings"</tt><tt class="py-op">:</tt> <tt id="link-59" class="py-name"><a title="qpid.messaging.driver.BINDINGS" class="py-name" href="#" onclick="return doclink('link-59', 'BINDINGS', 'link-50');">BINDINGS</a></tt><tt class="py-op">,</tt> </tt>
+<a name="L188"></a><tt class="py-lineno"> 188</tt>  <tt class="py-line">      <tt class="py-string">"x-subscribe"</tt><tt class="py-op">:</tt> <tt class="py-name">Map</tt><tt class="py-op">(</tt><tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">,</tt> <tt class="py-name">restricted</tt><tt class="py-op">=</tt><tt class="py-name">False</tt><tt class="py-op">)</tt> </tt>
+<a name="L189"></a><tt class="py-lineno"> 189</tt>  <tt class="py-line">      <tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
+<a name="L190"></a><tt class="py-lineno"> 190</tt>  <tt class="py-line">  <tt class="py-op">}</tt> </tt>
+<a name="L191"></a><tt class="py-lineno"> 191</tt>  <tt class="py-line"> </tt>
+<a name="L192"></a><tt class="py-lineno"> 192</tt>  <tt class="py-line"><tt id="link-60" class="py-name" targets="Variable qpid.messaging.driver.RECEIVE_MODES=qpid.messaging.driver-module.html#RECEIVE_MODES"><a title="qpid.messaging.driver.RECEIVE_MODES" class="py-name" href="#" onclick="return doclink('link-60', 'RECEIVE_MODES', 'link-60');">RECEIVE_MODES</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Values</tt><tt class="py-op">(</tt><tt class="py-string">"browse"</tt><tt class="py-op">,</tt> <tt class="py-string">"consume"</tt><tt class="py-op">)</tt> </tt>
+<a name="L193"></a><tt class="py-lineno"> 193</tt>  <tt class="py-line"> </tt>
+<a name="L194"></a><tt class="py-lineno"> 194</tt>  <tt class="py-line"><tt id="link-61" class="py-name" targets="Variable qpid.messaging.driver.SOURCE_OPTS=qpid.messaging.driver-module.html#SOURCE_OPTS"><a title="qpid.messaging.driver.SOURCE_OPTS" class="py-name" href="#" onclick="return doclink('link-61', 'SOURCE_OPTS', 'link-61');">SOURCE_OPTS</a></tt> <tt class="py-op">=</tt> <tt id="link-62" class="py-name"><a title="qpid.messaging.driver.COMMON_OPTS" class="py-name" href="#" onclick="return doclink('link-62', 'COMMON_OPTS', 'link-51');">COMMON_OPTS</a></tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L195"></a><tt class="py-lineno"> 195</tt>  <tt class="py-line"><tt id="link-63" class="py-name"><a title="qpid.messaging.driver.SOURCE_OPTS" class="py-name" href="#" onclick="return doclink('link-63', 'SOURCE_OPTS', 'link-61');">SOURCE_OPTS</a></tt><tt class="py-op">.</tt><tt class="py-name">update</tt><tt class="py-op">(</tt><tt class="py-op">{</tt> </tt>
+<a name="L196"></a><tt class="py-lineno"> 196</tt>  <tt class="py-line">    <tt class="py-string">"mode"</tt><tt class="py-op">:</tt> <tt id="link-64" class="py-name"><a title="qpid.messaging.driver.RECEIVE_MODES" class="py-name" href="#" onclick="return doclink('link-64', 'RECEIVE_MODES', 'link-60');">RECEIVE_MODES</a></tt> </tt>
+<a name="L197"></a><tt class="py-lineno"> 197</tt>  <tt class="py-line">    <tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
+<a name="L198"></a><tt class="py-lineno"> 198</tt>  <tt class="py-line"> </tt>
+<a name="L199"></a><tt class="py-lineno"> 199</tt>  <tt class="py-line"><tt id="link-65" class="py-name" targets="Variable qpid.messaging.driver.TARGET_OPTS=qpid.messaging.driver-module.html#TARGET_OPTS"><a title="qpid.messaging.driver.TARGET_OPTS" class="py-name" href="#" onclick="return doclink('link-65', 'TARGET_OPTS', 'link-65');">TARGET_OPTS</a></tt> <tt class="py-op">=</tt> <tt id="link-66" class="py-name"><a title="qpid.messaging.driver.COMMON_OPTS" class="py-name" href="#" onclick="return doclink('link-66', 'COMMON_OPTS', 'link-51');">COMMON_OPTS</a></tt><tt class="py-op">.</tt><tt class="py-name">copy</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="LinkIn"></a><div id="LinkIn-def"><a name="L200"></a><tt class="py-lineno"> 200</tt>  <tt class="py-line"> </tt>
+<a name="L201"></a><tt class="py-lineno"> 201</tt> <a class="py-toggle" href="#" id="LinkIn-toggle" onclick="return toggle('LinkIn');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="qpid.messaging.driver.LinkIn-class.html">LinkIn</a><tt class="py-op">:</tt> </tt>
+</div><div id="LinkIn-collapsed" style="display:none;" pad="++++" indent="++++"></div><div id="LinkIn-expanded"><a name="L202"></a><tt class="py-lineno"> 202</tt>  <tt class="py-line"> </tt>
+<a name="L203"></a><tt class="py-lineno"> 203</tt>  <tt class="py-line">  <tt id="link-67" class="py-name" targets="Variable qpid.messaging.driver.LinkIn.ADDR_NAME=qpid.messaging.driver.LinkIn-class.html#ADDR_NAME,Variable qpid.messaging.driver.LinkOut.ADDR_NAME=qpid.messaging.driver.LinkOut-class.html#ADDR_NAME"><a title="qpid.messaging.driver.LinkIn.ADDR_NAME
+qpid.messaging.driver.LinkOut.ADDR_NAME" class="py-name" href="#" onclick="return doclink('link-67', 'ADDR_NAME', 'link-67');">ADDR_NAME</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"source"</tt> </tt>
+<a name="L204"></a><tt class="py-lineno"> 204</tt>  <tt class="py-line">  <tt id="link-68" class="py-name" targets="Variable qpid.messaging.driver.LinkIn.DIR_NAME=qpid.messaging.driver.LinkIn-class.html#DIR_NAME,Variable qpid.messaging.driver.LinkOut.DIR_NAME=qpid.messaging.driver.LinkOut-class.html#DIR_NAME"><a title="qpid.messaging.driver.LinkIn.DIR_NAME
+qpid.messaging.driver.LinkOut.DIR_NAME" class="py-name" href="#" onclick="return doclink('link-68', 'DIR_NAME', 'link-68');">DIR_NAME</a></tt> <tt class="py-op">=</tt> <tt class="py-string">"receiver"</tt> </tt>
+<a name="L205"></a><tt class="py-lineno"> 205</tt>  <tt class="py-line">  <tt id="link-69" class="py-name" targets="Variable qpid.messaging.driver.LinkIn.VALIDATOR=qpid.messaging.driver.LinkIn-class.html#VALIDATOR,Variable qpid.messaging.driver.LinkOut.VALIDATOR=qpid.messaging.driver.LinkOut-class.html#VALIDATOR"><a title="qpid.messaging.driver.LinkIn.VALIDATOR
+qpid.messaging.driver.LinkOut.VALIDATOR" class="py-name" href="#" onclick="return doclink('link-69', 'VALIDATOR', 'link-69');">VALIDATOR</a></tt> <tt class="py-op">=</tt> <tt class="py-name">Map</tt><tt class="py-op">(</tt><tt id="link-70" class="py-name"><a title="qpid.messaging.driver.SOURCE_OPTS" class="py-name" href="#" onclick="return doclink('link-70', 'SOURCE_OPTS', 'link-61');">SOURCE_OPTS</a></tt><tt class="py-op">)</tt> </tt>
+<a name="L206"></a><tt class="py-lineno"> 206</tt>  <tt class="py-line"> </tt>
+<a name="LinkIn.init_link"></a><div id="LinkIn.init_link-def"><a name="L207"></a><tt class="py-lineno"> 207</tt> <a class="py-toggle" href="#" id="LinkIn.init_link-toggle" onclick="return toggle('LinkIn.init_link');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.LinkIn-class.html#init_link">init_link</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sst</tt><tt class="py-op">,</tt> <tt class="py-param">rcv</tt><tt class="py-op">,</tt> <tt class="py-param">_rcv</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="LinkIn.init_link-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="LinkIn.init_link-expanded"><a name="L208"></a><tt class="py-lineno"> 208</tt>  <tt class="py-line">    <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">destination</tt> <tt class="py-op">=</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">rcv</tt><tt class="py-op">.</tt><tt class="py-name">id</tt><tt class="py-op">)</tt> </tt>
+<a name="L209"></a><tt class="py-lineno"> 209</tt>  <tt class="py-line">    <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt class="py-name">destinations</tt><tt class="py-op">[</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">destination</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">_rcv</tt> </tt>
+<a name="L210"></a><tt class="py-lineno"> 210</tt>  <tt class="py-line">    <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">draining</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
+<a name="L211"></a><tt class="py-lineno"> 211</tt>  <tt class="py-line">    <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">bytes_open</tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
+<a name="L212"></a><tt class="py-lineno"> 212</tt>  <tt class="py-line">    <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">on_unlink</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
+</div><a name="L213"></a><tt class="py-lineno"> 213</tt>  <tt class="py-line"> </tt>
+<a name="LinkIn.do_link"></a><div id="LinkIn.do_link-def"><a name="L214"></a><tt class="py-lineno"> 214</tt> <a class="py-toggle" href="#" id="LinkIn.do_link-toggle" onclick="return toggle('LinkIn.do_link');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.LinkIn-class.html#do_link">do_link</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sst</tt><tt class="py-op">,</tt> <tt class="py-param">rcv</tt><tt class="py-op">,</tt> <tt class="py-param">_rcv</tt><tt class="py-op">,</tt> <tt class="py-param">type</tt><tt class="py-op">,</tt> <tt class="py-param">subtype</tt><tt class="py-op">,</tt> <tt class="py-param">action</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="LinkIn.do_link-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="LinkIn.do_link-expanded"><a name="L215"></a><tt class="py-lineno"> 215</tt>  <tt class="py-line">    <tt class="py-name">link_opts</tt> <tt class="py-op">=</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"link"</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
+<a name="L216"></a><tt class="py-lineno"> 216</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">type</tt> <tt class="py-op">==</tt> <tt class="py-string">"topic"</tt><tt class="py-op">:</tt> </tt>
+<a name="L217"></a><tt class="py-lineno"> 217</tt>  <tt class="py-line">      <tt class="py-name">default_reliability</tt> <tt class="py-op">=</tt> <tt class="py-string">"unreliable"</tt> </tt>
+<a name="L218"></a><tt class="py-lineno"> 218</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L219"></a><tt class="py-lineno"> 219</tt>  <tt class="py-line">      <tt class="py-name">default_reliability</tt> <tt class="py-op">=</tt> <tt class="py-string">"at-least-once"</tt> </tt>
+<a name="L220"></a><tt class="py-lineno"> 220</tt>  <tt class="py-line">    <tt class="py-name">reliability</tt> <tt class="py-op">=</tt> <tt class="py-name">link_opts</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"reliability"</tt><tt class="py-op">,</tt> <tt class="py-name">default_reliability</tt><tt class="py-op">)</tt> </tt>
+<a name="L221"></a><tt class="py-lineno"> 221</tt>  <tt class="py-line">    <tt id="link-71" class="py-name" targets="Method qpid.messaging.driver.Engine.declare()=qpid.messaging.driver.Engine-class.html#declare"><a title="qpid.messaging.driver.Engine.declare" class="py-name" href="#" onclick="return doclink('link-71', 'declare', 'link-71');">declare</a></tt> <tt class="py-op">=</tt> <tt class="py-name">link_opts</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"x-declare"</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
+<a name="L222"></a><tt class="py-lineno"> 222</tt>  <tt class="py-line">    <tt class="py-name">subscribe</tt> <tt class="py-op">=</tt> <tt class="py-name">link_opts</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"x-subscribe"</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
+<a name="L223"></a><tt class="py-lineno"> 223</tt>  <tt class="py-line">    <tt class="py-name">acq_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">acquire_mode</tt><tt class="py-op">.</tt><tt class="py-name">pre_acquired</tt> </tt>
+<a name="L224"></a><tt class="py-lineno"> 224</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">reliability</tt> <tt class="py-keyword">in</tt> <tt class="py-op">(</tt><tt class="py-string">"unreliable"</tt><tt class="py-op">,</tt> <tt class="py-string">"at-most-once"</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+<a name="L225"></a><tt class="py-lineno"> 225</tt>  <tt class="py-line">      <tt class="py-name">rcv</tt><tt class="py-op">.</tt><tt class="py-name">_accept_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">accept_mode</tt><tt class="py-op">.</tt><tt class="py-name">none</tt> </tt>
+<a name="L226"></a><tt class="py-lineno"> 226</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L227"></a><tt class="py-lineno"> 227</tt>  <tt class="py-line">      <tt class="py-name">rcv</tt><tt class="py-op">.</tt><tt class="py-name">_accept_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">accept_mode</tt><tt class="py-op">.</tt><tt class="py-name">explicit</tt> </tt>
+<a name="L228"></a><tt class="py-lineno"> 228</tt>  <tt class="py-line"> </tt>
+<a name="L229"></a><tt class="py-lineno"> 229</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">type</tt> <tt class="py-op">==</tt> <tt class="py-string">"topic"</tt><tt class="py-op">:</tt> </tt>
+<a name="L230"></a><tt class="py-lineno"> 230</tt>  <tt class="py-line">      <tt class="py-name">default_name</tt> <tt class="py-op">=</tt> <tt class="py-string">"%s.%s"</tt> <tt class="py-op">%</tt> <tt class="py-op">(</tt><tt class="py-name">rcv</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="qpid.messaging.endpoints.Connection.session" class="py-name" href="#" onclick="return doclink('link-72', 'session', 'link-30');">session</a></tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-73', 'name', 'link-20');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">destination</tt><tt class="py-op">)</tt> </tt>
+<a name="L231"></a><tt class="py-lineno"> 231</tt>  <tt class="py-line">      <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt> <tt class="py-op">=</tt> <tt class="py-name">link_opts</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"name"</tt><tt class="py-op">,</tt> <tt class="py-name">default_name</tt><tt class="py-op">)</tt> </tt>
+<a name="L232"></a><tt class="py-lineno"> 232</tt>  <tt class="py-line">      <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-74', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">QueueDeclare</tt><tt class="py-op">(</tt><tt class="py-name">queue</tt><tt class="py-op">=</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt><tt class="py-op">,</tt> </tt>
+<a name="L233"></a><tt class="py-lineno"> 233</tt>  <tt class="py-line">                                 <tt class="py-name">durable</tt><tt class="py-op">=</tt><tt class="py-name">link_opts</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"durable"</tt><tt class="py-op">,</tt> <tt class="py-name">False</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L234"></a><tt class="py-lineno"> 234</tt>  <tt class="py-line">                                 <tt class="py-name">exclusive</tt><tt class="py-op">=</tt><tt class="py-name">True</tt><tt class="py-op">,</tt> </tt>
+<a name="L235"></a><tt class="py-lineno"> 235</tt>  <tt class="py-line">                                 <tt class="py-name">auto_delete</tt><tt class="py-op">=</tt><tt class="py-op">(</tt><tt class="py-name">reliability</tt> <tt class="py-op">==</tt> <tt class="py-string">"unreliable"</tt><tt class="py-op">)</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L236"></a><tt class="py-lineno"> 236</tt>  <tt class="py-line">                    <tt class="py-name">overrides</tt><tt class="py-op">=</tt><tt id="link-75" class="py-name"><a title="qpid.messaging.driver.Engine.declare" class="py-name" href="#" onclick="return doclink('link-75', 'declare', 'link-71');">declare</a></tt><tt class="py-op">)</tt> </tt>
+<a name="L237"></a><tt class="py-lineno"> 237</tt>  <tt class="py-line">      <tt class="py-keyword">if</tt> <tt id="link-76" class="py-name"><a title="qpid.messaging.driver.Engine.declare" class="py-name" href="#" onclick="return doclink('link-76', 'declare', 'link-71');">declare</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"exclusive"</tt><tt class="py-op">,</tt> <tt class="py-name">True</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">on_unlink</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">QueueDelete</tt><tt class="py-op">(</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt><tt class="py-op">)</tt><tt class="py-op">]</tt> </tt>
+<a name="L238"></a><tt class="py-lineno"> 238</tt>  <tt class="py-line">      <tt class="py-name">subject</tt> <tt class="py-op">=</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">subject</tt> <tt class="py-keyword">or</tt> <tt id="link-77" class="py-name"><a title="qpid.messaging.driver.SUBJECT_DEFAULTS" class="py-name" href="#" onclick="return doclink('link-77', 'SUBJECT_DEFAULTS', 'link-27');">SUBJECT_DEFAULTS</a></tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-name">subtype</tt><tt class="py-op">)</tt> </tt>
+<a name="L239"></a><tt class="py-lineno"> 239</tt>  <tt class="py-line">      <tt class="py-name">bindings</tt> <tt class="py-op">=</tt> <tt id="link-78" class="py-name" targets="Function qpid.messaging.driver.get_bindings()=qpid.messaging.driver-module.html#get_bindings"><a title="qpid.messaging.driver.get_bindings" class="py-name" href="#" onclick="return doclink('link-78', 'get_bindings', 'link-78');">get_bindings</a></tt><tt class="py-op">(</tt><tt class="py-name">link_opts</tt><tt class="py-op">,</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt><tt class="py-op">,</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt id="link-79" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-79', 'name', 'link-20');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">subject</tt><tt class="py-op">)</tt> </tt>
+<a name="L240"></a><tt class="py-lineno"> 240</tt>  <tt class="py-line">      <tt class="py-keyword">if</tt> <tt class="py-keyword">not</tt> <tt class="py-name">bindings</tt><tt class="py-op">:</tt> </tt>
+<a name="L241"></a><tt class="py-lineno"> 241</tt>  <tt class="py-line">        <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt id="link-80" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-80', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">ExchangeBind</tt><tt class="py-op">(</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt><tt class="py-op">,</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt id="link-81" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-81', 'name', 'link-20');">name</a></tt><tt class="py-op">,</tt> <tt class="py-name">subject</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L242"></a><tt class="py-lineno"> 242</tt>  <tt class="py-line"> </tt>
+<a name="L243"></a><tt class="py-lineno"> 243</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">type</tt> <tt class="py-op">==</tt> <tt class="py-string">"queue"</tt><tt class="py-op">:</tt> </tt>
+<a name="L244"></a><tt class="py-lineno"> 244</tt>  <tt class="py-line">      <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt> <tt class="py-op">=</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt id="link-82" class="py-name"><a title="qpid.messaging.driver.name" class="py-name" href="#" onclick="return doclink('link-82', 'name', 'link-20');">name</a></tt> </tt>
+<a name="L245"></a><tt class="py-lineno"> 245</tt>  <tt class="py-line">      <tt class="py-keyword">if</tt> <tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">options</tt><tt class="py-op">.</tt><tt class="py-name">get</tt><tt class="py-op">(</tt><tt class="py-string">"mode"</tt><tt class="py-op">,</tt> <tt class="py-string">"consume"</tt><tt class="py-op">)</tt> <tt class="py-op">==</tt> <tt class="py-string">"browse"</tt><tt class="py-op">:</tt> </tt>
+<a name="L246"></a><tt class="py-lineno"> 246</tt>  <tt class="py-line">        <tt class="py-name">acq_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">acquire_mode</tt><tt class="py-op">.</tt><tt class="py-name">not_acquired</tt> </tt>
+<a name="L247"></a><tt class="py-lineno"> 247</tt>  <tt class="py-line">      <tt class="py-name">bindings</tt> <tt class="py-op">=</tt> <tt id="link-83" class="py-name"><a title="qpid.messaging.driver.get_bindings" class="py-name" href="#" onclick="return doclink('link-83', 'get_bindings', 'link-78');">get_bindings</a></tt><tt class="py-op">(</tt><tt class="py-name">link_opts</tt><tt class="py-op">,</tt> <tt class="py-name">queue</tt><tt class="py-op">=</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt><tt class="py-op">)</tt> </tt>
+<a name="L248"></a><tt class="py-lineno"> 248</tt>  <tt class="py-line"> </tt>
+<a name="L249"></a><tt class="py-lineno"> 249</tt>  <tt class="py-line"> </tt>
+<a name="L250"></a><tt class="py-lineno"> 250</tt>  <tt class="py-line">    <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt id="link-84" class="py-name" targets="Method qpid.messaging.driver.SessionState.write_cmds()=qpid.messaging.driver.SessionState-class.html#write_cmds"><a title="qpid.messaging.driver.SessionState.write_cmds" class="py-name" href="#" onclick="return doclink('link-84', 'write_cmds', 'link-84');">write_cmds</a></tt><tt class="py-op">(</tt><tt class="py-name">bindings</tt><tt class="py-op">)</tt> </tt>
+<a name="L251"></a><tt class="py-lineno"> 251</tt>  <tt class="py-line">    <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt id="link-85" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-85', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">MessageSubscribe</tt><tt class="py-op">(</tt><tt class="py-name">queue</tt><tt class="py-op">=</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">_queue</tt><tt class="py-op">,</tt> </tt>
+<a name="L252"></a><tt class="py-lineno"> 252</tt>  <tt class="py-line">                                   <tt class="py-name">destination</tt><tt class="py-op">=</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">destination</tt><tt class="py-op">,</tt> </tt>
+<a name="L253"></a><tt class="py-lineno"> 253</tt>  <tt class="py-line">                                   <tt class="py-name">acquire_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">acq_mode</tt><tt class="py-op">,</tt> </tt>
+<a name="L254"></a><tt class="py-lineno"> 254</tt>  <tt class="py-line">                                   <tt class="py-name">accept_mode</tt> <tt class="py-op">=</tt> <tt class="py-name">rcv</tt><tt class="py-op">.</tt><tt class="py-name">_accept_mode</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L255"></a><tt class="py-lineno"> 255</tt>  <tt class="py-line">                  <tt class="py-name">overrides</tt><tt class="py-op">=</tt><tt class="py-name">subscribe</tt><tt class="py-op">)</tt> </tt>
+<a name="L256"></a><tt class="py-lineno"> 256</tt>  <tt class="py-line">    <tt class="py-name">sst</tt><tt class="py-op">.</tt><tt id="link-86" class="py-name"><a title="qpid.messaging.driver.SessionState.write_cmd" class="py-name" href="#" onclick="return doclink('link-86', 'write_cmd', 'link-26');">write_cmd</a></tt><tt class="py-op">(</tt><tt class="py-name">MessageSetFlowMode</tt><tt class="py-op">(</tt><tt class="py-name">_rcv</tt><tt class="py-op">.</tt><tt class="py-name">destination</tt><tt class="py-op">,</tt> <tt class="py-name">flow_mode</tt><tt class="py-op">.</tt><tt class="py-name">credit</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt class="py-name">action</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L257"></a><tt class="py-lineno"> 257</tt>  <tt class="py-line"> </tt>
+<a name="LinkIn.do_unlink"></a><div id="LinkIn.do_unlink-def"><a name="L258"></a><tt class="py-lineno"> 258</tt> <a class="py-toggle" href="#" id="LinkIn.do_unlink-toggle" onclick="return toggle('LinkIn.do_unlink');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="qpid.messaging.driver.LinkIn-class.html#do_unlink">do_unlink</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">sst</tt><tt class="py-op">,</tt> <tt class="py-param">rcv</tt><tt class="py-op">,</tt> <tt class="py-param">_rcv</tt><tt class="py-op">,</tt> <tt class="py-param">action</tt><tt class="py-op">=</tt><tt id="link-87" class="py-name"><a title="qpid.messaging.driver.noop" class="py-name" href="#" onclick="return doclink('link-87', 'noop', 'link-35');">noop</a></tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="LinkIn.do_unlink-collapsed" style="display:none;" pad=

<TRUNCATED>

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