فهرست منبع

Merge pull request #3316 from soltanmm/whatsappdoc

Auto-update Python documentation.
Nathaniel Manista 10 سال پیش
والد
کامیت
27859c0c10
100فایلهای تغییر یافته به همراه5975 افزوده شده و 9282 حذف شده
  1. 1 1
      python/.buildinfo
  2. BIN
      python/.doctrees/environment.pickle
  3. BIN
      python/.doctrees/grpc.beta.doctree
  4. BIN
      python/.doctrees/grpc.doctree
  5. BIN
      python/.doctrees/grpc.early_adopter.doctree
  6. BIN
      python/.doctrees/grpc.framework.alpha.doctree
  7. BIN
      python/.doctrees/grpc.framework.base.doctree
  8. BIN
      python/.doctrees/grpc.framework.common.doctree
  9. BIN
      python/.doctrees/grpc.framework.core.doctree
  10. BIN
      python/.doctrees/grpc.framework.crust.doctree
  11. BIN
      python/.doctrees/grpc.framework.doctree
  12. BIN
      python/.doctrees/grpc.framework.face.doctree
  13. BIN
      python/.doctrees/grpc.framework.face.testing.doctree
  14. BIN
      python/.doctrees/grpc.framework.foundation.doctree
  15. BIN
      python/.doctrees/grpc.framework.interfaces.base.doctree
  16. BIN
      python/.doctrees/grpc.framework.interfaces.doctree
  17. BIN
      python/.doctrees/grpc.framework.interfaces.face.doctree
  18. BIN
      python/.doctrees/grpc.framework.interfaces.links.doctree
  19. BIN
      python/.doctrees/index.doctree
  20. 563 0
      python/_modules/grpc/beta/implementations.html
  21. 410 0
      python/_modules/grpc/beta/interfaces.html
  22. 359 0
      python/_modules/grpc/beta/utilities.html
  23. 32 13
      python/_modules/grpc/early_adopter/implementations.html
  24. 0 369
      python/_modules/grpc/early_adopter/implementations_test.html
  25. 11 4
      python/_modules/grpc/framework/alpha/exceptions.html
  26. 11 4
      python/_modules/grpc/framework/alpha/interfaces.html
  27. 11 4
      python/_modules/grpc/framework/alpha/utilities.html
  28. 11 4
      python/_modules/grpc/framework/base/exceptions.html
  29. 11 4
      python/_modules/grpc/framework/base/implementations.html
  30. 0 269
      python/_modules/grpc/framework/base/implementations_test.html
  31. 11 4
      python/_modules/grpc/framework/base/in_memory.html
  32. 11 4
      python/_modules/grpc/framework/base/interfaces.html
  33. 0 496
      python/_modules/grpc/framework/base/interfaces_test_case.html
  34. 11 4
      python/_modules/grpc/framework/base/util.html
  35. 11 4
      python/_modules/grpc/framework/common/cardinality.html
  36. 11 4
      python/_modules/grpc/framework/common/style.html
  37. 0 276
      python/_modules/grpc/framework/common/test_control.html
  38. 0 305
      python/_modules/grpc/framework/common/test_coverage.html
  39. 40 17
      python/_modules/grpc/framework/core/implementations.html
  40. 560 0
      python/_modules/grpc/framework/crust/implementations.html
  41. 0 235
      python/_modules/grpc/framework/face/blocking_invocation_inline_service_test.html
  42. 11 4
      python/_modules/grpc/framework/face/demonstration.html
  43. 11 4
      python/_modules/grpc/framework/face/exceptions.html
  44. 0 235
      python/_modules/grpc/framework/face/future_invocation_asynchronous_event_service_test.html
  45. 11 4
      python/_modules/grpc/framework/face/implementations.html
  46. 11 4
      python/_modules/grpc/framework/face/interfaces.html
  47. 0 291
      python/_modules/grpc/framework/face/testing/base_util.html
  48. 0 411
      python/_modules/grpc/framework/face/testing/blocking_invocation_inline_service_test_case.html
  49. 0 283
      python/_modules/grpc/framework/face/testing/callback.html
  50. 0 276
      python/_modules/grpc/framework/face/testing/control.html
  51. 0 312
      python/_modules/grpc/framework/face/testing/coverage.html
  52. 0 639
      python/_modules/grpc/framework/face/testing/digest.html
  53. 0 551
      python/_modules/grpc/framework/face/testing/event_invocation_synchronous_event_service_test_case.html
  54. 0 565
      python/_modules/grpc/framework/face/testing/future_invocation_asynchronous_event_service_test_case.html
  55. 0 306
      python/_modules/grpc/framework/face/testing/interfaces.html
  56. 0 526
      python/_modules/grpc/framework/face/testing/service.html
  57. 0 563
      python/_modules/grpc/framework/face/testing/stock_service.html
  58. 0 269
      python/_modules/grpc/framework/face/testing/test_case.html
  59. 11 4
      python/_modules/grpc/framework/face/utilities.html
  60. 11 4
      python/_modules/grpc/framework/foundation/abandonment.html
  61. 11 4
      python/_modules/grpc/framework/foundation/activated.html
  62. 11 4
      python/_modules/grpc/framework/foundation/callable_util.html
  63. 11 4
      python/_modules/grpc/framework/foundation/future.html
  64. 11 4
      python/_modules/grpc/framework/foundation/later.html
  65. 11 4
      python/_modules/grpc/framework/foundation/logging_pool.html
  66. 11 4
      python/_modules/grpc/framework/foundation/relay.html
  67. 11 4
      python/_modules/grpc/framework/foundation/stream.html
  68. 0 262
      python/_modules/grpc/framework/foundation/stream_testing.html
  69. 11 4
      python/_modules/grpc/framework/foundation/stream_util.html
  70. 535 0
      python/_modules/grpc/framework/interfaces/base/base.html
  71. 58 39
      python/_modules/grpc/framework/interfaces/base/utilities.html
  72. 1188 0
      python/_modules/grpc/framework/interfaces/face/face.html
  73. 374 0
      python/_modules/grpc/framework/interfaces/face/utilities.html
  74. 32 7
      python/_modules/grpc/framework/interfaces/links/links.html
  75. 0 522
      python/_modules/grpc/framework/interfaces/links/test_cases.html
  76. 0 255
      python/_modules/grpc/framework/interfaces/links/test_utilities.html
  77. 21 29
      python/_modules/index.html
  78. 38 0
      python/_sources/grpc.beta.txt
  79. 0 8
      python/_sources/grpc.early_adopter.txt
  80. 0 16
      python/_sources/grpc.framework.base.txt
  81. 0 24
      python/_sources/grpc.framework.common.txt
  82. 22 0
      python/_sources/grpc.framework.core.txt
  83. 22 0
      python/_sources/grpc.framework.crust.txt
  84. 0 118
      python/_sources/grpc.framework.face.testing.txt
  85. 0 31
      python/_sources/grpc.framework.face.txt
  86. 0 8
      python/_sources/grpc.framework.foundation.txt
  87. 30 0
      python/_sources/grpc.framework.interfaces.base.txt
  88. 30 0
      python/_sources/grpc.framework.interfaces.face.txt
  89. 0 16
      python/_sources/grpc.framework.interfaces.links.txt
  90. 2 0
      python/_sources/grpc.framework.interfaces.txt
  91. 2 0
      python/_sources/grpc.framework.txt
  92. 1 0
      python/_sources/grpc.txt
  93. 1 1
      python/_sources/index.txt
  94. 294 307
      python/genindex.html
  95. 779 0
      python/grpc.beta.html
  96. 19 53
      python/grpc.early_adopter.html
  97. 11 4
      python/grpc.framework.alpha.html
  98. 11 117
      python/grpc.framework.base.html
  99. 13 161
      python/grpc.framework.common.html
  100. 263 0
      python/grpc.framework.core.html

+ 1 - 1
python/.buildinfo

@@ -1,4 +1,4 @@
 # Sphinx build info version 1
 # Sphinx build info version 1
 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 485c4d9e4f0a83a8b780cd4273b48395
+config: 1f8999f11b56795ae385f12e4ab424df
 tags: 645f666f9bcd5a90fca523b33c5a78b7
 tags: 645f666f9bcd5a90fca523b33c5a78b7

BIN
python/.doctrees/environment.pickle


BIN
python/.doctrees/grpc.beta.doctree


BIN
python/.doctrees/grpc.doctree


BIN
python/.doctrees/grpc.early_adopter.doctree


BIN
python/.doctrees/grpc.framework.alpha.doctree


BIN
python/.doctrees/grpc.framework.base.doctree


BIN
python/.doctrees/grpc.framework.common.doctree


BIN
python/.doctrees/grpc.framework.core.doctree


BIN
python/.doctrees/grpc.framework.crust.doctree


BIN
python/.doctrees/grpc.framework.doctree


BIN
python/.doctrees/grpc.framework.face.doctree


BIN
python/.doctrees/grpc.framework.face.testing.doctree


BIN
python/.doctrees/grpc.framework.foundation.doctree


BIN
python/.doctrees/grpc.framework.interfaces.base.doctree


BIN
python/.doctrees/grpc.framework.interfaces.doctree


BIN
python/.doctrees/grpc.framework.interfaces.face.doctree


BIN
python/.doctrees/grpc.framework.interfaces.links.doctree


BIN
python/.doctrees/index.doctree


+ 563 - 0
python/_modules/grpc/beta/implementations.html

@@ -0,0 +1,563 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.beta.implementations &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../index.html"/>
+        <link rel="up" title="Module code" href="../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.beta.implementations</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.beta.implementations</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;Entry points into the Beta API of gRPC Python.&quot;&quot;&quot;</span>
+
+<span class="c"># threading is referenced from specification in this module.</span>
+<span class="kn">import</span> <span class="nn">abc</span>
+<span class="kn">import</span> <span class="nn">enum</span>
+<span class="kn">import</span> <span class="nn">threading</span>  <span class="c"># pylint: disable=unused-import</span>
+
+<span class="c"># cardinality and face are referenced from specification in this module.</span>
+<span class="kn">from</span> <span class="nn">grpc._adapter</span> <span class="kn">import</span> <span class="n">_intermediary_low</span>
+<span class="kn">from</span> <span class="nn">grpc._adapter</span> <span class="kn">import</span> <span class="n">_types</span>
+<span class="kn">from</span> <span class="nn">grpc.beta</span> <span class="kn">import</span> <span class="n">_connectivity_channel</span>
+<span class="kn">from</span> <span class="nn">grpc.beta</span> <span class="kn">import</span> <span class="n">_server</span>
+<span class="kn">from</span> <span class="nn">grpc.beta</span> <span class="kn">import</span> <span class="n">_stub</span>
+<span class="kn">from</span> <span class="nn">grpc.beta</span> <span class="kn">import</span> <span class="n">interfaces</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.face</span> <span class="kn">import</span> <span class="n">face</span>  <span class="c"># pylint: disable=unused-import</span>
+
+<span class="n">_CHANNEL_SUBSCRIPTION_CALLBACK_ERROR_LOG_MESSAGE</span> <span class="o">=</span> <span class="p">(</span>
+    <span class="s">&#39;Exception calling channel subscription callback!&#39;</span><span class="p">)</span>
+
+
+<div class="viewcode-block" id="ClientCredentials"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.ClientCredentials">[docs]</a><span class="k">class</span> <span class="nc">ClientCredentials</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A value encapsulating the data required to create a secure Channel.</span>
+
+<span class="sd">  This class and its instances have no supported interface - it exists to define</span>
+<span class="sd">  the type of its instances and its instances exist to be passed to other</span>
+<span class="sd">  functions.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">low_credentials</span><span class="p">,</span> <span class="n">intermediary_low_credentials</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_low_credentials</span> <span class="o">=</span> <span class="n">low_credentials</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_intermediary_low_credentials</span> <span class="o">=</span> <span class="n">intermediary_low_credentials</span>
+
+</div>
+<div class="viewcode-block" id="ssl_client_credentials"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.ssl_client_credentials">[docs]</a><span class="k">def</span> <span class="nf">ssl_client_credentials</span><span class="p">(</span><span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a ClientCredentials for use with an SSL-enabled Channel.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    root_certificates: The PEM-encoded root certificates or None to ask for</span>
+<span class="sd">      them to be retrieved from a default location.</span>
+<span class="sd">    private_key: The PEM-encoded private key to use or None if no private key</span>
+<span class="sd">      should be used.</span>
+<span class="sd">    certificate_chain: The PEM-encoded certificate chain to use or None if no</span>
+<span class="sd">      certificate chain should be used.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A ClientCredentials for use with an SSL-enabled Channel.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">intermediary_low_credentials</span> <span class="o">=</span> <span class="n">_intermediary_low</span><span class="o">.</span><span class="n">ClientCredentials</span><span class="p">(</span>
+      <span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">)</span>
+  <span class="k">return</span> <span class="n">ClientCredentials</span><span class="p">(</span>
+      <span class="n">intermediary_low_credentials</span><span class="o">.</span><span class="n">_internal</span><span class="p">,</span> <span class="n">intermediary_low_credentials</span><span class="p">)</span>  <span class="c"># pylint: disable=protected-access</span>
+
+</div>
+<div class="viewcode-block" id="Channel"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.Channel">[docs]</a><span class="k">class</span> <span class="nc">Channel</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A channel to a remote host through which RPCs may be conducted.</span>
+
+<span class="sd">  Only the &quot;subscribe&quot; and &quot;unsubscribe&quot; methods are supported for application</span>
+<span class="sd">  use. This class&#39; instance constructor and all other attributes are</span>
+<span class="sd">  unsupported.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">low_channel</span><span class="p">,</span> <span class="n">intermediary_low_channel</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_low_channel</span> <span class="o">=</span> <span class="n">low_channel</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_intermediary_low_channel</span> <span class="o">=</span> <span class="n">intermediary_low_channel</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_connectivity_channel</span> <span class="o">=</span> <span class="n">_connectivity_channel</span><span class="o">.</span><span class="n">ConnectivityChannel</span><span class="p">(</span>
+        <span class="n">low_channel</span><span class="p">)</span>
+
+<div class="viewcode-block" id="Channel.subscribe"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.Channel.subscribe">[docs]</a>  <span class="k">def</span> <span class="nf">subscribe</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">try_to_connect</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Subscribes to this Channel&#39;s connectivity.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      callback: A callable to be invoked and passed an</span>
+<span class="sd">        interfaces.ChannelConnectivity identifying this Channel&#39;s connectivity.</span>
+<span class="sd">        The callable will be invoked immediately upon subscription and again for</span>
+<span class="sd">        every change to this Channel&#39;s connectivity thereafter until it is</span>
+<span class="sd">        unsubscribed.</span>
+<span class="sd">      try_to_connect: A boolean indicating whether or not this Channel should</span>
+<span class="sd">        attempt to connect if it is not already connected and ready to conduct</span>
+<span class="sd">        RPCs.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_connectivity_channel</span><span class="o">.</span><span class="n">subscribe</span><span class="p">(</span><span class="n">callback</span><span class="p">,</span> <span class="n">try_to_connect</span><span class="p">)</span>
+</div>
+<div class="viewcode-block" id="Channel.unsubscribe"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.Channel.unsubscribe">[docs]</a>  <span class="k">def</span> <span class="nf">unsubscribe</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">callback</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Unsubscribes a callback from this Channel&#39;s connectivity.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      callback: A callable previously registered with this Channel from having</span>
+<span class="sd">        been passed to its &quot;subscribe&quot; method.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_connectivity_channel</span><span class="o">.</span><span class="n">unsubscribe</span><span class="p">(</span><span class="n">callback</span><span class="p">)</span>
+
+</div></div>
+<div class="viewcode-block" id="insecure_channel"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.insecure_channel">[docs]</a><span class="k">def</span> <span class="nf">insecure_channel</span><span class="p">(</span><span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an insecure Channel to a remote host.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    host: The name of the remote host to which to connect.</span>
+<span class="sd">    port: The port of the remote host to which to connect.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A Channel to the remote host through which RPCs may be conducted.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">intermediary_low_channel</span> <span class="o">=</span> <span class="n">_intermediary_low</span><span class="o">.</span><span class="n">Channel</span><span class="p">(</span>
+      <span class="s">&#39;</span><span class="si">%s</span><span class="s">:</span><span class="si">%d</span><span class="s">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">),</span> <span class="bp">None</span><span class="p">)</span>
+  <span class="k">return</span> <span class="n">Channel</span><span class="p">(</span><span class="n">intermediary_low_channel</span><span class="o">.</span><span class="n">_internal</span><span class="p">,</span> <span class="n">intermediary_low_channel</span><span class="p">)</span>  <span class="c"># pylint: disable=protected-access</span>
+
+</div>
+<div class="viewcode-block" id="secure_channel"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.secure_channel">[docs]</a><span class="k">def</span> <span class="nf">secure_channel</span><span class="p">(</span><span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">client_credentials</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a secure Channel to a remote host.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    host: The name of the remote host to which to connect.</span>
+<span class="sd">    port: The port of the remote host to which to connect.</span>
+<span class="sd">    client_credentials: A ClientCredentials.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A secure Channel to the remote host through which RPCs may be conducted.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">intermediary_low_channel</span> <span class="o">=</span> <span class="n">_intermediary_low</span><span class="o">.</span><span class="n">Channel</span><span class="p">(</span>
+      <span class="s">&#39;</span><span class="si">%s</span><span class="s">:</span><span class="si">%d</span><span class="s">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">),</span> <span class="n">client_credentials</span><span class="o">.</span><span class="n">intermediary_low_credentials</span><span class="p">)</span>
+  <span class="k">return</span> <span class="n">Channel</span><span class="p">(</span><span class="n">intermediary_low_channel</span><span class="o">.</span><span class="n">_internal</span><span class="p">,</span> <span class="n">intermediary_low_channel</span><span class="p">)</span>  <span class="c"># pylint: disable=protected-access</span>
+
+</div>
+<div class="viewcode-block" id="StubOptions"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.StubOptions">[docs]</a><span class="k">class</span> <span class="nc">StubOptions</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A value encapsulating the various options for creation of a Stub.</span>
+
+<span class="sd">  This class and its instances have no supported interface - it exists to define</span>
+<span class="sd">  the type of its instances and its instances exist to be passed to other</span>
+<span class="sd">  functions.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">request_serializers</span><span class="p">,</span> <span class="n">response_deserializers</span><span class="p">,</span>
+      <span class="n">metadata_transformer</span><span class="p">,</span> <span class="n">thread_pool</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">host</span> <span class="o">=</span> <span class="n">host</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">request_serializers</span> <span class="o">=</span> <span class="n">request_serializers</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">response_deserializers</span> <span class="o">=</span> <span class="n">response_deserializers</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">metadata_transformer</span> <span class="o">=</span> <span class="n">metadata_transformer</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">thread_pool</span> <span class="o">=</span> <span class="n">thread_pool</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">thread_pool_size</span> <span class="o">=</span> <span class="n">thread_pool_size</span>
+</div>
+<span class="n">_EMPTY_STUB_OPTIONS</span> <span class="o">=</span> <span class="n">StubOptions</span><span class="p">(</span>
+    <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+
+<div class="viewcode-block" id="stub_options"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.stub_options">[docs]</a><span class="k">def</span> <span class="nf">stub_options</span><span class="p">(</span>
+    <span class="n">host</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">request_serializers</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">response_deserializers</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+    <span class="n">metadata_transformer</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">thread_pool</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a StubOptions value to be passed at stub creation.</span>
+
+<span class="sd">  All parameters are optional and should always be passed by keyword.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    host: A host string to set on RPC calls.</span>
+<span class="sd">    request_serializers: A dictionary from service name-method name pair to</span>
+<span class="sd">      request serialization behavior.</span>
+<span class="sd">    response_deserializers: A dictionary from service name-method name pair to</span>
+<span class="sd">      response deserialization behavior.</span>
+<span class="sd">    metadata_transformer: A callable that given a metadata object produces</span>
+<span class="sd">      another metadata object to be used in the underlying communication on the</span>
+<span class="sd">      wire.</span>
+<span class="sd">    thread_pool: A thread pool to use in stubs.</span>
+<span class="sd">    thread_pool_size: The size of thread pool to create for use in stubs;</span>
+<span class="sd">      ignored if thread_pool has been passed.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A StubOptions value created from the passed parameters.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">StubOptions</span><span class="p">(</span>
+      <span class="n">host</span><span class="p">,</span> <span class="n">request_serializers</span><span class="p">,</span> <span class="n">response_deserializers</span><span class="p">,</span>
+      <span class="n">metadata_transformer</span><span class="p">,</span> <span class="n">thread_pool</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="generic_stub"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.generic_stub">[docs]</a><span class="k">def</span> <span class="nf">generic_stub</span><span class="p">(</span><span class="n">channel</span><span class="p">,</span> <span class="n">options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a face.GenericStub on which RPCs can be made.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    channel: A Channel for use by the created stub.</span>
+<span class="sd">    options: A StubOptions customizing the created stub.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A face.GenericStub on which RPCs can be made.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">effective_options</span> <span class="o">=</span> <span class="n">_EMPTY_STUB_OPTIONS</span> <span class="k">if</span> <span class="n">options</span> <span class="ow">is</span> <span class="bp">None</span> <span class="k">else</span> <span class="n">options</span>
+  <span class="k">return</span> <span class="n">_stub</span><span class="o">.</span><span class="n">generic_stub</span><span class="p">(</span>
+      <span class="n">channel</span><span class="o">.</span><span class="n">_intermediary_low_channel</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">host</span><span class="p">,</span>  <span class="c"># pylint: disable=protected-access</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">metadata_transformer</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">request_serializers</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">response_deserializers</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">thread_pool</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">thread_pool_size</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="dynamic_stub"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.dynamic_stub">[docs]</a><span class="k">def</span> <span class="nf">dynamic_stub</span><span class="p">(</span><span class="n">channel</span><span class="p">,</span> <span class="n">service</span><span class="p">,</span> <span class="n">cardinalities</span><span class="p">,</span> <span class="n">options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a face.DynamicStub with which RPCs can be invoked.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    channel: A Channel for the returned face.DynamicStub to use.</span>
+<span class="sd">    service: The package-qualified full name of the service.</span>
+<span class="sd">    cardinalities: A dictionary from RPC method name to cardinality.Cardinality</span>
+<span class="sd">      value identifying the cardinality of the RPC method.</span>
+<span class="sd">    options: An optional StubOptions value further customizing the functionality</span>
+<span class="sd">      of the returned face.DynamicStub.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A face.DynamicStub with which RPCs can be invoked.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">effective_options</span> <span class="o">=</span> <span class="n">StubOptions</span><span class="p">()</span> <span class="k">if</span> <span class="n">options</span> <span class="ow">is</span> <span class="bp">None</span> <span class="k">else</span> <span class="n">options</span>
+  <span class="k">return</span> <span class="n">_stub</span><span class="o">.</span><span class="n">dynamic_stub</span><span class="p">(</span>
+      <span class="n">channel</span><span class="o">.</span><span class="n">_intermediary_low_channel</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">host</span><span class="p">,</span> <span class="n">service</span><span class="p">,</span>  <span class="c"># pylint: disable=protected-access</span>
+      <span class="n">cardinalities</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">metadata_transformer</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">request_serializers</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">response_deserializers</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">thread_pool</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">thread_pool_size</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="ServerCredentials"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.ServerCredentials">[docs]</a><span class="k">class</span> <span class="nc">ServerCredentials</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A value encapsulating the data required to open a secure port on a Server.</span>
+
+<span class="sd">  This class and its instances have no supported interface - it exists to define</span>
+<span class="sd">  the type of its instances and its instances exist to be passed to other</span>
+<span class="sd">  functions.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">low_credentials</span><span class="p">,</span> <span class="n">intermediary_low_credentials</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_low_credentials</span> <span class="o">=</span> <span class="n">low_credentials</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_intermediary_low_credentials</span> <span class="o">=</span> <span class="n">intermediary_low_credentials</span>
+
+</div>
+<div class="viewcode-block" id="ssl_server_credentials"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.ssl_server_credentials">[docs]</a><span class="k">def</span> <span class="nf">ssl_server_credentials</span><span class="p">(</span>
+    <span class="n">private_key_certificate_chain_pairs</span><span class="p">,</span> <span class="n">root_certificates</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+    <span class="n">require_client_auth</span><span class="o">=</span><span class="bp">False</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a ServerCredentials for use with an SSL-enabled Server.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    private_key_certificate_chain_pairs: A nonempty sequence each element of</span>
+<span class="sd">      which is a pair the first element of which is a PEM-encoded private key</span>
+<span class="sd">      and the second element of which is the corresponding PEM-encoded</span>
+<span class="sd">      certificate chain.</span>
+<span class="sd">    root_certificates: PEM-encoded client root certificates to be used for</span>
+<span class="sd">      verifying authenticated clients. If omitted, require_client_auth must also</span>
+<span class="sd">      be omitted or be False.</span>
+<span class="sd">    require_client_auth: A boolean indicating whether or not to require clients</span>
+<span class="sd">      to be authenticated. May only be True if root_certificates is not None.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A ServerCredentials for use with an SSL-enabled Server.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">if</span> <span class="nb">len</span><span class="p">(</span><span class="n">private_key_certificate_chain_pairs</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">:</span>
+    <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+        <span class="s">&#39;At least one private key-certificate chain pairis required!&#39;</span><span class="p">)</span>
+  <span class="k">elif</span> <span class="n">require_client_auth</span> <span class="ow">and</span> <span class="n">root_certificates</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
+    <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span>
+        <span class="s">&#39;Illegal to require client auth without providing root certificates!&#39;</span><span class="p">)</span>
+  <span class="k">else</span><span class="p">:</span>
+    <span class="n">intermediary_low_credentials</span> <span class="o">=</span> <span class="n">_intermediary_low</span><span class="o">.</span><span class="n">ServerCredentials</span><span class="p">(</span>
+        <span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key_certificate_chain_pairs</span><span class="p">,</span>
+        <span class="n">require_client_auth</span><span class="p">)</span>
+    <span class="k">return</span> <span class="n">ServerCredentials</span><span class="p">(</span>
+        <span class="n">intermediary_low_credentials</span><span class="o">.</span><span class="n">_internal</span><span class="p">,</span> <span class="n">intermediary_low_credentials</span><span class="p">)</span>  <span class="c"># pylint: disable=protected-access</span>
+
+</div>
+<div class="viewcode-block" id="ServerOptions"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.ServerOptions">[docs]</a><span class="k">class</span> <span class="nc">ServerOptions</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A value encapsulating the various options for creation of a Server.</span>
+
+<span class="sd">  This class and its instances have no supported interface - it exists to define</span>
+<span class="sd">  the type of its instances and its instances exist to be passed to other</span>
+<span class="sd">  functions.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">multi_method_implementation</span><span class="p">,</span> <span class="n">request_deserializers</span><span class="p">,</span>
+      <span class="n">response_serializers</span><span class="p">,</span> <span class="n">thread_pool</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="p">,</span> <span class="n">default_timeout</span><span class="p">,</span>
+      <span class="n">maximum_timeout</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">multi_method_implementation</span> <span class="o">=</span> <span class="n">multi_method_implementation</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">request_deserializers</span> <span class="o">=</span> <span class="n">request_deserializers</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">response_serializers</span> <span class="o">=</span> <span class="n">response_serializers</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">thread_pool</span> <span class="o">=</span> <span class="n">thread_pool</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">thread_pool_size</span> <span class="o">=</span> <span class="n">thread_pool_size</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">default_timeout</span> <span class="o">=</span> <span class="n">default_timeout</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">maximum_timeout</span> <span class="o">=</span> <span class="n">maximum_timeout</span>
+</div>
+<span class="n">_EMPTY_SERVER_OPTIONS</span> <span class="o">=</span> <span class="n">ServerOptions</span><span class="p">(</span>
+    <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+
+<div class="viewcode-block" id="server_options"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.server_options">[docs]</a><span class="k">def</span> <span class="nf">server_options</span><span class="p">(</span>
+    <span class="n">multi_method_implementation</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">request_deserializers</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+    <span class="n">response_serializers</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">thread_pool</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+    <span class="n">default_timeout</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">maximum_timeout</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a ServerOptions value to be passed at server creation.</span>
+
+<span class="sd">  All parameters are optional and should always be passed by keyword.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    multi_method_implementation: A face.MultiMethodImplementation to be called</span>
+<span class="sd">      to service an RPC if the server has no specific method implementation for</span>
+<span class="sd">      the name of the RPC for which service was requested.</span>
+<span class="sd">    request_deserializers: A dictionary from service name-method name pair to</span>
+<span class="sd">      request deserialization behavior.</span>
+<span class="sd">    response_serializers: A dictionary from service name-method name pair to</span>
+<span class="sd">      response serialization behavior.</span>
+<span class="sd">    thread_pool: A thread pool to use in stubs.</span>
+<span class="sd">    thread_pool_size: The size of thread pool to create for use in stubs;</span>
+<span class="sd">      ignored if thread_pool has been passed.</span>
+<span class="sd">    default_timeout: A duration in seconds to allow for RPC service when</span>
+<span class="sd">      servicing RPCs that did not include a timeout value when invoked.</span>
+<span class="sd">    maximum_timeout: A duration in seconds to allow for RPC service when</span>
+<span class="sd">      servicing RPCs no matter what timeout value was passed when the RPC was</span>
+<span class="sd">      invoked.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A StubOptions value created from the passed parameters.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">ServerOptions</span><span class="p">(</span>
+      <span class="n">multi_method_implementation</span><span class="p">,</span> <span class="n">request_deserializers</span><span class="p">,</span> <span class="n">response_serializers</span><span class="p">,</span>
+      <span class="n">thread_pool</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="p">,</span> <span class="n">default_timeout</span><span class="p">,</span> <span class="n">maximum_timeout</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="server"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.implementations.server">[docs]</a><span class="k">def</span> <span class="nf">server</span><span class="p">(</span><span class="n">service_implementations</span><span class="p">,</span> <span class="n">options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an interfaces.Server with which RPCs can be serviced.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    service_implementations: A dictionary from service name-method name pair to</span>
+<span class="sd">      face.MethodImplementation.</span>
+<span class="sd">    options: An optional ServerOptions value further customizing the</span>
+<span class="sd">      functionality of the returned Server.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An interfaces.Server with which RPCs can be serviced.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">effective_options</span> <span class="o">=</span> <span class="n">_EMPTY_SERVER_OPTIONS</span> <span class="k">if</span> <span class="n">options</span> <span class="ow">is</span> <span class="bp">None</span> <span class="k">else</span> <span class="n">options</span>
+  <span class="k">return</span> <span class="n">_server</span><span class="o">.</span><span class="n">server</span><span class="p">(</span>
+      <span class="n">service_implementations</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">multi_method_implementation</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">request_deserializers</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">response_serializers</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">thread_pool</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">thread_pool_size</span><span class="p">,</span> <span class="n">effective_options</span><span class="o">.</span><span class="n">default_timeout</span><span class="p">,</span>
+      <span class="n">effective_options</span><span class="o">.</span><span class="n">maximum_timeout</span><span class="p">)</span></div>
+</pre></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 410 - 0
python/_modules/grpc/beta/interfaces.html

@@ -0,0 +1,410 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.beta.interfaces &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../index.html"/>
+        <link rel="up" title="Module code" href="../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.beta.interfaces</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.beta.interfaces</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;Constants and interfaces of the Beta API of gRPC Python.&quot;&quot;&quot;</span>
+
+<span class="kn">import</span> <span class="nn">abc</span>
+<span class="kn">import</span> <span class="nn">enum</span>
+
+<span class="kn">from</span> <span class="nn">grpc._adapter</span> <span class="kn">import</span> <span class="n">_types</span>
+
+
+<span class="nd">@enum.unique</span>
+<div class="viewcode-block" id="ChannelConnectivity"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.ChannelConnectivity">[docs]</a><span class="k">class</span> <span class="nc">ChannelConnectivity</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Mirrors grpc_connectivity_state in the gRPC Core.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    IDLE: The channel is idle.</span>
+<span class="sd">    CONNECTING: The channel is connecting.</span>
+<span class="sd">    READY: The channel is ready to conduct RPCs.</span>
+<span class="sd">    TRANSIENT_FAILURE: The channel has seen a failure from which it expects to</span>
+<span class="sd">      recover.</span>
+<span class="sd">    FATAL_FAILURE: The channel has seen a failure from which it cannot recover.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">IDLE</span> <span class="o">=</span> <span class="p">(</span><span class="n">_types</span><span class="o">.</span><span class="n">ConnectivityState</span><span class="o">.</span><span class="n">IDLE</span><span class="p">,</span> <span class="s">&#39;idle&#39;</span><span class="p">,)</span>
+  <span class="n">CONNECTING</span> <span class="o">=</span> <span class="p">(</span><span class="n">_types</span><span class="o">.</span><span class="n">ConnectivityState</span><span class="o">.</span><span class="n">CONNECTING</span><span class="p">,</span> <span class="s">&#39;connecting&#39;</span><span class="p">,)</span>
+  <span class="n">READY</span> <span class="o">=</span> <span class="p">(</span><span class="n">_types</span><span class="o">.</span><span class="n">ConnectivityState</span><span class="o">.</span><span class="n">READY</span><span class="p">,</span> <span class="s">&#39;ready&#39;</span><span class="p">,)</span>
+  <span class="n">TRANSIENT_FAILURE</span> <span class="o">=</span> <span class="p">(</span>
+      <span class="n">_types</span><span class="o">.</span><span class="n">ConnectivityState</span><span class="o">.</span><span class="n">TRANSIENT_FAILURE</span><span class="p">,</span> <span class="s">&#39;transient failure&#39;</span><span class="p">,)</span>
+  <span class="n">FATAL_FAILURE</span> <span class="o">=</span> <span class="p">(</span><span class="n">_types</span><span class="o">.</span><span class="n">ConnectivityState</span><span class="o">.</span><span class="n">FATAL_FAILURE</span><span class="p">,</span> <span class="s">&#39;fatal failure&#39;</span><span class="p">,)</span>
+
+</div>
+<span class="nd">@enum.unique</span>
+<div class="viewcode-block" id="StatusCode"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.StatusCode">[docs]</a><span class="k">class</span> <span class="nc">StatusCode</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Mirrors grpc_status_code in the C core.&quot;&quot;&quot;</span>
+  <span class="n">OK</span>                  <span class="o">=</span> <span class="mi">0</span>
+  <span class="n">CANCELLED</span>           <span class="o">=</span> <span class="mi">1</span>
+  <span class="n">UNKNOWN</span>             <span class="o">=</span> <span class="mi">2</span>
+  <span class="n">INVALID_ARGUMENT</span>    <span class="o">=</span> <span class="mi">3</span>
+  <span class="n">DEADLINE_EXCEEDED</span>   <span class="o">=</span> <span class="mi">4</span>
+  <span class="n">NOT_FOUND</span>           <span class="o">=</span> <span class="mi">5</span>
+  <span class="n">ALREADY_EXISTS</span>      <span class="o">=</span> <span class="mi">6</span>
+  <span class="n">PERMISSION_DENIED</span>   <span class="o">=</span> <span class="mi">7</span>
+  <span class="n">RESOURCE_EXHAUSTED</span>  <span class="o">=</span> <span class="mi">8</span>
+  <span class="n">FAILED_PRECONDITION</span> <span class="o">=</span> <span class="mi">9</span>
+  <span class="n">ABORTED</span>             <span class="o">=</span> <span class="mi">10</span>
+  <span class="n">OUT_OF_RANGE</span>        <span class="o">=</span> <span class="mi">11</span>
+  <span class="n">UNIMPLEMENTED</span>       <span class="o">=</span> <span class="mi">12</span>
+  <span class="n">INTERNAL</span>            <span class="o">=</span> <span class="mi">13</span>
+  <span class="n">UNAVAILABLE</span>         <span class="o">=</span> <span class="mi">14</span>
+  <span class="n">DATA_LOSS</span>           <span class="o">=</span> <span class="mi">15</span>
+  <span class="n">UNAUTHENTICATED</span>     <span class="o">=</span> <span class="mi">16</span>
+
+</div>
+<div class="viewcode-block" id="GRPCCallOptions"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.GRPCCallOptions">[docs]</a><span class="k">class</span> <span class="nc">GRPCCallOptions</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A value encapsulating gRPC-specific options passed on RPC invocation.</span>
+
+<span class="sd">  This class and its instances have no supported interface - it exists to</span>
+<span class="sd">  define the type of its instances and its instances exist to be passed to</span>
+<span class="sd">  other functions.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">disable_compression</span><span class="p">,</span> <span class="n">subcall_of</span><span class="p">,</span> <span class="n">credentials</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">disable_compression</span> <span class="o">=</span> <span class="n">disable_compression</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">subcall_of</span> <span class="o">=</span> <span class="n">subcall_of</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">credentials</span> <span class="o">=</span> <span class="n">credentials</span>
+
+</div>
+<div class="viewcode-block" id="grpc_call_options"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.grpc_call_options">[docs]</a><span class="k">def</span> <span class="nf">grpc_call_options</span><span class="p">(</span><span class="n">disable_compression</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">credentials</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a GRPCCallOptions value to be passed at RPC invocation.</span>
+
+<span class="sd">  All parameters are optional and should always be passed by keyword.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    disable_compression: A boolean indicating whether or not compression should</span>
+<span class="sd">      be disabled for the request object of the RPC. Only valid for</span>
+<span class="sd">      request-unary RPCs.</span>
+<span class="sd">    credentials: A ClientCredentials object to use for the invoked RPC.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">GRPCCallOptions</span><span class="p">(</span><span class="n">disable_compression</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">credentials</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="GRPCServicerContext"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.GRPCServicerContext">[docs]</a><span class="k">class</span> <span class="nc">GRPCServicerContext</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Exposes gRPC-specific options and behaviors to code servicing RPCs.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GRPCServicerContext.peer"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.GRPCServicerContext.peer">[docs]</a>  <span class="k">def</span> <span class="nf">peer</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Identifies the peer that invoked the RPC being serviced.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A string identifying the peer that invoked the RPC being serviced.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GRPCServicerContext.disable_next_response_compression"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.GRPCServicerContext.disable_next_response_compression">[docs]</a>  <span class="k">def</span> <span class="nf">disable_next_response_compression</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Disables compression of the next response passed by the application.&quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="GRPCInvocationContext"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.GRPCInvocationContext">[docs]</a><span class="k">class</span> <span class="nc">GRPCInvocationContext</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Exposes gRPC-specific options and behaviors to code invoking RPCs.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GRPCInvocationContext.disable_next_request_compression"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.GRPCInvocationContext.disable_next_request_compression">[docs]</a>  <span class="k">def</span> <span class="nf">disable_next_request_compression</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Disables compression of the next request passed by the application.&quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="Server"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.Server">[docs]</a><span class="k">class</span> <span class="nc">Server</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Services RPCs.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Server.add_insecure_port"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.Server.add_insecure_port">[docs]</a>  <span class="k">def</span> <span class="nf">add_insecure_port</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">address</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Reserves a port for insecure RPC service once this Server becomes active.</span>
+
+<span class="sd">    This method may only be called before calling this Server&#39;s start method is</span>
+<span class="sd">    called.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      address: The address for which to open a port.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An integer port on which RPCs will be serviced after this link has been</span>
+<span class="sd">        started. This is typically the same number as the port number contained</span>
+<span class="sd">        in the passed address, but will likely be different if the port number</span>
+<span class="sd">        contained in the passed address was zero.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Server.add_secure_port"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.Server.add_secure_port">[docs]</a>  <span class="k">def</span> <span class="nf">add_secure_port</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">address</span><span class="p">,</span> <span class="n">server_credentials</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Reserves a port for secure RPC service after this Server becomes active.</span>
+
+<span class="sd">    This method may only be called before calling this Server&#39;s start method is</span>
+<span class="sd">    called.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      address: The address for which to open a port.</span>
+<span class="sd">      server_credentials: A ServerCredentials.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An integer port on which RPCs will be serviced after this link has been</span>
+<span class="sd">        started. This is typically the same number as the port number contained</span>
+<span class="sd">        in the passed address, but will likely be different if the port number</span>
+<span class="sd">        contained in the passed address was zero.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Server.start"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.Server.start">[docs]</a>  <span class="k">def</span> <span class="nf">start</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Starts this Server&#39;s service of RPCs.</span>
+
+<span class="sd">    This method may only be called while the server is not serving RPCs (i.e. it</span>
+<span class="sd">    is not idempotent).</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Server.stop"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.interfaces.Server.stop">[docs]</a>  <span class="k">def</span> <span class="nf">stop</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">grace</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Stops this Server&#39;s service of RPCs.</span>
+
+<span class="sd">    All calls to this method immediately stop service of new RPCs. When existing</span>
+<span class="sd">    RPCs are aborted is controlled by the grace period parameter passed to this</span>
+<span class="sd">    method.</span>
+
+<span class="sd">    This method may be called at any time and is idempotent. Passing a smaller</span>
+<span class="sd">    grace value than has been passed in a previous call will have the effect of</span>
+<span class="sd">    stopping the Server sooner. Passing a larger grace value than has been</span>
+<span class="sd">    passed in a previous call will not have the effect of stopping the sooner</span>
+<span class="sd">    later.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      grace: A duration of time in seconds to allow existing RPCs to complete</span>
+<span class="sd">        before being aborted by this Server&#39;s stopping. May be zero for</span>
+<span class="sd">        immediate abortion of all in-progress RPCs.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A threading.Event that will be set when this Server has completely</span>
+<span class="sd">      stopped. The returned event may not be set until after the full grace</span>
+<span class="sd">      period (if some ongoing RPC continues for the full length of the period)</span>
+<span class="sd">      of it may be set much sooner (such as if this Server had no RPCs underway</span>
+<span class="sd">      at the time it was stopped or if all RPCs that it had underway completed</span>
+<span class="sd">      very early in the grace period).</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
+</pre></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 359 - 0
python/_modules/grpc/beta/utilities.html

@@ -0,0 +1,359 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.beta.utilities &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../index.html"/>
+        <link rel="up" title="Module code" href="../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.beta.utilities</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.beta.utilities</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;Utilities for the gRPC Python Beta API.&quot;&quot;&quot;</span>
+
+<span class="kn">import</span> <span class="nn">threading</span>
+<span class="kn">import</span> <span class="nn">time</span>
+
+<span class="c"># implementations is referenced from specification in this module.</span>
+<span class="kn">from</span> <span class="nn">grpc.beta</span> <span class="kn">import</span> <span class="n">implementations</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.beta</span> <span class="kn">import</span> <span class="n">interfaces</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">callable_util</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">future</span>
+
+<span class="n">_DONE_CALLBACK_EXCEPTION_LOG_MESSAGE</span> <span class="o">=</span> <span class="p">(</span>
+    <span class="s">&#39;Exception calling connectivity future &quot;done&quot; callback!&#39;</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_ChannelReadyFuture</span><span class="p">(</span><span class="n">future</span><span class="o">.</span><span class="n">Future</span><span class="p">):</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">channel</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_channel</span> <span class="o">=</span> <span class="n">channel</span>
+
+    <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span> <span class="o">=</span> <span class="bp">False</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="o">=</span> <span class="bp">False</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_done_callbacks</span> <span class="o">=</span> <span class="p">[]</span>
+
+  <span class="k">def</span> <span class="nf">_block</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timeout</span><span class="p">):</span>
+    <span class="n">until</span> <span class="o">=</span> <span class="bp">None</span> <span class="k">if</span> <span class="n">timeout</span> <span class="ow">is</span> <span class="bp">None</span> <span class="k">else</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span> <span class="o">+</span> <span class="n">timeout</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">while</span> <span class="bp">True</span><span class="p">:</span>
+        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span><span class="p">:</span>
+          <span class="k">raise</span> <span class="n">future</span><span class="o">.</span><span class="n">CancelledError</span><span class="p">()</span>
+        <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span><span class="p">:</span>
+          <span class="k">return</span>
+        <span class="k">else</span><span class="p">:</span>
+          <span class="k">if</span> <span class="n">until</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
+            <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
+          <span class="k">else</span><span class="p">:</span>
+            <span class="n">remaining</span> <span class="o">=</span> <span class="n">until</span> <span class="o">-</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
+            <span class="k">if</span> <span class="n">remaining</span> <span class="o">&lt;</span> <span class="mi">0</span><span class="p">:</span>
+              <span class="k">raise</span> <span class="n">future</span><span class="o">.</span><span class="n">TimeoutError</span><span class="p">()</span>
+            <span class="k">else</span><span class="p">:</span>
+              <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">(</span><span class="n">timeout</span><span class="o">=</span><span class="n">remaining</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">_update</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">connectivity</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">if</span> <span class="p">(</span><span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="ow">and</span>
+          <span class="n">connectivity</span> <span class="ow">is</span> <span class="n">interfaces</span><span class="o">.</span><span class="n">ChannelConnectivity</span><span class="o">.</span><span class="n">READY</span><span class="p">):</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span> <span class="o">=</span> <span class="bp">True</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_channel</span><span class="o">.</span><span class="n">unsubscribe</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_update</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
+        <span class="n">done_callbacks</span> <span class="o">=</span> <span class="nb">tuple</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_done_callbacks</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_done_callbacks</span> <span class="o">=</span> <span class="bp">None</span>
+      <span class="k">else</span><span class="p">:</span>
+        <span class="k">return</span>
+
+    <span class="k">for</span> <span class="n">done_callback</span> <span class="ow">in</span> <span class="n">done_callbacks</span><span class="p">:</span>
+      <span class="n">callable_util</span><span class="o">.</span><span class="n">call_logging_exceptions</span><span class="p">(</span>
+          <span class="n">done_callback</span><span class="p">,</span> <span class="n">_DONE_CALLBACK_EXCEPTION_LOG_MESSAGE</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">cancel</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span><span class="p">:</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="o">=</span> <span class="bp">True</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_channel</span><span class="o">.</span><span class="n">unsubscribe</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_update</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
+        <span class="n">done_callbacks</span> <span class="o">=</span> <span class="nb">tuple</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_done_callbacks</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_done_callbacks</span> <span class="o">=</span> <span class="bp">None</span>
+      <span class="k">else</span><span class="p">:</span>
+        <span class="k">return</span> <span class="bp">False</span>
+
+    <span class="k">for</span> <span class="n">done_callback</span> <span class="ow">in</span> <span class="n">done_callbacks</span><span class="p">:</span>
+      <span class="n">callable_util</span><span class="o">.</span><span class="n">call_logging_exceptions</span><span class="p">(</span>
+          <span class="n">done_callback</span><span class="p">,</span> <span class="n">_DONE_CALLBACK_EXCEPTION_LOG_MESSAGE</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">cancelled</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span>
+
+  <span class="k">def</span> <span class="nf">running</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">return</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="ow">and</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span>
+
+  <span class="k">def</span> <span class="nf">done</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="ow">or</span> <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span>
+
+  <span class="k">def</span> <span class="nf">result</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timeout</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_block</span><span class="p">(</span><span class="n">timeout</span><span class="p">)</span>
+    <span class="k">return</span> <span class="bp">None</span>
+
+  <span class="k">def</span> <span class="nf">exception</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timeout</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_block</span><span class="p">(</span><span class="n">timeout</span><span class="p">)</span>
+    <span class="k">return</span> <span class="bp">None</span>
+
+  <span class="k">def</span> <span class="nf">traceback</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">timeout</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_block</span><span class="p">(</span><span class="n">timeout</span><span class="p">)</span>
+    <span class="k">return</span> <span class="bp">None</span>
+
+  <span class="k">def</span> <span class="nf">add_done_callback</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">fn</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="ow">and</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span><span class="p">:</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_done_callbacks</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">fn</span><span class="p">)</span>
+        <span class="k">return</span>
+
+    <span class="n">fn</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">start</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="bp">self</span><span class="o">.</span><span class="n">_channel</span><span class="o">.</span><span class="n">subscribe</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_update</span><span class="p">,</span> <span class="n">try_to_connect</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">__del__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
+      <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cancelled</span> <span class="ow">and</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_matured</span><span class="p">:</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_channel</span><span class="o">.</span><span class="n">unsubscribe</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_update</span><span class="p">)</span>
+
+
+<div class="viewcode-block" id="channel_ready_future"><a class="viewcode-back" href="../../../grpc.beta.html#grpc.beta.utilities.channel_ready_future">[docs]</a><span class="k">def</span> <span class="nf">channel_ready_future</span><span class="p">(</span><span class="n">channel</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a future.Future tracking when an implementations.Channel is ready.</span>
+
+<span class="sd">  Cancelling the returned future.Future does not tell the given</span>
+<span class="sd">  implementations.Channel to abandon attempts it may have been making to</span>
+<span class="sd">  connect; cancelling merely deactivates the return future.Future&#39;s</span>
+<span class="sd">  subscription to the given implementations.Channel&#39;s connectivity.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    channel: An implementations.Channel.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A future.Future that matures when the given Channel has connectivity</span>
+<span class="sd">      interfaces.ChannelConnectivity.READY.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">ready_future</span> <span class="o">=</span> <span class="n">_ChannelReadyFuture</span><span class="p">(</span><span class="n">channel</span><span class="p">)</span>
+  <span class="n">ready_future</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
+  <span class="k">return</span> <span class="n">ready_future</span>
+</pre></div></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 32 - 13
python/_modules/grpc/early_adopter/implementations.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.early_adopter.implementations &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.early_adopter.implementations &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../index.html"/>
         <link rel="up" title="Module code" href="../../index.html"/> 
         <link rel="up" title="Module code" href="../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -171,13 +178,15 @@
 <span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">implementations</span> <span class="k">as</span> <span class="n">_face_implementations</span>
 <span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">implementations</span> <span class="k">as</span> <span class="n">_face_implementations</span>
 <span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">logging_pool</span>
 <span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">logging_pool</span>
 
 
-<span class="n">_THREAD_POOL_SIZE</span> <span class="o">=</span> <span class="mi">8</span>
+<span class="n">_DEFAULT_THREAD_POOL_SIZE</span> <span class="o">=</span> <span class="mi">8</span>
 <span class="n">_ONE_DAY_IN_SECONDS</span> <span class="o">=</span> <span class="mi">24</span> <span class="o">*</span> <span class="mi">60</span> <span class="o">*</span> <span class="mi">60</span>
 <span class="n">_ONE_DAY_IN_SECONDS</span> <span class="o">=</span> <span class="mi">24</span> <span class="o">*</span> <span class="mi">60</span> <span class="o">*</span> <span class="mi">60</span>
 
 
 
 
 <span class="k">class</span> <span class="nc">_Server</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Server</span><span class="p">):</span>
 <span class="k">class</span> <span class="nc">_Server</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Server</span><span class="p">):</span>
 
 
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">breakdown</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">):</span>
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span>
+        <span class="bp">self</span><span class="p">,</span> <span class="n">breakdown</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">,</span>
+        <span class="n">thread_pool_size</span><span class="o">=</span><span class="n">_DEFAULT_THREAD_POOL_SIZE</span><span class="p">):</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Lock</span><span class="p">()</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Lock</span><span class="p">()</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_breakdown</span> <span class="o">=</span> <span class="n">breakdown</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_breakdown</span> <span class="o">=</span> <span class="n">breakdown</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_port</span> <span class="o">=</span> <span class="n">port</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_port</span> <span class="o">=</span> <span class="n">port</span>
@@ -186,6 +195,7 @@
     <span class="k">else</span><span class="p">:</span>
     <span class="k">else</span><span class="p">:</span>
       <span class="bp">self</span><span class="o">.</span><span class="n">_key_chain_pairs</span> <span class="o">=</span> <span class="p">((</span><span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">),)</span>
       <span class="bp">self</span><span class="o">.</span><span class="n">_key_chain_pairs</span> <span class="o">=</span> <span class="p">((</span><span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">),)</span>
 
 
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool_size</span> <span class="o">=</span> <span class="n">thread_pool_size</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_back</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_back</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_fore_link</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_fore_link</span> <span class="o">=</span> <span class="bp">None</span>
@@ -193,7 +203,7 @@
   <span class="k">def</span> <span class="nf">_start</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
   <span class="k">def</span> <span class="nf">_start</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
     <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
     <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
       <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
       <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_THREAD_POOL_SIZE</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_pool_size</span><span class="p">)</span>
         <span class="n">servicer</span> <span class="o">=</span> <span class="n">_face_implementations</span><span class="o">.</span><span class="n">servicer</span><span class="p">(</span>
         <span class="n">servicer</span> <span class="o">=</span> <span class="n">_face_implementations</span><span class="o">.</span><span class="n">servicer</span><span class="p">(</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_breakdown</span><span class="o">.</span><span class="n">implementations</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_breakdown</span><span class="o">.</span><span class="n">implementations</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_back</span> <span class="o">=</span> <span class="n">_base_implementations</span><span class="o">.</span><span class="n">back_link</span><span class="p">(</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_back</span> <span class="o">=</span> <span class="n">_base_implementations</span><span class="o">.</span><span class="n">back_link</span><span class="p">(</span>
@@ -244,7 +254,8 @@
 
 
   <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span>
   <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span>
       <span class="bp">self</span><span class="p">,</span> <span class="n">breakdown</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">secure</span><span class="p">,</span> <span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span>
       <span class="bp">self</span><span class="p">,</span> <span class="n">breakdown</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">secure</span><span class="p">,</span> <span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span>
-      <span class="n">certificate_chain</span><span class="p">,</span> <span class="n">metadata_transformer</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">server_host_override</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+      <span class="n">certificate_chain</span><span class="p">,</span> <span class="n">metadata_transformer</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">server_host_override</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">thread_pool_size</span><span class="o">=</span><span class="n">_DEFAULT_THREAD_POOL_SIZE</span><span class="p">):</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Lock</span><span class="p">()</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Lock</span><span class="p">()</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_breakdown</span> <span class="o">=</span> <span class="n">breakdown</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_breakdown</span> <span class="o">=</span> <span class="n">breakdown</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_host</span> <span class="o">=</span> <span class="n">host</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_host</span> <span class="o">=</span> <span class="n">host</span>
@@ -256,6 +267,7 @@
     <span class="bp">self</span><span class="o">.</span><span class="n">_metadata_transformer</span> <span class="o">=</span> <span class="n">metadata_transformer</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_metadata_transformer</span> <span class="o">=</span> <span class="n">metadata_transformer</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_server_host_override</span> <span class="o">=</span> <span class="n">server_host_override</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_server_host_override</span> <span class="o">=</span> <span class="n">server_host_override</span>
 
 
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool_size</span> <span class="o">=</span> <span class="n">thread_pool_size</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_front</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_front</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_rear_link</span> <span class="o">=</span> <span class="bp">None</span>
     <span class="bp">self</span><span class="o">.</span><span class="n">_rear_link</span> <span class="o">=</span> <span class="bp">None</span>
@@ -264,7 +276,7 @@
   <span class="k">def</span> <span class="nf">__enter__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
   <span class="k">def</span> <span class="nf">__enter__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
     <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
     <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
       <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
       <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_THREAD_POOL_SIZE</span><span class="p">)</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_pool_size</span><span class="p">)</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_front</span> <span class="o">=</span> <span class="n">_base_implementations</span><span class="o">.</span><span class="n">front_link</span><span class="p">(</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_front</span> <span class="o">=</span> <span class="n">_base_implementations</span><span class="o">.</span><span class="n">front_link</span><span class="p">(</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_rear_link</span> <span class="o">=</span> <span class="n">_rear</span><span class="o">.</span><span class="n">RearLink</span><span class="p">(</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">_rear_link</span> <span class="o">=</span> <span class="n">_rear</span><span class="o">.</span><span class="n">RearLink</span><span class="p">(</span>
@@ -323,7 +335,7 @@
 <div class="viewcode-block" id="stub"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations.stub">[docs]</a><span class="k">def</span> <span class="nf">stub</span><span class="p">(</span>
 <div class="viewcode-block" id="stub"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations.stub">[docs]</a><span class="k">def</span> <span class="nf">stub</span><span class="p">(</span>
     <span class="n">service_name</span><span class="p">,</span> <span class="n">methods</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">metadata_transformer</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">secure</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span>
     <span class="n">service_name</span><span class="p">,</span> <span class="n">methods</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">metadata_transformer</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">secure</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span>
     <span class="n">root_certificates</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">private_key</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
     <span class="n">root_certificates</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">private_key</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
-    <span class="n">server_host_override</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="n">server_host_override</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">thread_pool_size</span><span class="o">=</span><span class="n">_DEFAULT_THREAD_POOL_SIZE</span><span class="p">):</span>
   <span class="sd">&quot;&quot;&quot;Constructs an interfaces.Stub.</span>
   <span class="sd">&quot;&quot;&quot;Constructs an interfaces.Stub.</span>
 
 
 <span class="sd">  Args:</span>
 <span class="sd">  Args:</span>
@@ -346,6 +358,8 @@
 <span class="sd">      certificate chain should be used.</span>
 <span class="sd">      certificate chain should be used.</span>
 <span class="sd">    server_host_override: (For testing only) the target name used for SSL</span>
 <span class="sd">    server_host_override: (For testing only) the target name used for SSL</span>
 <span class="sd">      host name checking.</span>
 <span class="sd">      host name checking.</span>
+<span class="sd">    thread_pool_size: The maximum number of threads to allow in the backing</span>
+<span class="sd">      thread pool.</span>
 
 
 <span class="sd">  Returns:</span>
 <span class="sd">  Returns:</span>
 <span class="sd">    An interfaces.Stub affording RPC invocation.</span>
 <span class="sd">    An interfaces.Stub affording RPC invocation.</span>
@@ -354,11 +368,13 @@
   <span class="k">return</span> <span class="n">_Stub</span><span class="p">(</span>
   <span class="k">return</span> <span class="n">_Stub</span><span class="p">(</span>
       <span class="n">breakdown</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">secure</span><span class="p">,</span> <span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span>
       <span class="n">breakdown</span><span class="p">,</span> <span class="n">host</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">secure</span><span class="p">,</span> <span class="n">root_certificates</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span>
       <span class="n">certificate_chain</span><span class="p">,</span> <span class="n">server_host_override</span><span class="o">=</span><span class="n">server_host_override</span><span class="p">,</span>
       <span class="n">certificate_chain</span><span class="p">,</span> <span class="n">server_host_override</span><span class="o">=</span><span class="n">server_host_override</span><span class="p">,</span>
-      <span class="n">metadata_transformer</span><span class="o">=</span><span class="n">metadata_transformer</span><span class="p">)</span>
+      <span class="n">metadata_transformer</span><span class="o">=</span><span class="n">metadata_transformer</span><span class="p">,</span>
+      <span class="n">thread_pool_size</span><span class="o">=</span><span class="n">thread_pool_size</span><span class="p">)</span>
 
 
 </div>
 </div>
 <div class="viewcode-block" id="server"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations.server">[docs]</a><span class="k">def</span> <span class="nf">server</span><span class="p">(</span>
 <div class="viewcode-block" id="server"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations.server">[docs]</a><span class="k">def</span> <span class="nf">server</span><span class="p">(</span>
-    <span class="n">service_name</span><span class="p">,</span> <span class="n">methods</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">private_key</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="n">service_name</span><span class="p">,</span> <span class="n">methods</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">private_key</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+    <span class="n">thread_pool_size</span><span class="o">=</span><span class="n">_DEFAULT_THREAD_POOL_SIZE</span><span class="p">):</span>
   <span class="sd">&quot;&quot;&quot;Constructs an interfaces.Server.</span>
   <span class="sd">&quot;&quot;&quot;Constructs an interfaces.Server.</span>
 
 
 <span class="sd">  Args:</span>
 <span class="sd">  Args:</span>
@@ -372,12 +388,15 @@
 <span class="sd">    private_key: A pem-encoded private key, or None for an insecure server.</span>
 <span class="sd">    private_key: A pem-encoded private key, or None for an insecure server.</span>
 <span class="sd">    certificate_chain: A pem-encoded certificate chain, or None for an insecure</span>
 <span class="sd">    certificate_chain: A pem-encoded certificate chain, or None for an insecure</span>
 <span class="sd">      server.</span>
 <span class="sd">      server.</span>
+<span class="sd">    thread_pool_size: The maximum number of threads to allow in the backing</span>
+<span class="sd">      thread pool.</span>
 
 
 <span class="sd">  Returns:</span>
 <span class="sd">  Returns:</span>
 <span class="sd">    An interfaces.Server that will serve secure traffic.</span>
 <span class="sd">    An interfaces.Server that will serve secure traffic.</span>
 <span class="sd">  &quot;&quot;&quot;</span>
 <span class="sd">  &quot;&quot;&quot;</span>
   <span class="n">breakdown</span> <span class="o">=</span> <span class="n">_face_utilities</span><span class="o">.</span><span class="n">break_down_service</span><span class="p">(</span><span class="n">service_name</span><span class="p">,</span> <span class="n">methods</span><span class="p">)</span>
   <span class="n">breakdown</span> <span class="o">=</span> <span class="n">_face_utilities</span><span class="o">.</span><span class="n">break_down_service</span><span class="p">(</span><span class="n">service_name</span><span class="p">,</span> <span class="n">methods</span><span class="p">)</span>
-  <span class="k">return</span> <span class="n">_Server</span><span class="p">(</span><span class="n">breakdown</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">)</span></div>
+  <span class="k">return</span> <span class="n">_Server</span><span class="p">(</span><span class="n">breakdown</span><span class="p">,</span> <span class="n">port</span><span class="p">,</span> <span class="n">private_key</span><span class="p">,</span> <span class="n">certificate_chain</span><span class="p">,</span>
+      <span class="n">thread_pool_size</span><span class="o">=</span><span class="n">thread_pool_size</span><span class="p">)</span></div>
 </pre></div>
 </pre></div>
 
 
           </div>
           </div>
@@ -409,7 +428,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../',
             URL_ROOT:'../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 369
python/_modules/grpc/early_adopter/implementations_test.html

@@ -1,369 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.early_adopter.implementations_test &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../index.html"/>
-        <link rel="up" title="Module code" href="../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.early_adopter.implementations_test</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.early_adopter.implementations_test</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="c"># TODO(nathaniel): Expand this test coverage.</span>
-
-<span class="sd">&quot;&quot;&quot;Test of the GRPC-backed ForeLink and RearLink.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">unittest</span>
-
-<span class="kn">from</span> <span class="nn">grpc.early_adopter</span> <span class="kn">import</span> <span class="n">implementations</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.alpha</span> <span class="kn">import</span> <span class="n">utilities</span>
-<span class="kn">from</span> <span class="nn">grpc._junkdrawer</span> <span class="kn">import</span> <span class="n">math_pb2</span>
-
-<span class="n">SERVICE_NAME</span> <span class="o">=</span> <span class="s">&#39;math.Math&#39;</span>
-
-<span class="n">DIV</span> <span class="o">=</span> <span class="s">&#39;Div&#39;</span>
-<span class="n">DIV_MANY</span> <span class="o">=</span> <span class="s">&#39;DivMany&#39;</span>
-<span class="n">FIB</span> <span class="o">=</span> <span class="s">&#39;Fib&#39;</span>
-<span class="n">SUM</span> <span class="o">=</span> <span class="s">&#39;Sum&#39;</span>
-
-<span class="k">def</span> <span class="nf">_fibbonacci</span><span class="p">(</span><span class="n">limit</span><span class="p">):</span>
-  <span class="n">left</span><span class="p">,</span> <span class="n">right</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span>
-  <span class="k">for</span> <span class="n">_</span> <span class="ow">in</span> <span class="nb">xrange</span><span class="p">(</span><span class="n">limit</span><span class="p">):</span>
-    <span class="k">yield</span> <span class="n">left</span>
-    <span class="n">left</span><span class="p">,</span> <span class="n">right</span> <span class="o">=</span> <span class="n">right</span><span class="p">,</span> <span class="n">left</span> <span class="o">+</span> <span class="n">right</span>
-
-
-<span class="k">def</span> <span class="nf">_div</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">unused_context</span><span class="p">):</span>
-  <span class="k">return</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivReply</span><span class="p">(</span>
-      <span class="n">quotient</span><span class="o">=</span><span class="n">request</span><span class="o">.</span><span class="n">dividend</span> <span class="o">/</span> <span class="n">request</span><span class="o">.</span><span class="n">divisor</span><span class="p">,</span>
-      <span class="n">remainder</span><span class="o">=</span><span class="n">request</span><span class="o">.</span><span class="n">dividend</span> <span class="o">%</span> <span class="n">request</span><span class="o">.</span><span class="n">divisor</span><span class="p">)</span>
-
-
-<span class="k">def</span> <span class="nf">_div_many</span><span class="p">(</span><span class="n">request_iterator</span><span class="p">,</span> <span class="n">unused_context</span><span class="p">):</span>
-  <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">request_iterator</span><span class="p">:</span>
-    <span class="k">yield</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivReply</span><span class="p">(</span>
-        <span class="n">quotient</span><span class="o">=</span><span class="n">request</span><span class="o">.</span><span class="n">dividend</span> <span class="o">/</span> <span class="n">request</span><span class="o">.</span><span class="n">divisor</span><span class="p">,</span>
-        <span class="n">remainder</span><span class="o">=</span><span class="n">request</span><span class="o">.</span><span class="n">dividend</span> <span class="o">%</span> <span class="n">request</span><span class="o">.</span><span class="n">divisor</span><span class="p">)</span>
-
-
-<span class="k">def</span> <span class="nf">_fib</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">unused_context</span><span class="p">):</span>
-  <span class="k">for</span> <span class="n">number</span> <span class="ow">in</span> <span class="n">_fibbonacci</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">limit</span><span class="p">):</span>
-    <span class="k">yield</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="p">(</span><span class="n">num</span><span class="o">=</span><span class="n">number</span><span class="p">)</span>
-
-
-<span class="k">def</span> <span class="nf">_sum</span><span class="p">(</span><span class="n">request_iterator</span><span class="p">,</span> <span class="n">unused_context</span><span class="p">):</span>
-  <span class="n">accumulation</span> <span class="o">=</span> <span class="mi">0</span>
-  <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">request_iterator</span><span class="p">:</span>
-    <span class="n">accumulation</span> <span class="o">+=</span> <span class="n">request</span><span class="o">.</span><span class="n">num</span>
-  <span class="k">return</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="p">(</span><span class="n">num</span><span class="o">=</span><span class="n">accumulation</span><span class="p">)</span>
-
-
-<span class="n">_INVOCATION_DESCRIPTIONS</span> <span class="o">=</span> <span class="p">{</span>
-    <span class="n">DIV</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">unary_unary_invocation_description</span><span class="p">(</span>
-        <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivArgs</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivReply</span><span class="o">.</span><span class="n">FromString</span><span class="p">),</span>
-    <span class="n">DIV_MANY</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">stream_stream_invocation_description</span><span class="p">(</span>
-        <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivArgs</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivReply</span><span class="o">.</span><span class="n">FromString</span><span class="p">),</span>
-    <span class="n">FIB</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">unary_stream_invocation_description</span><span class="p">(</span>
-        <span class="n">math_pb2</span><span class="o">.</span><span class="n">FibArgs</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="o">.</span><span class="n">FromString</span><span class="p">),</span>
-    <span class="n">SUM</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">stream_unary_invocation_description</span><span class="p">(</span>
-        <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="o">.</span><span class="n">FromString</span><span class="p">),</span>
-<span class="p">}</span>
-
-<span class="n">_SERVICE_DESCRIPTIONS</span> <span class="o">=</span> <span class="p">{</span>
-    <span class="n">DIV</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">unary_unary_service_description</span><span class="p">(</span>
-        <span class="n">_div</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivArgs</span><span class="o">.</span><span class="n">FromString</span><span class="p">,</span>
-        <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivReply</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">),</span>
-    <span class="n">DIV_MANY</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">stream_stream_service_description</span><span class="p">(</span>
-        <span class="n">_div_many</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivArgs</span><span class="o">.</span><span class="n">FromString</span><span class="p">,</span>
-        <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivReply</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">),</span>
-    <span class="n">FIB</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">unary_stream_service_description</span><span class="p">(</span>
-        <span class="n">_fib</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">FibArgs</span><span class="o">.</span><span class="n">FromString</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">),</span>
-    <span class="n">SUM</span><span class="p">:</span> <span class="n">utilities</span><span class="o">.</span><span class="n">stream_unary_service_description</span><span class="p">(</span>
-        <span class="n">_sum</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="o">.</span><span class="n">FromString</span><span class="p">,</span> <span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">),</span>
-<span class="p">}</span>
-
-<span class="n">_TIMEOUT</span> <span class="o">=</span> <span class="mi">3</span>
-
-
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest">[docs]</a><span class="k">class</span> <span class="nc">EarlyAdopterImplementationsTest</span><span class="p">(</span><span class="n">unittest</span><span class="o">.</span><span class="n">TestCase</span><span class="p">):</span>
-
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.setUp"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.setUp">[docs]</a>  <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">server</span> <span class="o">=</span> <span class="n">implementations</span><span class="o">.</span><span class="n">server</span><span class="p">(</span>
-        <span class="n">SERVICE_NAME</span><span class="p">,</span> <span class="n">_SERVICE_DESCRIPTIONS</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">server</span><span class="o">.</span><span class="n">start</span><span class="p">()</span>
-    <span class="n">port</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">server</span><span class="o">.</span><span class="n">port</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">stub</span> <span class="o">=</span> <span class="n">implementations</span><span class="o">.</span><span class="n">stub</span><span class="p">(</span>
-        <span class="n">SERVICE_NAME</span><span class="p">,</span> <span class="n">_INVOCATION_DESCRIPTIONS</span><span class="p">,</span> <span class="s">&#39;localhost&#39;</span><span class="p">,</span> <span class="n">port</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.tearDown"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.tearDown">[docs]</a>  <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">server</span><span class="o">.</span><span class="n">stop</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.testUpAndDown"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUpAndDown">[docs]</a>  <span class="k">def</span> <span class="nf">testUpAndDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">:</span>
-      <span class="k">pass</span>
-</div>
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.testUnaryUnary"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUnaryUnary">[docs]</a>  <span class="k">def</span> <span class="nf">testUnaryUnary</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">divisor</span> <span class="o">=</span> <span class="mi">59</span>
-    <span class="n">dividend</span> <span class="o">=</span> <span class="mi">973</span>
-    <span class="n">expected_quotient</span> <span class="o">=</span> <span class="n">dividend</span> <span class="o">/</span> <span class="n">divisor</span>
-    <span class="n">expected_remainder</span> <span class="o">=</span> <span class="n">dividend</span> <span class="o">%</span> <span class="n">divisor</span>
-
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">:</span>
-      <span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">Div</span><span class="p">(</span>
-          <span class="n">math_pb2</span><span class="o">.</span><span class="n">DivArgs</span><span class="p">(</span><span class="n">divisor</span><span class="o">=</span><span class="n">divisor</span><span class="p">,</span> <span class="n">dividend</span><span class="o">=</span><span class="n">dividend</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">expected_quotient</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">quotient</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">expected_remainder</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">remainder</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.testUnaryStream"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUnaryStream">[docs]</a>  <span class="k">def</span> <span class="nf">testUnaryStream</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">stream_length</span> <span class="o">=</span> <span class="mi">43</span>
-
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">:</span>
-      <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">Fib</span><span class="p">(</span>
-          <span class="n">math_pb2</span><span class="o">.</span><span class="n">FibArgs</span><span class="p">(</span><span class="n">limit</span><span class="o">=</span><span class="n">stream_length</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-      <span class="n">numbers</span> <span class="o">=</span> <span class="nb">tuple</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">num</span> <span class="k">for</span> <span class="n">response</span> <span class="ow">in</span> <span class="n">response_iterator</span><span class="p">)</span>
-      <span class="k">for</span> <span class="n">early</span><span class="p">,</span> <span class="n">middle</span><span class="p">,</span> <span class="n">later</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">numbers</span><span class="p">,</span> <span class="n">numbers</span><span class="p">[:</span><span class="mi">1</span><span class="p">],</span> <span class="n">numbers</span><span class="p">[:</span><span class="mi">2</span><span class="p">]):</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">early</span> <span class="o">+</span> <span class="n">middle</span><span class="p">,</span> <span class="n">later</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">stream_length</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">numbers</span><span class="p">))</span>
-</div>
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.testStreamUnary"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testStreamUnary">[docs]</a>  <span class="k">def</span> <span class="nf">testStreamUnary</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">stream_length</span> <span class="o">=</span> <span class="mi">127</span>
-
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">:</span>
-      <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">Sum</span><span class="o">.</span><span class="n">async</span><span class="p">(</span>
-          <span class="p">(</span><span class="n">math_pb2</span><span class="o">.</span><span class="n">Num</span><span class="p">(</span><span class="n">num</span><span class="o">=</span><span class="n">index</span><span class="p">)</span> <span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">stream_length</span><span class="p">)),</span>
-          <span class="n">_TIMEOUT</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-          <span class="p">(</span><span class="n">stream_length</span> <span class="o">*</span> <span class="p">(</span><span class="n">stream_length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">))</span> <span class="o">/</span> <span class="mi">2</span><span class="p">,</span>
-          <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span><span class="o">.</span><span class="n">num</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EarlyAdopterImplementationsTest.testStreamStream"><a class="viewcode-back" href="../../../grpc.early_adopter.html#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testStreamStream">[docs]</a>  <span class="k">def</span> <span class="nf">testStreamStream</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">stream_length</span> <span class="o">=</span> <span class="mi">179</span>
-    <span class="n">divisor_offset</span> <span class="o">=</span> <span class="mi">71</span>
-    <span class="n">dividend_offset</span> <span class="o">=</span> <span class="mi">1763</span>
-
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">:</span>
-      <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">DivMany</span><span class="p">(</span>
-          <span class="p">(</span><span class="n">math_pb2</span><span class="o">.</span><span class="n">DivArgs</span><span class="p">(</span>
-               <span class="n">divisor</span><span class="o">=</span><span class="n">divisor_offset</span> <span class="o">+</span> <span class="n">index</span><span class="p">,</span>
-               <span class="n">dividend</span><span class="o">=</span><span class="n">dividend_offset</span> <span class="o">+</span> <span class="n">index</span><span class="p">)</span>
-           <span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">stream_length</span><span class="p">)),</span>
-          <span class="n">_TIMEOUT</span><span class="p">)</span>
-      <span class="k">for</span> <span class="n">index</span><span class="p">,</span> <span class="n">response</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">):</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-            <span class="p">(</span><span class="n">dividend_offset</span> <span class="o">+</span> <span class="n">index</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">divisor_offset</span> <span class="o">+</span> <span class="n">index</span><span class="p">),</span>
-            <span class="n">response</span><span class="o">.</span><span class="n">quotient</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-            <span class="p">(</span><span class="n">dividend_offset</span> <span class="o">+</span> <span class="n">index</span><span class="p">)</span> <span class="o">%</span> <span class="p">(</span><span class="n">divisor_offset</span> <span class="o">+</span> <span class="n">index</span><span class="p">),</span>
-            <span class="n">response</span><span class="o">.</span><span class="n">remainder</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">stream_length</span><span class="p">,</span> <span class="n">index</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)</span>
-
-</div></div>
-<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&#39;__main__&#39;</span><span class="p">:</span>
-  <span class="n">unittest</span><span class="o">.</span><span class="n">main</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/alpha/exceptions.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.alpha.exceptions &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.alpha.exceptions &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -207,7 +214,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/alpha/interfaces.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.alpha.interfaces &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.alpha.interfaces &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -547,7 +554,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/alpha/utilities.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.alpha.utilities &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.alpha.utilities &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -428,7 +435,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/base/exceptions.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.base.exceptions &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.base.exceptions &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -193,7 +200,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/base/implementations.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.base.implementations &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.base.implementations &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -236,7 +243,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 269
python/_modules/grpc/framework/base/implementations_test.html

@@ -1,269 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.base.implementations_test &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.base.implementations_test</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.base.implementations_test</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Tests for grpc.framework.base.implementations.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">unittest</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">implementations</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">interfaces_test_case</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">util</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">logging_pool</span>
-
-<span class="n">POOL_MAX_WORKERS</span> <span class="o">=</span> <span class="mi">10</span>
-<span class="n">DEFAULT_TIMEOUT</span> <span class="o">=</span> <span class="mi">30</span>
-<span class="n">MAXIMUM_TIMEOUT</span> <span class="o">=</span> <span class="mi">60</span>
-
-
-<div class="viewcode-block" id="ImplementationsTest"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.implementations_test.ImplementationsTest">[docs]</a><span class="k">class</span> <span class="nc">ImplementationsTest</span><span class="p">(</span>
-    <span class="n">interfaces_test_case</span><span class="o">.</span><span class="n">FrontAndBackTest</span><span class="p">,</span> <span class="n">unittest</span><span class="o">.</span><span class="n">TestCase</span><span class="p">):</span>
-
-<div class="viewcode-block" id="ImplementationsTest.setUp"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.implementations_test.ImplementationsTest.setUp">[docs]</a>  <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">memory_transmission_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front_work_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front_transmission_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front_utility_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back_work_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back_transmission_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back_utility_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">test_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">POOL_MAX_WORKERS</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">test_servicer</span> <span class="o">=</span> <span class="n">interfaces_test_case</span><span class="o">.</span><span class="n">TestServicer</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">test_pool</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front</span> <span class="o">=</span> <span class="n">implementations</span><span class="o">.</span><span class="n">front_link</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">front_work_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">front_transmission_pool</span><span class="p">,</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">front_utility_pool</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back</span> <span class="o">=</span> <span class="n">implementations</span><span class="o">.</span><span class="n">back_link</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">test_servicer</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">back_work_pool</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">back_transmission_pool</span><span class="p">,</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">back_utility_pool</span><span class="p">,</span> <span class="n">DEFAULT_TIMEOUT</span><span class="p">,</span> <span class="n">MAXIMUM_TIMEOUT</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">join_rear_link</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="o">.</span><span class="n">join_fore_link</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="ImplementationsTest.tearDown"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.implementations_test.ImplementationsTest.tearDown">[docs]</a>  <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">memory_transmission_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front_work_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front_transmission_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front_utility_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back_work_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back_transmission_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back_utility_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">test_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-
-</div></div>
-<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&#39;__main__&#39;</span><span class="p">:</span>
-  <span class="n">unittest</span><span class="o">.</span><span class="n">main</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/base/in_memory.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.base.in_memory &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.base.in_memory &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -267,7 +274,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/base/interfaces.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.base.interfaces &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.base.interfaces &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -522,7 +529,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 496
python/_modules/grpc/framework/base/interfaces_test_case.html

@@ -1,496 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.base.interfaces_test_case &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.base.interfaces_test_case</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.base.interfaces_test_case</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Abstract tests against the interfaces of the base layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">threading</span>
-<span class="kn">import</span> <span class="nn">time</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">interfaces</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">util</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream_testing</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream_util</span>
-
-<span class="n">TICK</span> <span class="o">=</span> <span class="mf">0.1</span>
-<span class="n">SMALL_TIMEOUT</span> <span class="o">=</span> <span class="n">TICK</span> <span class="o">*</span> <span class="mi">50</span>
-<span class="n">STREAM_LENGTH</span> <span class="o">=</span> <span class="mi">100</span>
-
-<span class="n">SYNCHRONOUS_ECHO</span> <span class="o">=</span> <span class="s">&#39;synchronous echo&#39;</span>
-<span class="n">ASYNCHRONOUS_ECHO</span> <span class="o">=</span> <span class="s">&#39;asynchronous echo&#39;</span>
-<span class="n">IMMEDIATE_FAILURE</span> <span class="o">=</span> <span class="s">&#39;immediate failure&#39;</span>
-<span class="n">TRIGGERED_FAILURE</span> <span class="o">=</span> <span class="s">&#39;triggered failure&#39;</span>
-<span class="n">WAIT_ON_CONDITION</span> <span class="o">=</span> <span class="s">&#39;wait on condition&#39;</span>
-
-<span class="n">EMPTY_OUTCOME_DICT</span> <span class="o">=</span> <span class="p">{</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">RECEPTION_FAILURE</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">TRANSMISSION_FAILURE</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">SERVICER_FAILURE</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">SERVICED_FAILURE</span><span class="p">:</span> <span class="mi">0</span><span class="p">,</span>
-    <span class="p">}</span>
-
-
-<span class="k">def</span> <span class="nf">_synchronous_echo</span><span class="p">(</span><span class="n">output_consumer</span><span class="p">):</span>
-  <span class="k">return</span> <span class="n">stream_util</span><span class="o">.</span><span class="n">TransformingConsumer</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">x</span><span class="p">,</span> <span class="n">output_consumer</span><span class="p">)</span>
-
-
-<div class="viewcode-block" id="AsynchronousEcho"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.AsynchronousEcho">[docs]</a><span class="k">class</span> <span class="nc">AsynchronousEcho</span><span class="p">(</span><span class="n">stream</span><span class="o">.</span><span class="n">Consumer</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A stream.Consumer that echoes its input to another stream.Consumer.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">output_consumer</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Lock</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_output_consumer</span> <span class="o">=</span> <span class="n">output_consumer</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">_queue</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span> <span class="o">=</span> <span class="bp">False</span>
-
-  <span class="k">def</span> <span class="nf">_spin</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="n">complete</span><span class="p">):</span>
-    <span class="k">while</span> <span class="bp">True</span><span class="p">:</span>
-      <span class="k">if</span> <span class="n">value</span><span class="p">:</span>
-        <span class="k">if</span> <span class="n">complete</span><span class="p">:</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_output_consumer</span><span class="o">.</span><span class="n">consume_and_terminate</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
-        <span class="k">else</span><span class="p">:</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_output_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
-      <span class="k">elif</span> <span class="n">complete</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_output_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-      <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_queue</span><span class="p">:</span>
-          <span class="n">value</span><span class="p">,</span> <span class="n">complete</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_queue</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
-        <span class="k">else</span><span class="p">:</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span> <span class="o">=</span> <span class="bp">False</span>
-          <span class="k">return</span>
-
-<div class="viewcode-block" id="AsynchronousEcho.consume"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.AsynchronousEcho.consume">[docs]</a>  <span class="k">def</span> <span class="nf">consume</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_queue</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">value</span><span class="p">,</span> <span class="bp">False</span><span class="p">))</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span> <span class="o">=</span> <span class="bp">True</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="o">.</span><span class="n">submit</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_spin</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="bp">False</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="AsynchronousEcho.terminate"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.AsynchronousEcho.terminate">[docs]</a>  <span class="k">def</span> <span class="nf">terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_queue</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="bp">None</span><span class="p">,</span> <span class="bp">True</span><span class="p">))</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span> <span class="o">=</span> <span class="bp">True</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="o">.</span><span class="n">submit</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_spin</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">True</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="AsynchronousEcho.consume_and_terminate"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.AsynchronousEcho.consume_and_terminate">[docs]</a>  <span class="k">def</span> <span class="nf">consume_and_terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_queue</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">value</span><span class="p">,</span> <span class="bp">True</span><span class="p">))</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_spinning</span> <span class="o">=</span> <span class="bp">True</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="o">.</span><span class="n">submit</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_spin</span><span class="p">,</span> <span class="n">value</span><span class="p">,</span> <span class="bp">True</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="TestServicer"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.TestServicer">[docs]</a><span class="k">class</span> <span class="nc">TestServicer</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Servicer</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;An interfaces.Servicer with instrumented for testing.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_released</span> <span class="o">=</span> <span class="bp">False</span>
-
-<div class="viewcode-block" id="TestServicer.service"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.TestServicer.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">output_consumer</span><span class="p">):</span>
-    <span class="k">if</span> <span class="n">name</span> <span class="o">==</span> <span class="n">SYNCHRONOUS_ECHO</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">_synchronous_echo</span><span class="p">(</span><span class="n">output_consumer</span><span class="p">)</span>
-    <span class="k">elif</span> <span class="n">name</span> <span class="o">==</span> <span class="n">ASYNCHRONOUS_ECHO</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">AsynchronousEcho</span><span class="p">(</span><span class="n">output_consumer</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
-    <span class="k">elif</span> <span class="n">name</span> <span class="o">==</span> <span class="n">IMMEDIATE_FAILURE</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">()</span>
-    <span class="k">elif</span> <span class="n">name</span> <span class="o">==</span> <span class="n">TRIGGERED_FAILURE</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="ne">NotImplementedError</span>
-    <span class="k">elif</span> <span class="n">name</span> <span class="o">==</span> <span class="n">WAIT_ON_CONDITION</span><span class="p">:</span>
-      <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">condition</span><span class="p">:</span>
-        <span class="k">while</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_released</span><span class="p">:</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-      <span class="k">return</span> <span class="n">_synchronous_echo</span><span class="p">(</span><span class="n">output_consumer</span><span class="p">)</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="TestServicer.release"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.TestServicer.release">[docs]</a>  <span class="k">def</span> <span class="nf">release</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_released</span> <span class="o">=</span> <span class="bp">True</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="EasyServicedIngestor"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.EasyServicedIngestor">[docs]</a><span class="k">class</span> <span class="nc">EasyServicedIngestor</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">ServicedIngestor</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A trivial implementation of interfaces.ServicedIngestor.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">consumer</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_consumer</span> <span class="o">=</span> <span class="n">consumer</span>
-
-<div class="viewcode-block" id="EasyServicedIngestor.consumer"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.EasyServicedIngestor.consumer">[docs]</a>  <span class="k">def</span> <span class="nf">consumer</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">operation_context</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See interfaces.ServicedIngestor.consumer for specification.&quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_consumer</span>
-
-</div></div>
-<div class="viewcode-block" id="FrontAndBackTest"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.FrontAndBackTest">[docs]</a><span class="k">class</span> <span class="nc">FrontAndBackTest</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A test suite usable against any joined Front and Back.&quot;&quot;&quot;</span>
-
-  <span class="c"># Pylint doesn&#39;t know that this is a unittest.TestCase mix-in.</span>
-  <span class="c"># pylint: disable=invalid-name</span>
-
-<div class="viewcode-block" id="FrontAndBackTest.testSimplestCall"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testSimplestCall">[docs]</a>  <span class="k">def</span> <span class="nf">testSimplestCall</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Tests the absolute simplest call - a one-ticket fire-and-forget.&quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operate</span><span class="p">(</span>
-        <span class="n">SYNCHRONOUS_ECHO</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">True</span><span class="p">,</span> <span class="n">SMALL_TIMEOUT</span><span class="p">,</span>
-        <span class="n">util</span><span class="o">.</span><span class="n">none_serviced_subscription</span><span class="p">(),</span> <span class="s">&#39;test trace ID&#39;</span><span class="p">)</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">])</span>
-
-    <span class="c"># Assuming nothing really pathological (such as pauses on the order of</span>
-    <span class="c"># SMALL_TIMEOUT interfering with this test) there are a two different ways</span>
-    <span class="c"># the back could have experienced execution up to this point:</span>
-    <span class="c"># (1) The ticket is still either in the front waiting to be transmitted</span>
-    <span class="c"># or is somewhere on the link between the front and the back. The back has</span>
-    <span class="c"># no idea that this test is even happening. Calling wait_for_idle on it</span>
-    <span class="c"># would do no good because in this case the back is idle and the call would</span>
-    <span class="c"># return with the ticket bound for it still in the front or on the link.</span>
-    <span class="n">back_operation_stats</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()</span>
-    <span class="n">first_back_possibility</span> <span class="o">=</span> <span class="n">EMPTY_OUTCOME_DICT</span>
-    <span class="c"># (2) The ticket arrived at the back and the back completed the operation.</span>
-    <span class="n">second_back_possibility</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">EMPTY_OUTCOME_DICT</span><span class="p">)</span>
-    <span class="n">second_back_possibility</span><span class="p">[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">]</span> <span class="o">=</span> <span class="mi">1</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertIn</span><span class="p">(</span>
-        <span class="n">back_operation_stats</span><span class="p">,</span> <span class="p">(</span><span class="n">first_back_possibility</span><span class="p">,</span> <span class="n">second_back_possibility</span><span class="p">))</span>
-    <span class="c"># It&#39;s true that if the ticket had arrived at the back and the back had</span>
-    <span class="c"># begun processing that wait_for_idle could hold test execution until the</span>
-    <span class="c"># back completed the operation, but that doesn&#39;t really collapse the</span>
-    <span class="c"># possibility space down to one solution.</span>
-</div>
-<div class="viewcode-block" id="FrontAndBackTest.testEntireEcho"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testEntireEcho">[docs]</a>  <span class="k">def</span> <span class="nf">testEntireEcho</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Tests a very simple one-ticket-each-way round-trip.&quot;&quot;&quot;</span>
-    <span class="n">test_payload</span> <span class="o">=</span> <span class="s">&#39;test payload&#39;</span>
-    <span class="n">test_consumer</span> <span class="o">=</span> <span class="n">stream_testing</span><span class="o">.</span><span class="n">TestConsumer</span><span class="p">()</span>
-    <span class="n">subscription</span> <span class="o">=</span> <span class="n">util</span><span class="o">.</span><span class="n">full_serviced_subscription</span><span class="p">(</span>
-        <span class="n">EasyServicedIngestor</span><span class="p">(</span><span class="n">test_consumer</span><span class="p">))</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operate</span><span class="p">(</span>
-        <span class="n">ASYNCHRONOUS_ECHO</span><span class="p">,</span> <span class="n">test_payload</span><span class="p">,</span> <span class="bp">True</span><span class="p">,</span> <span class="n">SMALL_TIMEOUT</span><span class="p">,</span> <span class="n">subscription</span><span class="p">,</span>
-        <span class="s">&#39;test trace ID&#39;</span><span class="p">)</span>
-
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">])</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">])</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertListEqual</span><span class="p">([(</span><span class="n">test_payload</span><span class="p">,</span> <span class="bp">True</span><span class="p">)],</span> <span class="n">test_consumer</span><span class="o">.</span><span class="n">calls</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FrontAndBackTest.testBidirectionalStreamingEcho"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testBidirectionalStreamingEcho">[docs]</a>  <span class="k">def</span> <span class="nf">testBidirectionalStreamingEcho</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Tests sending multiple tickets each way.&quot;&quot;&quot;</span>
-    <span class="n">test_payload_template</span> <span class="o">=</span> <span class="s">&#39;test_payload: </span><span class="si">%03d</span><span class="s">&#39;</span>
-    <span class="n">test_payloads</span> <span class="o">=</span> <span class="p">[</span><span class="n">test_payload_template</span> <span class="o">%</span> <span class="n">i</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">STREAM_LENGTH</span><span class="p">)]</span>
-    <span class="n">test_consumer</span> <span class="o">=</span> <span class="n">stream_testing</span><span class="o">.</span><span class="n">TestConsumer</span><span class="p">()</span>
-    <span class="n">subscription</span> <span class="o">=</span> <span class="n">util</span><span class="o">.</span><span class="n">full_serviced_subscription</span><span class="p">(</span>
-        <span class="n">EasyServicedIngestor</span><span class="p">(</span><span class="n">test_consumer</span><span class="p">))</span>
-
-    <span class="n">operation</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operate</span><span class="p">(</span>
-        <span class="n">SYNCHRONOUS_ECHO</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">False</span><span class="p">,</span> <span class="n">SMALL_TIMEOUT</span><span class="p">,</span> <span class="n">subscription</span><span class="p">,</span>
-        <span class="s">&#39;test trace ID&#39;</span><span class="p">)</span>
-
-    <span class="k">for</span> <span class="n">test_payload</span> <span class="ow">in</span> <span class="n">test_payloads</span><span class="p">:</span>
-      <span class="n">operation</span><span class="o">.</span><span class="n">consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">test_payload</span><span class="p">)</span>
-    <span class="n">operation</span><span class="o">.</span><span class="n">consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">])</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">COMPLETED</span><span class="p">])</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertListEqual</span><span class="p">(</span><span class="n">test_payloads</span><span class="p">,</span> <span class="n">test_consumer</span><span class="o">.</span><span class="n">values</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="FrontAndBackTest.testCancellation"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testCancellation">[docs]</a>  <span class="k">def</span> <span class="nf">testCancellation</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Tests cancelling a long-lived operation.&quot;&quot;&quot;</span>
-    <span class="n">test_consumer</span> <span class="o">=</span> <span class="n">stream_testing</span><span class="o">.</span><span class="n">TestConsumer</span><span class="p">()</span>
-    <span class="n">subscription</span> <span class="o">=</span> <span class="n">util</span><span class="o">.</span><span class="n">full_serviced_subscription</span><span class="p">(</span>
-        <span class="n">EasyServicedIngestor</span><span class="p">(</span><span class="n">test_consumer</span><span class="p">))</span>
-
-    <span class="n">operation</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operate</span><span class="p">(</span>
-        <span class="n">ASYNCHRONOUS_ECHO</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">False</span><span class="p">,</span> <span class="n">SMALL_TIMEOUT</span><span class="p">,</span> <span class="n">subscription</span><span class="p">,</span>
-        <span class="s">&#39;test trace ID&#39;</span><span class="p">)</span>
-    <span class="n">operation</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">])</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertListEqual</span><span class="p">([],</span> <span class="n">test_consumer</span><span class="o">.</span><span class="n">calls</span><span class="p">)</span>
-
-    <span class="c"># Assuming nothing really pathological (such as pauses on the order of</span>
-    <span class="c"># SMALL_TIMEOUT interfering with this test) there are a two different ways</span>
-    <span class="c"># the back could have experienced execution up to this point:</span>
-    <span class="c"># (1) Both tickets are still either in the front waiting to be transmitted</span>
-    <span class="c"># or are somewhere on the link between the front and the back. The back has</span>
-    <span class="c"># no idea that this test is even happening. Calling wait_for_idle on it</span>
-    <span class="c"># would do no good because in this case the back is idle and the call would</span>
-    <span class="c"># return with the tickets bound for it still in the front or on the link.</span>
-    <span class="n">back_operation_stats</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()</span>
-    <span class="n">first_back_possibility</span> <span class="o">=</span> <span class="n">EMPTY_OUTCOME_DICT</span>
-    <span class="c"># (2) Both tickets arrived within SMALL_TIMEOUT of one another at the back.</span>
-    <span class="c"># The back started processing based on the first ticket and then stopped</span>
-    <span class="c"># upon receiving the cancellation ticket.</span>
-    <span class="n">second_back_possibility</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">EMPTY_OUTCOME_DICT</span><span class="p">)</span>
-    <span class="n">second_back_possibility</span><span class="p">[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">]</span> <span class="o">=</span> <span class="mi">1</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertIn</span><span class="p">(</span>
-        <span class="n">back_operation_stats</span><span class="p">,</span> <span class="p">(</span><span class="n">first_back_possibility</span><span class="p">,</span> <span class="n">second_back_possibility</span><span class="p">))</span>
-</div>
-<div class="viewcode-block" id="FrontAndBackTest.testExpiration"><a class="viewcode-back" href="../../../../grpc.framework.base.html#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testExpiration">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiration</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Tests that operations time out.&quot;&quot;&quot;</span>
-    <span class="n">timeout</span> <span class="o">=</span> <span class="n">TICK</span> <span class="o">*</span> <span class="mi">2</span>
-    <span class="n">allowance</span> <span class="o">=</span> <span class="n">TICK</span>  <span class="c"># How much extra time to</span>
-    <span class="n">condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="n">test_payload</span> <span class="o">=</span> <span class="s">&#39;test payload&#39;</span>
-    <span class="n">subscription</span> <span class="o">=</span> <span class="n">util</span><span class="o">.</span><span class="n">termination_only_serviced_subscription</span><span class="p">()</span>
-    <span class="n">start_time</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
-
-    <span class="n">outcome_cell</span> <span class="o">=</span> <span class="p">[</span><span class="bp">None</span><span class="p">]</span>
-    <span class="n">termination_time_cell</span> <span class="o">=</span> <span class="p">[</span><span class="bp">None</span><span class="p">]</span>
-    <span class="k">def</span> <span class="nf">termination_action</span><span class="p">(</span><span class="n">outcome</span><span class="p">):</span>
-      <span class="k">with</span> <span class="n">condition</span><span class="p">:</span>
-        <span class="n">outcome_cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">outcome</span>
-        <span class="n">termination_time_cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">time</span><span class="p">()</span>
-        <span class="n">condition</span><span class="o">.</span><span class="n">notify</span><span class="p">()</span>
-
-    <span class="k">with</span> <span class="n">condition</span><span class="p">:</span>
-      <span class="n">operation</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operate</span><span class="p">(</span>
-          <span class="n">SYNCHRONOUS_ECHO</span><span class="p">,</span> <span class="n">test_payload</span><span class="p">,</span> <span class="bp">False</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">subscription</span><span class="p">,</span>
-          <span class="s">&#39;test trace ID&#39;</span><span class="p">)</span>
-      <span class="n">operation</span><span class="o">.</span><span class="n">context</span><span class="o">.</span><span class="n">add_termination_callback</span><span class="p">(</span><span class="n">termination_action</span><span class="p">)</span>
-      <span class="k">while</span> <span class="n">outcome_cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="n">condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-
-    <span class="n">duration</span> <span class="o">=</span> <span class="n">termination_time_cell</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">-</span> <span class="n">start_time</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span><span class="n">timeout</span><span class="p">,</span> <span class="n">duration</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertLess</span><span class="p">(</span><span class="n">duration</span><span class="p">,</span> <span class="n">timeout</span> <span class="o">+</span> <span class="n">allowance</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">,</span> <span class="n">outcome_cell</span><span class="p">[</span><span class="mi">0</span><span class="p">])</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">])</span>
-    <span class="n">util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertLessEqual</span><span class="p">(</span>
-        <span class="mi">1</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="o">.</span><span class="n">operation_stats</span><span class="p">()[</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Outcome</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">])</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/base/util.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.base.util &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.base.util &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -253,7 +260,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/common/cardinality.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.common.cardinality &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.common.cardinality &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -201,7 +208,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/common/style.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.common.style &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.common.style &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -199,7 +206,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 276
python/_modules/grpc/framework/common/test_control.html

@@ -1,276 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.common.test_control &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.common.test_control</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.common.test_control</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Code for instructing systems under test to block or fail.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-<span class="kn">import</span> <span class="nn">contextlib</span>
-<span class="kn">import</span> <span class="nn">threading</span>
-
-
-<div class="viewcode-block" id="Control"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_control.Control">[docs]</a><span class="k">class</span> <span class="nc">Control</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;An object that accepts program control from a system under test.</span>
-
-<span class="sd">  Systems under test passed a Control should call its control() method</span>
-<span class="sd">  frequently during execution. The control() method may block, raise an</span>
-<span class="sd">  exception, or do nothing, all according to the enclosing test&#39;s desire for</span>
-<span class="sd">  the system under test to simulate hanging, failing, or functioning.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Control.control"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_control.Control.control">[docs]</a>  <span class="k">def</span> <span class="nf">control</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Potentially does anything.&quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="PauseFailControl"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_control.PauseFailControl">[docs]</a><span class="k">class</span> <span class="nc">PauseFailControl</span><span class="p">(</span><span class="n">Control</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A Control that can be used to pause or fail code under control.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">False</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span> <span class="o">=</span> <span class="bp">False</span>
-
-<div class="viewcode-block" id="PauseFailControl.control"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_control.PauseFailControl.control">[docs]</a>  <span class="k">def</span> <span class="nf">control</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">()</span>
-
-      <span class="k">while</span> <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-</div>
-  <span class="nd">@contextlib.contextmanager</span>
-<div class="viewcode-block" id="PauseFailControl.pause"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_control.PauseFailControl.pause">[docs]</a>  <span class="k">def</span> <span class="nf">pause</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Pauses code under control while controlling code is in context.&quot;&quot;&quot;</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">True</span>
-    <span class="k">yield</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">False</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-  <span class="nd">@contextlib.contextmanager</span>
-<div class="viewcode-block" id="PauseFailControl.fail"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_control.PauseFailControl.fail">[docs]</a>  <span class="k">def</span> <span class="nf">fail</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Fails code under control while controlling code is in context.&quot;&quot;&quot;</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span> <span class="o">=</span> <span class="bp">True</span>
-    <span class="k">yield</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span> <span class="o">=</span> <span class="bp">False</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 305
python/_modules/grpc/framework/common/test_coverage.html

@@ -1,305 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.common.test_coverage &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.common.test_coverage</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.common.test_coverage</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Governs coverage for tests of RPCs throughout RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-
-<span class="c"># This code is designed for use with the unittest module.</span>
-<span class="c"># pylint: disable=invalid-name</span>
-
-
-<div class="viewcode-block" id="Coverage"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage">[docs]</a><span class="k">class</span> <span class="nc">Coverage</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Specification of test coverage.&quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testSuccessfulUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testSuccessfulUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testSuccessfulUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testSuccessfulUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testSuccessfulStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testSuccessfulStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testSuccessfulStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testSuccessfulStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testSequentialInvocations"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testSequentialInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testSequentialInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testParallelInvocations"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testWaitingForSomeButNotAllParallelInvocations"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testWaitingForSomeButNotAllParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testWaitingForSomeButNotAllParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testCancelledUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testCancelledUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testCancelledUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testCancelledUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testCancelledStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testCancelledStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testCancelledStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testCancelledStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testExpiredUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testExpiredUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testExpiredUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testExpiredUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testExpiredStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testExpiredStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testExpiredStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testExpiredStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testFailedUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testFailedUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testFailedUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testFailedUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testFailedStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testFailedStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Coverage.testFailedStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../grpc.framework.common.html#grpc.framework.common.test_coverage.Coverage.testFailedStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 40 - 17
python/_modules/grpc/framework/face/event_invocation_synchronous_event_service_test.html → python/_modules/grpc/framework/core/implementations.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.event_invocation_synchronous_event_service_test &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.core.implementations &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -116,7 +123,7 @@
       
       
           <li><a href="../../../index.html">Module code</a> &raquo;</li>
           <li><a href="../../../index.html">Module code</a> &raquo;</li>
       
       
-    <li>grpc.framework.face.event_invocation_synchronous_event_service_test</li>
+    <li>grpc.framework.core.implementations</li>
       <li class="wy-breadcrumbs-aside">
       <li class="wy-breadcrumbs-aside">
         
         
           
           
@@ -127,7 +134,7 @@
 </div>
 </div>
           <div role="main" class="document">
           <div role="main" class="document">
             
             
-  <h1>Source code for grpc.framework.face.event_invocation_synchronous_event_service_test</h1><div class="highlight"><pre>
+  <h1>Source code for grpc.framework.core.implementations</h1><div class="highlight"><pre>
 <span class="c"># Copyright 2015, Google Inc.</span>
 <span class="c"># Copyright 2015, Google Inc.</span>
 <span class="c"># All rights reserved.</span>
 <span class="c"># All rights reserved.</span>
 <span class="c">#</span>
 <span class="c">#</span>
@@ -157,23 +164,39 @@
 <span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
 <span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
 <span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
 <span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
 
 
-<span class="sd">&quot;&quot;&quot;One of the tests of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
+<span class="sd">&quot;&quot;&quot;Entry points into the ticket-exchange-based base layer implementation.&quot;&quot;&quot;</span>
 
 
-<span class="kn">import</span> <span class="nn">unittest</span>
+<span class="c"># base and links are referenced from specification in this module.</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.core</span> <span class="kn">import</span> <span class="n">_end</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.base</span> <span class="kn">import</span> <span class="n">base</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.links</span> <span class="kn">import</span> <span class="n">links</span>  <span class="c"># pylint: disable=unused-import</span>
 
 
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">_test_case</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">event_invocation_synchronous_event_service_test_case</span> <span class="k">as</span> <span class="n">test_case</span>
 
 
+<div class="viewcode-block" id="invocation_end_link"><a class="viewcode-back" href="../../../../grpc.framework.core.html#grpc.framework.core.implementations.invocation_end_link">[docs]</a><span class="k">def</span> <span class="nf">invocation_end_link</span><span class="p">():</span>
+  <span class="sd">&quot;&quot;&quot;Creates a base.End-links.Link suitable for operation invocation.</span>
 
 
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTest"><a class="viewcode-back" href="../../../../grpc.framework.face.html#grpc.framework.face.event_invocation_synchronous_event_service_test.EventInvocationSynchronousEventServiceTest">[docs]</a><span class="k">class</span> <span class="nc">EventInvocationSynchronousEventServiceTest</span><span class="p">(</span>
-    <span class="n">_test_case</span><span class="o">.</span><span class="n">FaceTestCase</span><span class="p">,</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">EventInvocationSynchronousEventServiceTestCase</span><span class="p">,</span>
-    <span class="n">unittest</span><span class="o">.</span><span class="n">TestCase</span><span class="p">):</span>
-  <span class="k">pass</span>
+<span class="sd">  Returns:</span>
+<span class="sd">    An object that is both a base.End and a links.Link, that supports operation</span>
+<span class="sd">      invocation, and that translates operation invocation into ticket exchange.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_end</span><span class="o">.</span><span class="n">serviceless_end_link</span><span class="p">()</span>
 
 
 </div>
 </div>
-<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&#39;__main__&#39;</span><span class="p">:</span>
-  <span class="n">unittest</span><span class="o">.</span><span class="n">main</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
+<div class="viewcode-block" id="service_end_link"><a class="viewcode-back" href="../../../../grpc.framework.core.html#grpc.framework.core.implementations.service_end_link">[docs]</a><span class="k">def</span> <span class="nf">service_end_link</span><span class="p">(</span><span class="n">servicer</span><span class="p">,</span> <span class="n">default_timeout</span><span class="p">,</span> <span class="n">maximum_timeout</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a base.End-links.Link suitable for operation service.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    servicer: A base.Servicer for servicing operations.</span>
+<span class="sd">    default_timeout: A length of time in seconds to be used as the default</span>
+<span class="sd">      time alloted for a single operation.</span>
+<span class="sd">    maximum_timeout: A length of time in seconds to be used as the maximum</span>
+<span class="sd">      time alloted for a single operation.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An object that is both a base.End and a links.Link and that services</span>
+<span class="sd">      operations that arrive at it through ticket exchange.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_end</span><span class="o">.</span><span class="n">serviceful_end_link</span><span class="p">(</span><span class="n">servicer</span><span class="p">,</span> <span class="n">default_timeout</span><span class="p">,</span> <span class="n">maximum_timeout</span><span class="p">)</span></div>
 </pre></div>
 </pre></div>
 
 
           </div>
           </div>
@@ -205,7 +228,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 560 - 0
python/_modules/grpc/framework/crust/implementations.html

@@ -0,0 +1,560 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.framework.crust.implementations &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
+        <link rel="up" title="Module code" href="../../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.framework.crust.implementations</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.framework.crust.implementations</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;Entry points into the Crust layer of RPC Framework.&quot;&quot;&quot;</span>
+
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">style</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.crust</span> <span class="kn">import</span> <span class="n">_calls</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.crust</span> <span class="kn">import</span> <span class="n">_service</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.base</span> <span class="kn">import</span> <span class="n">base</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.face</span> <span class="kn">import</span> <span class="n">face</span>
+
+
+<span class="k">class</span> <span class="nc">_BaseServicer</span><span class="p">(</span><span class="n">base</span><span class="o">.</span><span class="n">Servicer</span><span class="p">):</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">adapted_methods</span><span class="p">,</span> <span class="n">adapted_multi_method</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_adapted_methods</span> <span class="o">=</span> <span class="n">adapted_methods</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_adapted_multi_method</span> <span class="o">=</span> <span class="n">adapted_multi_method</span>
+
+  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">output_operator</span><span class="p">):</span>
+    <span class="n">adapted_method</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_adapted_methods</span><span class="o">.</span><span class="n">get</span><span class="p">((</span><span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">),</span> <span class="bp">None</span><span class="p">)</span>
+    <span class="k">if</span> <span class="n">adapted_method</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
+      <span class="k">return</span> <span class="n">adapted_method</span><span class="p">(</span><span class="n">output_operator</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
+    <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_adapted_multi_method</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
+      <span class="k">try</span><span class="p">:</span>
+        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_adapted_multi_method</span><span class="p">(</span>
+            <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">output_operator</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
+      <span class="k">except</span> <span class="n">face</span><span class="o">.</span><span class="n">NoSuchMethodError</span><span class="p">:</span>
+        <span class="k">raise</span> <span class="n">base</span><span class="o">.</span><span class="n">NoSuchMethodError</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+    <span class="k">else</span><span class="p">:</span>
+      <span class="k">raise</span> <span class="n">base</span><span class="o">.</span><span class="n">NoSuchMethodError</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_UnaryUnaryMultiCallable</span><span class="p">(</span><span class="n">face</span><span class="o">.</span><span class="n">UnaryUnaryMultiCallable</span><span class="p">):</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_end</span> <span class="o">=</span> <span class="n">end</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_group</span> <span class="o">=</span> <span class="n">group</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">method</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
+
+  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">with_call</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">blocking_unary_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">with_call</span><span class="p">,</span>
+        <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">future</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">future_unary_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_unary_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_UnaryStreamMultiCallable</span><span class="p">(</span><span class="n">face</span><span class="o">.</span><span class="n">UnaryStreamMultiCallable</span><span class="p">):</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_end</span> <span class="o">=</span> <span class="n">end</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_group</span> <span class="o">=</span> <span class="n">group</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">method</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
+
+  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">inline_unary_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_unary_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_StreamUnaryMultiCallable</span><span class="p">(</span><span class="n">face</span><span class="o">.</span><span class="n">StreamUnaryMultiCallable</span><span class="p">):</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_end</span> <span class="o">=</span> <span class="n">end</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_group</span> <span class="o">=</span> <span class="n">group</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">method</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
+
+  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">with_call</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">blocking_stream_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">with_call</span><span class="p">,</span>
+        <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">future</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">future_stream_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_stream_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_StreamStreamMultiCallable</span><span class="p">(</span><span class="n">face</span><span class="o">.</span><span class="n">StreamStreamMultiCallable</span><span class="p">):</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_end</span> <span class="o">=</span> <span class="n">end</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_group</span> <span class="o">=</span> <span class="n">group</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">method</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
+
+  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">inline_stream_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_stream_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_GenericStub</span><span class="p">(</span><span class="n">face</span><span class="o">.</span><span class="n">GenericStub</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;An face.GenericStub implementation.&quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_end</span> <span class="o">=</span> <span class="n">end</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
+
+  <span class="k">def</span> <span class="nf">blocking_unary_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">with_call</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">blocking_unary_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">with_call</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">future_unary_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">future_unary_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">inline_unary_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">inline_unary_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">blocking_stream_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">with_call</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">blocking_stream_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">with_call</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span>
+        <span class="n">metadata</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">future_stream_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">future_stream_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span>
+        <span class="n">request_iterator</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">inline_stream_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">inline_stream_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span>
+        <span class="n">request_iterator</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event_unary_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_unary_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span>
+        <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event_unary_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_unary_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span>
+        <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event_stream_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_stream_unary</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span>
+        <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">event_stream_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_calls</span><span class="o">.</span><span class="n">event_stream_stream</span><span class="p">(</span>
+        <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">protocol_options</span><span class="p">,</span> <span class="n">metadata</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span>
+        <span class="n">abortion_callback</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">unary_unary</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_UnaryUnaryMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">unary_stream</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_UnaryStreamMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">stream_unary</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_StreamUnaryMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+  <span class="k">def</span> <span class="nf">stream_stream</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="k">return</span> <span class="n">_StreamStreamMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+
+
+<span class="k">class</span> <span class="nc">_DynamicStub</span><span class="p">(</span><span class="n">face</span><span class="o">.</span><span class="n">DynamicStub</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;An face.DynamicStub implementation.&quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">cardinalities</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_end</span> <span class="o">=</span> <span class="n">end</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_group</span> <span class="o">=</span> <span class="n">group</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_cardinalities</span> <span class="o">=</span> <span class="n">cardinalities</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
+
+  <span class="k">def</span> <span class="nf">__getattr__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">attr</span><span class="p">):</span>
+    <span class="n">method_cardinality</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_cardinalities</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">attr</span><span class="p">)</span>
+    <span class="k">if</span> <span class="n">method_cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span><span class="p">:</span>
+      <span class="k">return</span> <span class="n">_UnaryUnaryMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="n">attr</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+    <span class="k">elif</span> <span class="n">method_cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span><span class="p">:</span>
+      <span class="k">return</span> <span class="n">_UnaryStreamMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="n">attr</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+    <span class="k">elif</span> <span class="n">method_cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span><span class="p">:</span>
+      <span class="k">return</span> <span class="n">_StreamUnaryMultiCallable</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="n">attr</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+    <span class="k">elif</span> <span class="n">method_cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span><span class="p">:</span>
+      <span class="k">return</span> <span class="n">_StreamStreamMultiCallable</span><span class="p">(</span>
+          <span class="bp">self</span><span class="o">.</span><span class="n">_end</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_group</span><span class="p">,</span> <span class="n">attr</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
+    <span class="k">else</span><span class="p">:</span>
+      <span class="k">raise</span> <span class="ne">AttributeError</span><span class="p">(</span><span class="s">&#39;_DynamicStub object has no attribute &quot;</span><span class="si">%s</span><span class="s">&quot;!&#39;</span> <span class="o">%</span> <span class="n">attr</span><span class="p">)</span>
+
+
+<span class="k">def</span> <span class="nf">_adapt_method_implementations</span><span class="p">(</span><span class="n">method_implementations</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+  <span class="n">adapted_implementations</span> <span class="o">=</span> <span class="p">{}</span>
+  <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">method_implementation</span> <span class="ow">in</span> <span class="n">method_implementations</span><span class="o">.</span><span class="n">iteritems</span><span class="p">():</span>
+    <span class="k">if</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">style</span> <span class="ow">is</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span><span class="p">:</span>
+      <span class="k">if</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_inline_unary_unary</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">unary_unary_inline</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+      <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_inline_unary_stream</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">unary_stream_inline</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+      <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_inline_stream_unary</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">stream_unary_inline</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+      <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_inline_stream_stream</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">stream_stream_inline</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+    <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">style</span> <span class="ow">is</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span><span class="p">:</span>
+      <span class="k">if</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_event_unary_unary</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">unary_unary_event</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+      <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_event_unary_stream</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">unary_stream_event</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+      <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_event_stream_unary</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">stream_unary_event</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+      <span class="k">elif</span> <span class="n">method_implementation</span><span class="o">.</span><span class="n">cardinality</span> <span class="ow">is</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span><span class="p">:</span>
+        <span class="n">adapted_implementations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_event_stream_stream</span><span class="p">(</span>
+            <span class="n">method_implementation</span><span class="o">.</span><span class="n">stream_stream_event</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+  <span class="k">return</span> <span class="n">adapted_implementations</span>
+
+
+<div class="viewcode-block" id="servicer"><a class="viewcode-back" href="../../../../grpc.framework.crust.html#grpc.framework.crust.implementations.servicer">[docs]</a><span class="k">def</span> <span class="nf">servicer</span><span class="p">(</span><span class="n">method_implementations</span><span class="p">,</span> <span class="n">multi_method_implementation</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a base.Servicer.</span>
+
+<span class="sd">  It is guaranteed that any passed face.MultiMethodImplementation will</span>
+<span class="sd">  only be called to service an RPC if there is no</span>
+<span class="sd">  face.MethodImplementation for the RPC method in the passed</span>
+<span class="sd">  method_implementations dictionary.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    method_implementations: A dictionary from RPC method name to</span>
+<span class="sd">      face.MethodImplementation object to be used to service the named</span>
+<span class="sd">      RPC method.</span>
+<span class="sd">    multi_method_implementation: An face.MultiMethodImplementation to be</span>
+<span class="sd">      used to service any RPCs not serviced by the</span>
+<span class="sd">      face.MethodImplementations given in the method_implementations</span>
+<span class="sd">      dictionary, or None.</span>
+<span class="sd">    pool: A thread pool.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A base.Servicer that services RPCs via the given implementations.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">adapted_implementations</span> <span class="o">=</span> <span class="n">_adapt_method_implementations</span><span class="p">(</span>
+      <span class="n">method_implementations</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+  <span class="k">if</span> <span class="n">multi_method_implementation</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
+    <span class="n">adapted_multi_method_implementation</span> <span class="o">=</span> <span class="bp">None</span>
+  <span class="k">else</span><span class="p">:</span>
+    <span class="n">adapted_multi_method_implementation</span> <span class="o">=</span> <span class="n">_service</span><span class="o">.</span><span class="n">adapt_multi_method</span><span class="p">(</span>
+        <span class="n">multi_method_implementation</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+  <span class="k">return</span> <span class="n">_BaseServicer</span><span class="p">(</span>
+      <span class="n">adapted_implementations</span><span class="p">,</span> <span class="n">adapted_multi_method_implementation</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="generic_stub"><a class="viewcode-back" href="../../../../grpc.framework.crust.html#grpc.framework.crust.implementations.generic_stub">[docs]</a><span class="k">def</span> <span class="nf">generic_stub</span><span class="p">(</span><span class="n">end</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.GenericStub.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    end: A base.End.</span>
+<span class="sd">    pool: A futures.ThreadPoolExecutor.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A face.GenericStub that performs RPCs via the given base.End.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_GenericStub</span><span class="p">(</span><span class="n">end</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="dynamic_stub"><a class="viewcode-back" href="../../../../grpc.framework.crust.html#grpc.framework.crust.implementations.dynamic_stub">[docs]</a><span class="k">def</span> <span class="nf">dynamic_stub</span><span class="p">(</span><span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">cardinalities</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.DynamicStub.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    end: A base.End.</span>
+<span class="sd">    group: The group identifier for all RPCs to be made with the created</span>
+<span class="sd">      face.DynamicStub.</span>
+<span class="sd">    cardinalities: A dict from method identifier to cardinality.Cardinality</span>
+<span class="sd">      value identifying the cardinality of every RPC method to be supported by</span>
+<span class="sd">      the created face.DynamicStub.</span>
+<span class="sd">    pool: A futures.ThreadPoolExecutor.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A face.DynamicStub that performs RPCs via the given base.End.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_DynamicStub</span><span class="p">(</span><span class="n">end</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">cardinalities</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span></div>
+</pre></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 0 - 235
python/_modules/grpc/framework/face/blocking_invocation_inline_service_test.html

@@ -1,235 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.blocking_invocation_inline_service_test &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.blocking_invocation_inline_service_test</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.blocking_invocation_inline_service_test</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;One of the tests of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">unittest</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">_test_case</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">blocking_invocation_inline_service_test_case</span> <span class="k">as</span> <span class="n">test_case</span>
-
-
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTest"><a class="viewcode-back" href="../../../../grpc.framework.face.html#grpc.framework.face.blocking_invocation_inline_service_test.BlockingInvocationInlineServiceTest">[docs]</a><span class="k">class</span> <span class="nc">BlockingInvocationInlineServiceTest</span><span class="p">(</span>
-    <span class="n">_test_case</span><span class="o">.</span><span class="n">FaceTestCase</span><span class="p">,</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">BlockingInvocationInlineServiceTestCase</span><span class="p">,</span>
-    <span class="n">unittest</span><span class="o">.</span><span class="n">TestCase</span><span class="p">):</span>
-  <span class="k">pass</span>
-
-</div>
-<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&#39;__main__&#39;</span><span class="p">:</span>
-  <span class="n">unittest</span><span class="o">.</span><span class="n">main</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/face/demonstration.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.demonstration &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.face.demonstration &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -277,7 +284,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/face/exceptions.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.exceptions &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.face.exceptions &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -236,7 +243,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 235
python/_modules/grpc/framework/face/future_invocation_asynchronous_event_service_test.html

@@ -1,235 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.future_invocation_asynchronous_event_service_test &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.future_invocation_asynchronous_event_service_test</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.future_invocation_asynchronous_event_service_test</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;One of the tests of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">unittest</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">_test_case</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">future_invocation_asynchronous_event_service_test_case</span> <span class="k">as</span> <span class="n">test_case</span>
-
-
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTest"><a class="viewcode-back" href="../../../../grpc.framework.face.html#grpc.framework.face.future_invocation_asynchronous_event_service_test.FutureInvocationAsynchronousEventServiceTest">[docs]</a><span class="k">class</span> <span class="nc">FutureInvocationAsynchronousEventServiceTest</span><span class="p">(</span>
-    <span class="n">_test_case</span><span class="o">.</span><span class="n">FaceTestCase</span><span class="p">,</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">FutureInvocationAsynchronousEventServiceTestCase</span><span class="p">,</span>
-    <span class="n">unittest</span><span class="o">.</span><span class="n">TestCase</span><span class="p">):</span>
-  <span class="k">pass</span>
-
-</div>
-<span class="k">if</span> <span class="n">__name__</span> <span class="o">==</span> <span class="s">&#39;__main__&#39;</span><span class="p">:</span>
-  <span class="n">unittest</span><span class="o">.</span><span class="n">main</span><span class="p">(</span><span class="n">verbosity</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/face/implementations.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.implementations &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.face.implementations &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -477,7 +484,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/face/interfaces.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.interfaces &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.face.interfaces &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -799,7 +806,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 291
python/_modules/grpc/framework/face/testing/base_util.html

@@ -1,291 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.base_util &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.base_util</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.base_util</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Utilities for creating Base-layer objects for use in Face-layer tests.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-
-<span class="c"># interfaces is referenced from specification in this module.</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">util</span> <span class="k">as</span> <span class="n">_base_util</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">implementations</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">in_memory</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.base</span> <span class="kn">import</span> <span class="n">interfaces</span>  <span class="c"># pylint: disable=unused-import</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">logging_pool</span>
-
-<span class="n">_POOL_SIZE_LIMIT</span> <span class="o">=</span> <span class="mi">5</span>
-
-<span class="n">_MAXIMUM_TIMEOUT</span> <span class="o">=</span> <span class="mi">90</span>
-
-
-<div class="viewcode-block" id="LinkedPair"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.base_util.LinkedPair">[docs]</a><span class="k">class</span> <span class="nc">LinkedPair</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A Front and Back that are linked to one another.</span>
-
-<span class="sd">  Attributes:</span>
-<span class="sd">    front: An interfaces.Front.</span>
-<span class="sd">    back: An interfaces.Back.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="LinkedPair.shut_down"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.base_util.LinkedPair.shut_down">[docs]</a>  <span class="k">def</span> <span class="nf">shut_down</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Shuts down this object and releases its resources.&quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<span class="k">class</span> <span class="nc">_LinkedPair</span><span class="p">(</span><span class="n">LinkedPair</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">front</span><span class="p">,</span> <span class="n">back</span><span class="p">,</span> <span class="n">pools</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">front</span> <span class="o">=</span> <span class="n">front</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">back</span> <span class="o">=</span> <span class="n">back</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pools</span> <span class="o">=</span> <span class="n">pools</span>
-
-  <span class="k">def</span> <span class="nf">shut_down</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">_base_util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">front</span><span class="p">)</span>
-    <span class="n">_base_util</span><span class="o">.</span><span class="n">wait_for_idle</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">back</span><span class="p">)</span>
-
-    <span class="k">for</span> <span class="n">pool</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pools</span><span class="p">:</span>
-      <span class="n">pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-
-
-<div class="viewcode-block" id="linked_pair"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.base_util.linked_pair">[docs]</a><span class="k">def</span> <span class="nf">linked_pair</span><span class="p">(</span><span class="n">servicer</span><span class="p">,</span> <span class="n">default_timeout</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Creates a Server and Stub linked together for use.&quot;&quot;&quot;</span>
-  <span class="n">link_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">front_work_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">front_transmission_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">front_utility_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">back_work_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">back_transmission_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">back_utility_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_POOL_SIZE_LIMIT</span><span class="p">)</span>
-  <span class="n">pools</span> <span class="o">=</span> <span class="p">(</span>
-      <span class="n">link_pool</span><span class="p">,</span>
-      <span class="n">front_work_pool</span><span class="p">,</span> <span class="n">front_transmission_pool</span><span class="p">,</span> <span class="n">front_utility_pool</span><span class="p">,</span>
-      <span class="n">back_work_pool</span><span class="p">,</span> <span class="n">back_transmission_pool</span><span class="p">,</span> <span class="n">back_utility_pool</span><span class="p">)</span>
-
-  <span class="n">link</span> <span class="o">=</span> <span class="n">in_memory</span><span class="o">.</span><span class="n">Link</span><span class="p">(</span><span class="n">link_pool</span><span class="p">)</span>
-  <span class="n">front</span> <span class="o">=</span> <span class="n">implementations</span><span class="o">.</span><span class="n">front_link</span><span class="p">(</span>
-      <span class="n">front_work_pool</span><span class="p">,</span> <span class="n">front_transmission_pool</span><span class="p">,</span> <span class="n">front_utility_pool</span><span class="p">)</span>
-  <span class="n">back</span> <span class="o">=</span> <span class="n">implementations</span><span class="o">.</span><span class="n">back_link</span><span class="p">(</span>
-      <span class="n">servicer</span><span class="p">,</span> <span class="n">back_work_pool</span><span class="p">,</span> <span class="n">back_transmission_pool</span><span class="p">,</span> <span class="n">back_utility_pool</span><span class="p">,</span>
-      <span class="n">default_timeout</span><span class="p">,</span> <span class="n">_MAXIMUM_TIMEOUT</span><span class="p">)</span>
-  <span class="n">front</span><span class="o">.</span><span class="n">join_rear_link</span><span class="p">(</span><span class="n">link</span><span class="p">)</span>
-  <span class="n">link</span><span class="o">.</span><span class="n">join_fore_link</span><span class="p">(</span><span class="n">front</span><span class="p">)</span>
-  <span class="n">back</span><span class="o">.</span><span class="n">join_fore_link</span><span class="p">(</span><span class="n">link</span><span class="p">)</span>
-  <span class="n">link</span><span class="o">.</span><span class="n">join_rear_link</span><span class="p">(</span><span class="n">back</span><span class="p">)</span>
-
-  <span class="k">return</span> <span class="n">_LinkedPair</span><span class="p">(</span><span class="n">front</span><span class="p">,</span> <span class="n">back</span><span class="p">,</span> <span class="n">pools</span><span class="p">)</span></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 411
python/_modules/grpc/framework/face/testing/blocking_invocation_inline_service_test_case.html

@@ -1,411 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.blocking_invocation_inline_service_test_case &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.blocking_invocation_inline_service_test_case</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.blocking_invocation_inline_service_test_case</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;A test to verify an implementation of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="c"># unittest is referenced from specification in this module.</span>
-<span class="kn">import</span> <span class="nn">abc</span>
-<span class="kn">import</span> <span class="nn">unittest</span>  <span class="c"># pylint: disable=unused-import</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">exceptions</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">control</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">coverage</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">digest</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">stock_service</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">test_case</span>
-
-<span class="n">_TIMEOUT</span> <span class="o">=</span> <span class="mi">3</span>
-<span class="n">_LONG_TIMEOUT</span> <span class="o">=</span> <span class="mi">45</span>
-
-
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase">[docs]</a><span class="k">class</span> <span class="nc">BlockingInvocationInlineServiceTestCase</span><span class="p">(</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">FaceTestCase</span><span class="p">,</span> <span class="n">coverage</span><span class="o">.</span><span class="n">BlockingCoverage</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A test of the Face layer of RPC Framework.</span>
-
-<span class="sd">  Concrete subclasses must also extend unittest.TestCase.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.setUp"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.setUp">[docs]</a>  <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See unittest.TestCase.setUp for full specification.</span>
-
-<span class="sd">    Overriding implementations must call this implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">control</span> <span class="o">=</span> <span class="n">control</span><span class="o">.</span><span class="n">PauseFailControl</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">digest</span> <span class="o">=</span> <span class="n">digest</span><span class="o">.</span><span class="n">digest</span><span class="p">(</span>
-        <span class="n">stock_service</span><span class="o">.</span><span class="n">STOCK_TEST_SERVICE</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">memo</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">set_up_implementation</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">methods</span><span class="p">,</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">inline_method_implementations</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.tearDown"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.tearDown">[docs]</a>  <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See unittest.TestCase.tearDown for full specification.</span>
-
-<span class="sd">    Overriding implementations must call this implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">tear_down_implementation</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">memo</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testSuccessfulUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testSuccessfulUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">blocking_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_LONG_TIMEOUT</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testSuccessfulUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testSuccessfulUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_LONG_TIMEOUT</span><span class="p">)</span>
-        <span class="n">responses</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testSuccessfulStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testSuccessfulStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="n">response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">blocking_stream_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_LONG_TIMEOUT</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testSuccessfulStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testSuccessfulStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_LONG_TIMEOUT</span><span class="p">)</span>
-        <span class="n">responses</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testSequentialInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testSequentialInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testSequentialInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">first_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">second_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">first_response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">blocking_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">first_request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">first_request</span><span class="p">,</span> <span class="n">first_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-
-        <span class="n">second_response</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">blocking_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">second_request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">second_request</span><span class="p">,</span> <span class="n">second_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testExpiredUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testExpiredUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span>
-            <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-          <span class="n">multi_callable</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">unary_unary_multi_callable</span><span class="p">(</span><span class="n">name</span><span class="p">)</span>
-          <span class="n">multi_callable</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testExpiredUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testExpiredUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span>
-            <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testExpiredStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testExpiredStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span>
-            <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-          <span class="n">multi_callable</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">stream_unary_multi_callable</span><span class="p">(</span><span class="n">name</span><span class="p">)</span>
-          <span class="n">multi_callable</span><span class="p">(</span><span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testExpiredStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testExpiredStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span>
-            <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testFailedUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testFailedUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ServicerError</span><span class="p">):</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">blocking_value_in_value_out</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testFailedUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testFailedUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ServicerError</span><span class="p">):</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testFailedStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testFailedStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ServicerError</span><span class="p">):</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">blocking_stream_in_value_out</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="BlockingInvocationInlineServiceTestCase.testFailedStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.blocking_invocation_inline_service_test_case.BlockingInvocationInlineServiceTestCase.testFailedStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ServicerError</span><span class="p">):</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 283
python/_modules/grpc/framework/face/testing/callback.html

@@ -1,283 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.callback &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.callback</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.callback</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;A utility useful in tests of asynchronous, event-driven interfaces.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">threading</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>
-
-
-<div class="viewcode-block" id="Callback"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback">[docs]</a><span class="k">class</span> <span class="nc">Callback</span><span class="p">(</span><span class="n">stream</span><span class="o">.</span><span class="n">Consumer</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A utility object useful in tests of asynchronous code.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_unary_response</span> <span class="o">=</span> <span class="bp">None</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_streamed_responses</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_completed</span> <span class="o">=</span> <span class="bp">False</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span> <span class="o">=</span> <span class="bp">None</span>
-
-<div class="viewcode-block" id="Callback.abort"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.abort">[docs]</a>  <span class="k">def</span> <span class="nf">abort</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">abortion</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span> <span class="o">=</span> <span class="n">abortion</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="Callback.complete"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.complete">[docs]</a>  <span class="k">def</span> <span class="nf">complete</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_response</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_unary_response</span> <span class="o">=</span> <span class="n">unary_response</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_completed</span> <span class="o">=</span> <span class="bp">True</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="Callback.consume"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.consume">[docs]</a>  <span class="k">def</span> <span class="nf">consume</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">streamed_response</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_streamed_responses</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">streamed_response</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="Callback.terminate"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.terminate">[docs]</a>  <span class="k">def</span> <span class="nf">terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_completed</span> <span class="o">=</span> <span class="bp">True</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="Callback.consume_and_terminate"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.consume_and_terminate">[docs]</a>  <span class="k">def</span> <span class="nf">consume_and_terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">streamed_response</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_streamed_responses</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">streamed_response</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_completed</span> <span class="o">=</span> <span class="bp">True</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="Callback.block_until_terminated"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.block_until_terminated">[docs]</a>  <span class="k">def</span> <span class="nf">block_until_terminated</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">while</span> <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span> <span class="ow">is</span> <span class="bp">None</span> <span class="ow">and</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_completed</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="Callback.response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.response">[docs]</a>  <span class="k">def</span> <span class="nf">response</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_unary_response</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">AssertionError</span><span class="p">(</span><span class="s">&#39;Aborted with abortion &quot;</span><span class="si">%s</span><span class="s">&quot;!&#39;</span> <span class="o">%</span> <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="Callback.responses"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.responses">[docs]</a>  <span class="k">def</span> <span class="nf">responses</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="k">return</span> <span class="nb">list</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_streamed_responses</span><span class="p">)</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">AssertionError</span><span class="p">(</span><span class="s">&#39;Aborted with abortion &quot;</span><span class="si">%s</span><span class="s">&quot;!&#39;</span> <span class="o">%</span> <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="Callback.abortion"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.callback.Callback.abortion">[docs]</a>  <span class="k">def</span> <span class="nf">abortion</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_abortion</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 276
python/_modules/grpc/framework/face/testing/control.html

@@ -1,276 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.control &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.control</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.control</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Code for instructing systems under test to block or fail.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-<span class="kn">import</span> <span class="nn">contextlib</span>
-<span class="kn">import</span> <span class="nn">threading</span>
-
-
-<div class="viewcode-block" id="Control"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.control.Control">[docs]</a><span class="k">class</span> <span class="nc">Control</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;An object that accepts program control from a system under test.</span>
-
-<span class="sd">  Systems under test passed a Control should call its control() method</span>
-<span class="sd">  frequently during execution. The control() method may block, raise an</span>
-<span class="sd">  exception, or do nothing, all according to the enclosing test&#39;s desire for</span>
-<span class="sd">  the system under test to simulate hanging, failing, or functioning.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Control.control"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.control.Control.control">[docs]</a>  <span class="k">def</span> <span class="nf">control</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Potentially does anything.&quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="PauseFailControl"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.control.PauseFailControl">[docs]</a><span class="k">class</span> <span class="nc">PauseFailControl</span><span class="p">(</span><span class="n">Control</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A Control that can be used to pause or fail code under control.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">False</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span> <span class="o">=</span> <span class="bp">False</span>
-
-<div class="viewcode-block" id="PauseFailControl.control"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.control.PauseFailControl.control">[docs]</a>  <span class="k">def</span> <span class="nf">control</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">()</span>
-
-      <span class="k">while</span> <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-</div>
-  <span class="nd">@contextlib.contextmanager</span>
-<div class="viewcode-block" id="PauseFailControl.pause"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.control.PauseFailControl.pause">[docs]</a>  <span class="k">def</span> <span class="nf">pause</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Pauses code under control while controlling code is in context.&quot;&quot;&quot;</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">True</span>
-    <span class="k">yield</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">False</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-  <span class="nd">@contextlib.contextmanager</span>
-<div class="viewcode-block" id="PauseFailControl.fail"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.control.PauseFailControl.fail">[docs]</a>  <span class="k">def</span> <span class="nf">fail</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Fails code under control while controlling code is in context.&quot;&quot;&quot;</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span> <span class="o">=</span> <span class="bp">True</span>
-    <span class="k">yield</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_fail</span> <span class="o">=</span> <span class="bp">False</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 312
python/_modules/grpc/framework/face/testing/coverage.html

@@ -1,312 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.coverage &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.coverage</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.coverage</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Governs coverage for the tests of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-
-<span class="c"># These classes are only valid when inherited by unittest.TestCases.</span>
-<span class="c"># pylint: disable=invalid-name</span>
-
-
-<div class="viewcode-block" id="BlockingCoverage"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage">[docs]</a><span class="k">class</span> <span class="nc">BlockingCoverage</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Specification of test coverage for blocking behaviors.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testSuccessfulUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testSuccessfulUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testSuccessfulUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testSuccessfulUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testSuccessfulStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testSuccessfulStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testSuccessfulStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testSuccessfulStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testSequentialInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testSequentialInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testSequentialInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testExpiredUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testExpiredUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testExpiredUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testExpiredUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testExpiredStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testExpiredStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testExpiredStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testExpiredStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testFailedUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testFailedUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testFailedUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testFailedUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testFailedStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testFailedStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="BlockingCoverage.testFailedStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.BlockingCoverage.testFailedStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="FullCoverage"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage">[docs]</a><span class="k">class</span> <span class="nc">FullCoverage</span><span class="p">(</span><span class="n">BlockingCoverage</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Specification of test coverage for non-blocking behaviors.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FullCoverage.testParallelInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage.testParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FullCoverage.testWaitingForSomeButNotAllParallelInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage.testWaitingForSomeButNotAllParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testWaitingForSomeButNotAllParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FullCoverage.testCancelledUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage.testCancelledUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FullCoverage.testCancelledUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage.testCancelledUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FullCoverage.testCancelledStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage.testCancelledStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FullCoverage.testCancelledStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.coverage.FullCoverage.testCancelledStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 639
python/_modules/grpc/framework/face/testing/digest.html

@@ -1,639 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.digest &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.digest</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.digest</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Code for making a service.TestService more amenable to use in tests.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">collections</span>
-<span class="kn">import</span> <span class="nn">threading</span>
-
-<span class="c"># testing_control, interfaces, and testing_service are referenced from</span>
-<span class="c"># specification in this module.</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">style</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">exceptions</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">interfaces</span> <span class="k">as</span> <span class="n">face_interfaces</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">control</span> <span class="k">as</span> <span class="n">testing_control</span>  <span class="c"># pylint: disable=unused-import</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">interfaces</span>  <span class="c"># pylint: disable=unused-import</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">service</span> <span class="k">as</span> <span class="n">testing_service</span>  <span class="c"># pylint: disable=unused-import</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream_util</span>
-
-<span class="n">_IDENTITY</span> <span class="o">=</span> <span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">x</span>
-
-
-<div class="viewcode-block" id="TestServiceDigest"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.digest.TestServiceDigest">[docs]</a><span class="k">class</span> <span class="nc">TestServiceDigest</span><span class="p">(</span>
-    <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
-        <span class="s">&#39;TestServiceDigest&#39;</span><span class="p">,</span>
-        <span class="p">[</span><span class="s">&#39;name&#39;</span><span class="p">,</span>
-         <span class="s">&#39;methods&#39;</span><span class="p">,</span>
-         <span class="s">&#39;inline_method_implementations&#39;</span><span class="p">,</span>
-         <span class="s">&#39;event_method_implementations&#39;</span><span class="p">,</span>
-         <span class="s">&#39;multi_method_implementation&#39;</span><span class="p">,</span>
-         <span class="s">&#39;unary_unary_messages_sequences&#39;</span><span class="p">,</span>
-         <span class="s">&#39;unary_stream_messages_sequences&#39;</span><span class="p">,</span>
-         <span class="s">&#39;stream_unary_messages_sequences&#39;</span><span class="p">,</span>
-         <span class="s">&#39;stream_stream_messages_sequences&#39;</span><span class="p">])):</span>
-  <span class="sd">&quot;&quot;&quot;A transformation of a service.TestService.</span>
-
-<span class="sd">  Attributes:</span>
-<span class="sd">    name: The RPC service name to be used in the test.</span>
-<span class="sd">    methods: A sequence of interfaces.Method objects describing the RPC</span>
-<span class="sd">      methods that will be called during the test.</span>
-<span class="sd">    inline_method_implementations: A dict from RPC method name to</span>
-<span class="sd">      face_interfaces.MethodImplementation object to be used in tests of</span>
-<span class="sd">      in-line calls to behaviors under test.</span>
-<span class="sd">    event_method_implementations: A dict from RPC method name to</span>
-<span class="sd">      face_interfaces.MethodImplementation object to be used in tests of</span>
-<span class="sd">      event-driven calls to behaviors under test.</span>
-<span class="sd">    multi_method_implementation: A face_interfaces.MultiMethodImplementation to</span>
-<span class="sd">      be used in tests of generic calls to behaviors under test.</span>
-<span class="sd">    unary_unary_messages_sequences: A dict from method name to sequence of</span>
-<span class="sd">      service.UnaryUnaryTestMessages objects to be used to test the method</span>
-<span class="sd">      with the given name.</span>
-<span class="sd">    unary_stream_messages_sequences: A dict from method name to sequence of</span>
-<span class="sd">      service.UnaryStreamTestMessages objects to be used to test the method</span>
-<span class="sd">      with the given name.</span>
-<span class="sd">    stream_unary_messages_sequences: A dict from method name to sequence of</span>
-<span class="sd">      service.StreamUnaryTestMessages objects to be used to test the method</span>
-<span class="sd">      with the given name.</span>
-<span class="sd">    stream_stream_messages_sequences: A dict from method name to sequence of</span>
-<span class="sd">      service.StreamStreamTestMessages objects to be used to test the</span>
-<span class="sd">      method with the given name.</span>
-<span class="sd">    serialization: A serial.Serialization object describing serialization</span>
-<span class="sd">      behaviors for all the RPC methods.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-
-</div>
-<span class="k">class</span> <span class="nc">_BufferingConsumer</span><span class="p">(</span><span class="n">stream</span><span class="o">.</span><span class="n">Consumer</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A trivial Consumer that dumps what it consumes in a user-mutable buffer.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">consumed</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">terminated</span> <span class="o">=</span> <span class="bp">False</span>
-
-  <span class="k">def</span> <span class="nf">consume</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">consumed</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
-
-  <span class="k">def</span> <span class="nf">terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">terminated</span> <span class="o">=</span> <span class="bp">True</span>
-
-  <span class="k">def</span> <span class="nf">consume_and_terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">consumed</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">terminated</span> <span class="o">=</span> <span class="bp">True</span>
-
-
-<span class="k">class</span> <span class="nc">_InlineUnaryUnaryMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_unary_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">unary_unary_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span>
-
-  <span class="k">def</span> <span class="nf">unary_unary_inline</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">response_list</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">request</span><span class="p">,</span> <span class="n">response_list</span><span class="o">.</span><span class="n">append</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">return</span> <span class="n">response_list</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_EventUnaryUnaryMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_unary_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">unary_unary_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span>
-
-  <span class="k">def</span> <span class="nf">unary_unary_event</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-          <span class="n">request</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="o">.</span><span class="n">submit</span><span class="p">(</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_InlineUnaryStreamMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_stream_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">unary_stream_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span>
-
-  <span class="k">def</span> <span class="nf">unary_stream_inline</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">response_consumer</span> <span class="o">=</span> <span class="n">_BufferingConsumer</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">for</span> <span class="n">response</span> <span class="ow">in</span> <span class="n">response_consumer</span><span class="o">.</span><span class="n">consumed</span><span class="p">:</span>
-      <span class="k">yield</span> <span class="n">response</span>
-
-
-<span class="k">class</span> <span class="nc">_EventUnaryStreamMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_stream_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">unary_stream_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span>
-
-  <span class="k">def</span> <span class="nf">unary_stream_event</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-          <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="o">.</span><span class="n">submit</span><span class="p">(</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_InlineStreamUnaryMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream_unary_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">stream_unary_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span>
-
-  <span class="k">def</span> <span class="nf">stream_unary_inline</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">response_list</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">response_list</span><span class="o">.</span><span class="n">append</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">request_iterator</span><span class="p">:</span>
-      <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-    <span class="n">request_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-    <span class="k">return</span> <span class="n">response_list</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_EventStreamUnaryMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream_unary_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">stream_unary_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span>
-
-  <span class="k">def</span> <span class="nf">stream_unary_event</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">request_consumer</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">stream_util</span><span class="o">.</span><span class="n">ThreadSwitchingConsumer</span><span class="p">(</span><span class="n">request_consumer</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_InlineStreamStreamMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream_stream_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">stream_stream_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span>
-
-  <span class="k">def</span> <span class="nf">stream_stream_inline</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">response_consumer</span> <span class="o">=</span> <span class="n">_BufferingConsumer</span><span class="p">()</span>
-    <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-
-    <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">request_iterator</span><span class="p">:</span>
-      <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-      <span class="k">while</span> <span class="n">response_consumer</span><span class="o">.</span><span class="n">consumed</span><span class="p">:</span>
-        <span class="k">yield</span> <span class="n">response_consumer</span><span class="o">.</span><span class="n">consumed</span><span class="o">.</span><span class="n">pop</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
-    <span class="n">response_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-
-
-<span class="k">class</span> <span class="nc">_EventStreamStreamMethod</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream_stream_test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span> <span class="o">=</span> <span class="n">stream_stream_test_method</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">cardinality</span> <span class="o">=</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">style</span> <span class="o">=</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span>
-
-  <span class="k">def</span> <span class="nf">stream_stream_event</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_test_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">request_consumer</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">stream_util</span><span class="o">.</span><span class="n">ThreadSwitchingConsumer</span><span class="p">(</span><span class="n">request_consumer</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_UnaryConsumer</span><span class="p">(</span><span class="n">stream</span><span class="o">.</span><span class="n">Consumer</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A Consumer that only allows consumption of exactly one value.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">action</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Lock</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_action</span> <span class="o">=</span> <span class="n">action</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_consumed</span> <span class="o">=</span> <span class="bp">False</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_terminated</span> <span class="o">=</span> <span class="bp">False</span>
-
-  <span class="k">def</span> <span class="nf">consume</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_consumed</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Unary consumer already consumed!&#39;</span><span class="p">)</span>
-      <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminated</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Unary consumer already terminated!&#39;</span><span class="p">)</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_consumed</span> <span class="o">=</span> <span class="bp">True</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">_action</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
-
-  <span class="k">def</span> <span class="nf">terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-      <span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_consumed</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Unary consumer hasn</span><span class="se">\&#39;</span><span class="s">t yet consumed!&#39;</span><span class="p">)</span>
-      <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminated</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Unary consumer already terminated!&#39;</span><span class="p">)</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_terminated</span> <span class="o">=</span> <span class="bp">True</span>
-
-  <span class="k">def</span> <span class="nf">consume_and_terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_lock</span><span class="p">:</span>
-      <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_consumed</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Unary consumer already consumed!&#39;</span><span class="p">)</span>
-      <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_terminated</span><span class="p">:</span>
-        <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Unary consumer already terminated!&#39;</span><span class="p">)</span>
-      <span class="k">else</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_consumed</span> <span class="o">=</span> <span class="bp">True</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_terminated</span> <span class="o">=</span> <span class="bp">True</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">_action</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_UnaryUnaryAdaptation</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_unary_test_method</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">unary_unary_test_method</span>
-
-  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="k">def</span> <span class="nf">action</span><span class="p">(</span><span class="n">request</span><span class="p">):</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-          <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="o">.</span><span class="n">consume_and_terminate</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">)</span>
-    <span class="k">return</span> <span class="n">_UnaryConsumer</span><span class="p">(</span><span class="n">action</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_UnaryStreamAdaptation</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">unary_stream_test_method</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">unary_stream_test_method</span>
-
-  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="k">def</span> <span class="nf">action</span><span class="p">(</span><span class="n">request</span><span class="p">):</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">)</span>
-    <span class="k">return</span> <span class="n">_UnaryConsumer</span><span class="p">(</span><span class="n">action</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_StreamUnaryAdaptation</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stream_unary_test_method</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_method</span> <span class="o">=</span> <span class="n">stream_unary_test_method</span>
-
-  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_method</span><span class="o">.</span><span class="n">service</span><span class="p">(</span>
-        <span class="n">response_consumer</span><span class="o">.</span><span class="n">consume_and_terminate</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_MultiMethodImplementation</span><span class="p">(</span><span class="n">face_interfaces</span><span class="o">.</span><span class="n">MultiMethodImplementation</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">methods</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_methods</span> <span class="o">=</span> <span class="n">methods</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_control</span> <span class="o">=</span> <span class="n">control</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="o">=</span> <span class="n">pool</span>
-
-  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
-    <span class="n">method</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_methods</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
-    <span class="k">if</span> <span class="n">method</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="n">exceptions</span><span class="o">.</span><span class="n">NoSuchMethodError</span><span class="p">(</span><span class="n">name</span><span class="p">)</span>
-    <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-      <span class="k">return</span> <span class="n">method</span><span class="p">(</span><span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="n">request_consumer</span> <span class="o">=</span> <span class="n">method</span><span class="p">(</span><span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_control</span><span class="p">)</span>
-      <span class="k">return</span> <span class="n">stream_util</span><span class="o">.</span><span class="n">ThreadSwitchingConsumer</span><span class="p">(</span><span class="n">request_consumer</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_pool</span><span class="p">)</span>
-
-
-<span class="k">class</span> <span class="nc">_Assembly</span><span class="p">(</span>
-    <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
-        <span class="s">&#39;_Assembly&#39;</span><span class="p">,</span>
-        <span class="p">[</span><span class="s">&#39;methods&#39;</span><span class="p">,</span> <span class="s">&#39;inlines&#39;</span><span class="p">,</span> <span class="s">&#39;events&#39;</span><span class="p">,</span> <span class="s">&#39;adaptations&#39;</span><span class="p">,</span> <span class="s">&#39;messages&#39;</span><span class="p">])):</span>
-  <span class="sd">&quot;&quot;&quot;An intermediate structure created when creating a TestServiceDigest.&quot;&quot;&quot;</span>
-
-
-<span class="k">def</span> <span class="nf">_assemble</span><span class="p">(</span>
-    <span class="n">scenarios</span><span class="p">,</span> <span class="n">names</span><span class="p">,</span> <span class="n">inline_method_constructor</span><span class="p">,</span> <span class="n">event_method_constructor</span><span class="p">,</span>
-    <span class="n">adapter</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Creates an _Assembly from the given scenarios.&quot;&quot;&quot;</span>
-  <span class="n">methods</span> <span class="o">=</span> <span class="p">[]</span>
-  <span class="n">inlines</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="n">events</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="n">adaptations</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="n">messages</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">scenario</span> <span class="ow">in</span> <span class="n">scenarios</span><span class="o">.</span><span class="n">iteritems</span><span class="p">():</span>
-    <span class="k">if</span> <span class="n">name</span> <span class="ow">in</span> <span class="n">names</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">(</span><span class="s">&#39;Repeated name &quot;</span><span class="si">%s</span><span class="s">&quot;!&#39;</span> <span class="o">%</span> <span class="n">name</span><span class="p">)</span>
-
-    <span class="n">test_method</span> <span class="o">=</span> <span class="n">scenario</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span>
-    <span class="n">inline_method</span> <span class="o">=</span> <span class="n">inline_method_constructor</span><span class="p">(</span><span class="n">test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">)</span>
-    <span class="n">event_method</span> <span class="o">=</span> <span class="n">event_method_constructor</span><span class="p">(</span><span class="n">test_method</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
-    <span class="n">adaptation</span> <span class="o">=</span> <span class="n">adapter</span><span class="p">(</span><span class="n">test_method</span><span class="p">)</span>
-
-    <span class="n">methods</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">test_method</span><span class="p">)</span>
-    <span class="n">inlines</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">inline_method</span>
-    <span class="n">events</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">event_method</span>
-    <span class="n">adaptations</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">adaptation</span>
-    <span class="n">messages</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">scenario</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span>
-
-  <span class="k">return</span> <span class="n">_Assembly</span><span class="p">(</span><span class="n">methods</span><span class="p">,</span> <span class="n">inlines</span><span class="p">,</span> <span class="n">events</span><span class="p">,</span> <span class="n">adaptations</span><span class="p">,</span> <span class="n">messages</span><span class="p">)</span>
-
-
-<div class="viewcode-block" id="digest"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.digest.digest">[docs]</a><span class="k">def</span> <span class="nf">digest</span><span class="p">(</span><span class="n">service</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Creates a TestServiceDigest from a TestService.</span>
-
-<span class="sd">  Args:</span>
-<span class="sd">    service: A testing_service.TestService.</span>
-<span class="sd">    control: A testing_control.Control.</span>
-<span class="sd">    pool: If RPC methods should be serviced in a separate thread, a thread pool.</span>
-<span class="sd">      None if RPC methods should be serviced in the thread belonging to the</span>
-<span class="sd">      run-time that calls for their service.</span>
-
-<span class="sd">  Returns:</span>
-<span class="sd">    A TestServiceDigest synthesized from the given service.TestService.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-  <span class="n">names</span> <span class="o">=</span> <span class="nb">set</span><span class="p">()</span>
-
-  <span class="n">unary_unary</span> <span class="o">=</span> <span class="n">_assemble</span><span class="p">(</span>
-      <span class="n">service</span><span class="o">.</span><span class="n">unary_unary_scenarios</span><span class="p">(),</span> <span class="n">names</span><span class="p">,</span> <span class="n">_InlineUnaryUnaryMethod</span><span class="p">,</span>
-      <span class="n">_EventUnaryUnaryMethod</span><span class="p">,</span> <span class="n">_UnaryUnaryAdaptation</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
-  <span class="n">names</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="nb">set</span><span class="p">(</span><span class="n">unary_unary</span><span class="o">.</span><span class="n">inlines</span><span class="p">))</span>
-
-  <span class="n">unary_stream</span> <span class="o">=</span> <span class="n">_assemble</span><span class="p">(</span>
-      <span class="n">service</span><span class="o">.</span><span class="n">unary_stream_scenarios</span><span class="p">(),</span> <span class="n">names</span><span class="p">,</span> <span class="n">_InlineUnaryStreamMethod</span><span class="p">,</span>
-      <span class="n">_EventUnaryStreamMethod</span><span class="p">,</span> <span class="n">_UnaryStreamAdaptation</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
-  <span class="n">names</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="nb">set</span><span class="p">(</span><span class="n">unary_stream</span><span class="o">.</span><span class="n">inlines</span><span class="p">))</span>
-
-  <span class="n">stream_unary</span> <span class="o">=</span> <span class="n">_assemble</span><span class="p">(</span>
-      <span class="n">service</span><span class="o">.</span><span class="n">stream_unary_scenarios</span><span class="p">(),</span> <span class="n">names</span><span class="p">,</span> <span class="n">_InlineStreamUnaryMethod</span><span class="p">,</span>
-      <span class="n">_EventStreamUnaryMethod</span><span class="p">,</span> <span class="n">_StreamUnaryAdaptation</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
-  <span class="n">names</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="nb">set</span><span class="p">(</span><span class="n">stream_unary</span><span class="o">.</span><span class="n">inlines</span><span class="p">))</span>
-
-  <span class="n">stream_stream</span> <span class="o">=</span> <span class="n">_assemble</span><span class="p">(</span>
-      <span class="n">service</span><span class="o">.</span><span class="n">stream_stream_scenarios</span><span class="p">(),</span> <span class="n">names</span><span class="p">,</span> <span class="n">_InlineStreamStreamMethod</span><span class="p">,</span>
-      <span class="n">_EventStreamStreamMethod</span><span class="p">,</span> <span class="n">_IDENTITY</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">)</span>
-  <span class="n">names</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="nb">set</span><span class="p">(</span><span class="n">stream_stream</span><span class="o">.</span><span class="n">inlines</span><span class="p">))</span>
-
-  <span class="n">methods</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">unary_unary</span><span class="o">.</span><span class="n">methods</span><span class="p">)</span>
-  <span class="n">methods</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span><span class="n">unary_stream</span><span class="o">.</span><span class="n">methods</span><span class="p">)</span>
-  <span class="n">methods</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span><span class="n">stream_unary</span><span class="o">.</span><span class="n">methods</span><span class="p">)</span>
-  <span class="n">methods</span><span class="o">.</span><span class="n">extend</span><span class="p">(</span><span class="n">stream_stream</span><span class="o">.</span><span class="n">methods</span><span class="p">)</span>
-  <span class="n">adaptations</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">unary_unary</span><span class="o">.</span><span class="n">adaptations</span><span class="p">)</span>
-  <span class="n">adaptations</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">unary_stream</span><span class="o">.</span><span class="n">adaptations</span><span class="p">)</span>
-  <span class="n">adaptations</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">stream_unary</span><span class="o">.</span><span class="n">adaptations</span><span class="p">)</span>
-  <span class="n">adaptations</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">stream_stream</span><span class="o">.</span><span class="n">adaptations</span><span class="p">)</span>
-  <span class="n">inlines</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">unary_unary</span><span class="o">.</span><span class="n">inlines</span><span class="p">)</span>
-  <span class="n">inlines</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">unary_stream</span><span class="o">.</span><span class="n">inlines</span><span class="p">)</span>
-  <span class="n">inlines</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">stream_unary</span><span class="o">.</span><span class="n">inlines</span><span class="p">)</span>
-  <span class="n">inlines</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">stream_stream</span><span class="o">.</span><span class="n">inlines</span><span class="p">)</span>
-  <span class="n">events</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">unary_unary</span><span class="o">.</span><span class="n">events</span><span class="p">)</span>
-  <span class="n">events</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">unary_stream</span><span class="o">.</span><span class="n">events</span><span class="p">)</span>
-  <span class="n">events</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">stream_unary</span><span class="o">.</span><span class="n">events</span><span class="p">)</span>
-  <span class="n">events</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="n">stream_stream</span><span class="o">.</span><span class="n">events</span><span class="p">)</span>
-
-  <span class="k">return</span> <span class="n">TestServiceDigest</span><span class="p">(</span>
-      <span class="n">service</span><span class="o">.</span><span class="n">name</span><span class="p">(),</span>
-      <span class="n">methods</span><span class="p">,</span>
-      <span class="n">inlines</span><span class="p">,</span>
-      <span class="n">events</span><span class="p">,</span>
-      <span class="n">_MultiMethodImplementation</span><span class="p">(</span><span class="n">adaptations</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">pool</span><span class="p">),</span>
-      <span class="n">unary_unary</span><span class="o">.</span><span class="n">messages</span><span class="p">,</span>
-      <span class="n">unary_stream</span><span class="o">.</span><span class="n">messages</span><span class="p">,</span>
-      <span class="n">stream_unary</span><span class="o">.</span><span class="n">messages</span><span class="p">,</span>
-      <span class="n">stream_stream</span><span class="o">.</span><span class="n">messages</span><span class="p">)</span></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 551
python/_modules/grpc/framework/face/testing/event_invocation_synchronous_event_service_test_case.html

@@ -1,551 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;A test to verify an implementation of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-<span class="kn">import</span> <span class="nn">unittest</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">interfaces</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">callback</span> <span class="k">as</span> <span class="n">testing_callback</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">control</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">coverage</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">digest</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">stock_service</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">test_case</span>
-
-<span class="n">_TIMEOUT</span> <span class="o">=</span> <span class="mi">3</span>
-
-
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase">[docs]</a><span class="k">class</span> <span class="nc">EventInvocationSynchronousEventServiceTestCase</span><span class="p">(</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">FaceTestCase</span><span class="p">,</span> <span class="n">coverage</span><span class="o">.</span><span class="n">FullCoverage</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A test of the Face layer of RPC Framework.</span>
-
-<span class="sd">  Concrete subclasses must also extend unittest.TestCase.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.setUp"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.setUp">[docs]</a>  <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See unittest.TestCase.setUp for full specification.</span>
-
-<span class="sd">    Overriding implementations must call this implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">control</span> <span class="o">=</span> <span class="n">control</span><span class="o">.</span><span class="n">PauseFailControl</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">digest</span> <span class="o">=</span> <span class="n">digest</span><span class="o">.</span><span class="n">digest</span><span class="p">(</span>
-        <span class="n">stock_service</span><span class="o">.</span><span class="n">STOCK_TEST_SERVICE</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">memo</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">set_up_implementation</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">methods</span><span class="p">,</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">event_method_implementations</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.tearDown"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.tearDown">[docs]</a>  <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See unittest.TestCase.tearDown for full specification.</span>
-
-<span class="sd">    Overriding implementations must call this implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">tear_down_implementation</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">memo</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testSuccessfulUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testSuccessfulUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-        <span class="n">response</span> <span class="o">=</span> <span class="n">callback</span><span class="o">.</span><span class="n">response</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testSuccessfulUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testSuccessfulUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-        <span class="n">responses</span> <span class="o">=</span> <span class="n">callback</span><span class="o">.</span><span class="n">responses</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testSuccessfulStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testSuccessfulStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="n">unused_call</span><span class="p">,</span> <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-          <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-        <span class="n">request_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-        <span class="n">response</span> <span class="o">=</span> <span class="n">callback</span><span class="o">.</span><span class="n">response</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testSuccessfulStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testSuccessfulStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="n">unused_call</span><span class="p">,</span> <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-          <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-        <span class="n">request_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-        <span class="n">responses</span> <span class="o">=</span> <span class="n">callback</span><span class="o">.</span><span class="n">responses</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testSequentialInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testSequentialInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testSequentialInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="c"># pylint: disable=cell-var-from-loop</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">first_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">second_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">first_callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-        <span class="n">second_callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">def</span> <span class="nf">make_second_invocation</span><span class="p">(</span><span class="n">first_response</span><span class="p">):</span>
-          <span class="n">first_callback</span><span class="o">.</span><span class="n">complete</span><span class="p">(</span><span class="n">first_response</span><span class="p">)</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">second_request</span><span class="p">,</span> <span class="n">second_callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span>
-              <span class="n">second_callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">first_request</span><span class="p">,</span> <span class="n">make_second_invocation</span><span class="p">,</span> <span class="n">first_callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span>
-            <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">second_callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="n">first_response</span> <span class="o">=</span> <span class="n">first_callback</span><span class="o">.</span><span class="n">response</span><span class="p">()</span>
-        <span class="n">second_response</span> <span class="o">=</span> <span class="n">second_callback</span><span class="o">.</span><span class="n">response</span><span class="p">()</span>
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">first_request</span><span class="p">,</span> <span class="n">first_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">second_request</span><span class="p">,</span> <span class="n">second_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testExpiredUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testExpiredUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testExpiredUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testExpiredUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testExpiredStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testExpiredStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">unused_test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testExpiredStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testExpiredStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="n">unused_call</span><span class="p">,</span> <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-          <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">EXPIRED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testFailedUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testFailedUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">():</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">SERVICER_FAILURE</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testFailedUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testFailedUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">():</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">SERVICER_FAILURE</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testFailedStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testFailedStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">():</span>
-          <span class="n">unused_call</span><span class="p">,</span> <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-            <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-          <span class="n">request_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">SERVICER_FAILURE</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testFailedStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testFailedStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">():</span>
-          <span class="n">unused_call</span><span class="p">,</span> <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-            <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-          <span class="n">request_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">SERVICER_FAILURE</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testParallelInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">first_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">first_callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-        <span class="n">second_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">second_callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">first_request</span><span class="p">,</span> <span class="n">first_callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">first_callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span>
-            <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">second_request</span><span class="p">,</span> <span class="n">second_callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span>
-            <span class="n">second_callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">first_callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-        <span class="n">second_callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="n">first_response</span> <span class="o">=</span> <span class="n">first_callback</span><span class="o">.</span><span class="n">response</span><span class="p">()</span>
-        <span class="n">second_response</span> <span class="o">=</span> <span class="n">second_callback</span><span class="o">.</span><span class="n">response</span><span class="p">()</span>
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">first_request</span><span class="p">,</span> <span class="n">first_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">second_request</span><span class="p">,</span> <span class="n">second_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-  <span class="nd">@unittest.skip</span><span class="p">(</span><span class="s">&#39;TODO(nathaniel): implement.&#39;</span><span class="p">)</span>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testWaitingForSomeButNotAllParallelInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testWaitingForSomeButNotAllParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testWaitingForSomeButNotAllParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testCancelledUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testCancelledUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">call</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">call</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-          <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testCancelledUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testCancelledUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="n">call</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_value_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">call</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testCancelledStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testCancelledStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="n">call</span><span class="p">,</span> <span class="n">request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">complete</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="k">for</span> <span class="n">request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-          <span class="n">request_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span><span class="n">request</span><span class="p">)</span>
-        <span class="n">call</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="EventInvocationSynchronousEventServiceTestCase.testCancelledStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case.EventInvocationSynchronousEventServiceTestCase.testCancelledStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">unused_test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">callback</span> <span class="o">=</span> <span class="n">testing_callback</span><span class="o">.</span><span class="n">Callback</span><span class="p">()</span>
-
-        <span class="n">call</span><span class="p">,</span> <span class="n">unused_request_consumer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">event_stream_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">callback</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abort</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">call</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-        <span class="n">callback</span><span class="o">.</span><span class="n">block_until_terminated</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Abortion</span><span class="o">.</span><span class="n">CANCELLED</span><span class="p">,</span> <span class="n">callback</span><span class="o">.</span><span class="n">abortion</span><span class="p">())</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 565
python/_modules/grpc/framework/face/testing/future_invocation_asynchronous_event_service_test_case.html

@@ -1,565 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;A test to verify an implementation of the Face layer of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-<span class="kn">import</span> <span class="nn">contextlib</span>
-<span class="kn">import</span> <span class="nn">threading</span>
-<span class="kn">import</span> <span class="nn">unittest</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">exceptions</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">control</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">coverage</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">digest</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">stock_service</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">test_case</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">future</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">logging_pool</span>
-
-<span class="n">_TIMEOUT</span> <span class="o">=</span> <span class="mi">3</span>
-<span class="n">_MAXIMUM_POOL_SIZE</span> <span class="o">=</span> <span class="mi">10</span>
-
-
-<span class="k">class</span> <span class="nc">_PauseableIterator</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">upstream</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_upstream</span> <span class="o">=</span> <span class="n">upstream</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">False</span>
-
-  <span class="nd">@contextlib.contextmanager</span>
-  <span class="k">def</span> <span class="nf">pause</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">True</span>
-    <span class="k">yield</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span> <span class="o">=</span> <span class="bp">False</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-
-  <span class="k">def</span> <span class="nf">__iter__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="bp">self</span>
-
-  <span class="k">def</span> <span class="nf">next</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">while</span> <span class="bp">self</span><span class="o">.</span><span class="n">_paused</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-    <span class="k">return</span> <span class="nb">next</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_upstream</span><span class="p">)</span>
-
-
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase">[docs]</a><span class="k">class</span> <span class="nc">FutureInvocationAsynchronousEventServiceTestCase</span><span class="p">(</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">FaceTestCase</span><span class="p">,</span> <span class="n">coverage</span><span class="o">.</span><span class="n">FullCoverage</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A test of the Face layer of RPC Framework.</span>
-
-<span class="sd">  Concrete subclasses must also extend unittest.TestCase.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.setUp"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.setUp">[docs]</a>  <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See unittest.TestCase.setUp for full specification.</span>
-
-<span class="sd">    Overriding implementations must call this implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">control</span> <span class="o">=</span> <span class="n">control</span><span class="o">.</span><span class="n">PauseFailControl</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">digest_pool</span> <span class="o">=</span> <span class="n">logging_pool</span><span class="o">.</span><span class="n">pool</span><span class="p">(</span><span class="n">_MAXIMUM_POOL_SIZE</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">digest</span> <span class="o">=</span> <span class="n">digest</span><span class="o">.</span><span class="n">digest</span><span class="p">(</span>
-        <span class="n">stock_service</span><span class="o">.</span><span class="n">STOCK_TEST_SERVICE</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">digest_pool</span><span class="p">)</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">memo</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">set_up_implementation</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">methods</span><span class="p">,</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">event_method_implementations</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.tearDown"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.tearDown">[docs]</a>  <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See unittest.TestCase.tearDown for full specification.</span>
-
-<span class="sd">    Overriding implementations must call this implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">tear_down_implementation</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">memo</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">digest_pool</span><span class="o">.</span><span class="n">shutdown</span><span class="p">(</span><span class="n">wait</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">response</span> <span class="o">=</span> <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">responses</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">request_iterator</span> <span class="o">=</span> <span class="n">_PauseableIterator</span><span class="p">(</span><span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">))</span>
-
-        <span class="c"># Use of a paused iterator of requests allows us to test that control is</span>
-        <span class="c"># returned to calling code before the iterator yields any requests.</span>
-        <span class="k">with</span> <span class="n">request_iterator</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_stream_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">response</span> <span class="o">=</span> <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testSuccessfulStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testSuccessfulStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-        <span class="n">request_iterator</span> <span class="o">=</span> <span class="n">_PauseableIterator</span><span class="p">(</span><span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">))</span>
-
-        <span class="c"># Use of a paused iterator of requests allows us to test that control is</span>
-        <span class="c"># returned to calling code before the iterator yields any requests.</span>
-        <span class="k">with</span> <span class="n">request_iterator</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">responses</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testSequentialInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testSequentialInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testSequentialInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">first_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">second_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">first_response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">first_request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">first_response</span> <span class="o">=</span> <span class="n">first_response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">first_request</span><span class="p">,</span> <span class="n">first_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-
-        <span class="n">second_response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">second_request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">second_response</span> <span class="o">=</span> <span class="n">second_response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">second_request</span><span class="p">,</span> <span class="n">second_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testExpiredUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testExpiredUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">multi_callable</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">unary_unary_multi_callable</span><span class="p">(</span><span class="n">name</span><span class="p">)</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="n">multi_callable</span><span class="o">.</span><span class="n">future</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">assertIsInstance</span><span class="p">(</span>
-              <span class="n">response_future</span><span class="o">.</span><span class="n">exception</span><span class="p">(),</span> <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">)</span>
-          <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-            <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testExpiredUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testExpiredUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-            <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testExpiredStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testExpiredStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">multi_callable</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">stream_unary_multi_callable</span><span class="p">(</span><span class="n">name</span><span class="p">)</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="n">multi_callable</span><span class="o">.</span><span class="n">future</span><span class="p">(</span><span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">assertIsInstance</span><span class="p">(</span>
-              <span class="n">response_future</span><span class="o">.</span><span class="n">exception</span><span class="p">(),</span> <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">)</span>
-          <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-            <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testExpiredStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testExpiredStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testExpiredStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-            <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testFailedUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testFailedUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">():</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-
-          <span class="c"># Because the servicer fails outside of the thread from which the</span>
-          <span class="c"># servicer-side runtime called into it its failure is</span>
-          <span class="c"># indistinguishable from simply not having called its</span>
-          <span class="c"># response_callback before the expiration of the RPC.</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">assertIsInstance</span><span class="p">(</span>
-              <span class="n">response_future</span><span class="o">.</span><span class="n">exception</span><span class="p">(),</span> <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">)</span>
-          <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-            <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testFailedUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testFailedUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="c"># Because the servicer fails outside of the thread from which the</span>
-        <span class="c"># servicer-side runtime called into it its failure is indistinguishable</span>
-        <span class="c"># from simply not having called its response_consumer before the</span>
-        <span class="c"># expiration of the RPC.</span>
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testFailedStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testFailedStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">():</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_stream_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-
-          <span class="c"># Because the servicer fails outside of the thread from which the</span>
-          <span class="c"># servicer-side runtime called into it its failure is</span>
-          <span class="c"># indistinguishable from simply not having called its</span>
-          <span class="c"># response_callback before the expiration of the RPC.</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">assertIsInstance</span><span class="p">(</span>
-              <span class="n">response_future</span><span class="o">.</span><span class="n">exception</span><span class="p">(),</span> <span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">)</span>
-          <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-            <span class="n">response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testFailedStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testFailedStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testFailedStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="c"># Because the servicer fails outside of the thread from which the</span>
-        <span class="c"># servicer-side runtime called into it its failure is indistinguishable</span>
-        <span class="c"># from simply not having called its response_consumer before the</span>
-        <span class="c"># expiration of the RPC.</span>
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">fail</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">exceptions</span><span class="o">.</span><span class="n">ExpirationError</span><span class="p">):</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="nb">list</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testParallelInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">first_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-        <span class="n">second_request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="n">first_response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">first_request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">second_response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-            <span class="n">name</span><span class="p">,</span> <span class="n">second_request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-        <span class="n">first_response</span> <span class="o">=</span> <span class="n">first_response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-        <span class="n">second_response</span> <span class="o">=</span> <span class="n">second_response_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span>
-
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">first_request</span><span class="p">,</span> <span class="n">first_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-        <span class="n">test_messages</span><span class="o">.</span><span class="n">verify</span><span class="p">(</span><span class="n">second_request</span><span class="p">,</span> <span class="n">second_response</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span>
-</div>
-  <span class="nd">@unittest.skip</span><span class="p">(</span><span class="s">&#39;TODO(nathaniel): implement.&#39;</span><span class="p">)</span>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testWaitingForSomeButNotAllParallelInvocations"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testWaitingForSomeButNotAllParallelInvocations">[docs]</a>  <span class="k">def</span> <span class="nf">testWaitingForSomeButNotAllParallelInvocations</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testCancelledUnaryRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testCancelledUnaryRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_value_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">cancel_method_return_value</span> <span class="o">=</span> <span class="n">response_future</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">cancel_method_return_value</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertTrue</span><span class="p">(</span><span class="n">response_future</span><span class="o">.</span><span class="n">cancelled</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testCancelledUnaryRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testCancelledUnaryRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledUnaryRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">unary_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">request</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">request</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_value_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">response_iterator</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">future</span><span class="o">.</span><span class="n">CancelledError</span><span class="p">):</span>
-          <span class="nb">next</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testCancelledStreamRequestUnaryResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testCancelledStreamRequestUnaryResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestUnaryResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_unary_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_future</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">future_stream_in_value_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">cancel_method_return_value</span> <span class="o">=</span> <span class="n">response_future</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">cancel_method_return_value</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertTrue</span><span class="p">(</span><span class="n">response_future</span><span class="o">.</span><span class="n">cancelled</span><span class="p">())</span>
-</div>
-<div class="viewcode-block" id="FutureInvocationAsynchronousEventServiceTestCase.testCancelledStreamRequestStreamResponse"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case.FutureInvocationAsynchronousEventServiceTestCase.testCancelledStreamRequestStreamResponse">[docs]</a>  <span class="k">def</span> <span class="nf">testCancelledStreamRequestStreamResponse</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">for</span> <span class="n">name</span><span class="p">,</span> <span class="n">test_messages_sequence</span> <span class="ow">in</span> <span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">digest</span><span class="o">.</span><span class="n">stream_stream_messages_sequences</span><span class="o">.</span><span class="n">iteritems</span><span class="p">()):</span>
-      <span class="k">for</span> <span class="n">test_messages</span> <span class="ow">in</span> <span class="n">test_messages_sequence</span><span class="p">:</span>
-        <span class="n">requests</span> <span class="o">=</span> <span class="n">test_messages</span><span class="o">.</span><span class="n">requests</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">control</span><span class="o">.</span><span class="n">pause</span><span class="p">():</span>
-          <span class="n">response_iterator</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">stub</span><span class="o">.</span><span class="n">inline_stream_in_stream_out</span><span class="p">(</span>
-              <span class="n">name</span><span class="p">,</span> <span class="nb">iter</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="n">_TIMEOUT</span><span class="p">)</span>
-          <span class="n">response_iterator</span><span class="o">.</span><span class="n">cancel</span><span class="p">()</span>
-
-        <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">assertRaises</span><span class="p">(</span><span class="n">future</span><span class="o">.</span><span class="n">CancelledError</span><span class="p">):</span>
-          <span class="nb">next</span><span class="p">(</span><span class="n">response_iterator</span><span class="p">)</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 306
python/_modules/grpc/framework/face/testing/interfaces.html

@@ -1,306 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.interfaces &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.interfaces</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.interfaces</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Interfaces implemented by data sets used in Face-layer tests.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-
-<span class="c"># cardinality is referenced from specification in this module.</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>  <span class="c"># pylint: disable=unused-import</span>
-
-
-<div class="viewcode-block" id="Method"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method">[docs]</a><span class="k">class</span> <span class="nc">Method</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;An RPC method to be used in tests of RPC implementations.&quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Identify the name of the method.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      The name of the method.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.cardinality"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.cardinality">[docs]</a>  <span class="k">def</span> <span class="nf">cardinality</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Identify the cardinality of the method.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A cardinality.Cardinality value describing the streaming semantics of the</span>
-<span class="sd">        method.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.request_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.request_class">[docs]</a>  <span class="k">def</span> <span class="nf">request_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Identify the class used for the method&#39;s request objects.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      The class object of the class to which the method&#39;s request objects</span>
-<span class="sd">        belong.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.response_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.response_class">[docs]</a>  <span class="k">def</span> <span class="nf">response_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Identify the class used for the method&#39;s response objects.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      The class object of the class to which the method&#39;s response objects</span>
-<span class="sd">        belong.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.serialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.serialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Serialize the given request object.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      request: A request object appropriate for this method.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.deserialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.deserialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_request</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Synthesize a request object from a given bytestring.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      serialized_request: A bytestring deserializable into a request object</span>
-<span class="sd">        appropriate for this method.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.serialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.serialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Serialize the given response object.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      response: A response object appropriate for this method.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="Method.deserialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.interfaces.Method.deserialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_response</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Synthesize a response object from a given bytestring.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      serialized_response: A bytestring deserializable into a response object</span>
-<span class="sd">        appropriate for this method.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 526
python/_modules/grpc/framework/face/testing/service.html

@@ -1,526 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.service &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.service</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.service</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Private interfaces implemented by data sets used in Face-layer tests.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-
-<span class="c"># interfaces is referenced from specification in this module.</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">interfaces</span> <span class="k">as</span> <span class="n">face_interfaces</span>  <span class="c"># pylint: disable=unused-import</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">interfaces</span>
-
-
-<div class="viewcode-block" id="UnaryUnaryTestMethodImplementation"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryUnaryTestMethodImplementation">[docs]</a><span class="k">class</span> <span class="nc">UnaryUnaryTestMethodImplementation</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Method</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A controllable implementation of a unary-unary RPC method.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="UnaryUnaryTestMethodImplementation.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryUnaryTestMethodImplementation.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Services an RPC that accepts one message and produces one message.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      request: The single request message for the RPC.</span>
-<span class="sd">      response_callback: A callback to be called to accept the response message</span>
-<span class="sd">        of the RPC.</span>
-<span class="sd">      context: An face_interfaces.RpcContext object.</span>
-<span class="sd">      control: A test_control.Control to control execution of this method.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      abandonment.Abandoned: May or may not be raised when the RPC has been</span>
-<span class="sd">        aborted.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="UnaryUnaryTestMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryUnaryTestMessages">[docs]</a><span class="k">class</span> <span class="nc">UnaryUnaryTestMessages</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A type for unary-request-unary-response message pairings.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="UnaryUnaryTestMessages.request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryUnaryTestMessages.request">[docs]</a>  <span class="k">def</span> <span class="nf">request</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords a request message.</span>
-
-<span class="sd">    Implementations of this method should return a different message with each</span>
-<span class="sd">    call so that multiple test executions of the test method may be made with</span>
-<span class="sd">    different inputs.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A request message.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="UnaryUnaryTestMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryUnaryTestMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Verifies that the computed response matches the given request.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      request: A request message.</span>
-<span class="sd">      response: A response message.</span>
-<span class="sd">      test_case: A unittest.TestCase object affording useful assertion methods.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      AssertionError: If the request and response do not match, indicating that</span>
-<span class="sd">        there was some problem executing the RPC under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="UnaryStreamTestMethodImplementation"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryStreamTestMethodImplementation">[docs]</a><span class="k">class</span> <span class="nc">UnaryStreamTestMethodImplementation</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Method</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A controllable implementation of a unary-stream RPC method.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="UnaryStreamTestMethodImplementation.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryStreamTestMethodImplementation.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Services an RPC that takes one message and produces a stream of messages.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      request: The single request message for the RPC.</span>
-<span class="sd">      response_consumer: A stream.Consumer to be called to accept the response</span>
-<span class="sd">        messages of the RPC.</span>
-<span class="sd">      context: A face_interfaces.RpcContext object.</span>
-<span class="sd">      control: A test_control.Control to control execution of this method.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      abandonment.Abandoned: May or may not be raised when the RPC has been</span>
-<span class="sd">        aborted.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="UnaryStreamTestMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryStreamTestMessages">[docs]</a><span class="k">class</span> <span class="nc">UnaryStreamTestMessages</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A type for unary-request-stream-response message pairings.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="UnaryStreamTestMessages.request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryStreamTestMessages.request">[docs]</a>  <span class="k">def</span> <span class="nf">request</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords a request message.</span>
-
-<span class="sd">    Implementations of this method should return a different message with each</span>
-<span class="sd">    call so that multiple test executions of the test method may be made with</span>
-<span class="sd">    different inputs.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A request message.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="UnaryStreamTestMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.UnaryStreamTestMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Verifies that the computed responses match the given request.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      request: A request message.</span>
-<span class="sd">      responses: A sequence of response messages.</span>
-<span class="sd">      test_case: A unittest.TestCase object affording useful assertion methods.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      AssertionError: If the request and responses do not match, indicating that</span>
-<span class="sd">        there was some problem executing the RPC under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="StreamUnaryTestMethodImplementation"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamUnaryTestMethodImplementation">[docs]</a><span class="k">class</span> <span class="nc">StreamUnaryTestMethodImplementation</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Method</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A controllable implementation of a stream-unary RPC method.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="StreamUnaryTestMethodImplementation.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamUnaryTestMethodImplementation.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Services an RPC that takes a stream of messages and produces one message.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      response_callback: A callback to be called to accept the response message</span>
-<span class="sd">        of the RPC.</span>
-<span class="sd">      context: A face_interfaces.RpcContext object.</span>
-<span class="sd">      control: A test_control.Control to control execution of this method.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A stream.Consumer with which to accept the request messages of the RPC.</span>
-<span class="sd">        The consumer returned from this method may or may not be invoked to</span>
-<span class="sd">        completion: in the case of RPC abortion, RPC Framework will simply stop</span>
-<span class="sd">        passing messages to this object. Implementations must not assume that</span>
-<span class="sd">        this object will be called to completion of the request stream or even</span>
-<span class="sd">        called at all.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      abandonment.Abandoned: May or may not be raised when the RPC has been</span>
-<span class="sd">        aborted.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="StreamUnaryTestMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamUnaryTestMessages">[docs]</a><span class="k">class</span> <span class="nc">StreamUnaryTestMessages</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A type for stream-request-unary-response message pairings.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="StreamUnaryTestMessages.requests"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamUnaryTestMessages.requests">[docs]</a>  <span class="k">def</span> <span class="nf">requests</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords a sequence of request messages.</span>
-
-<span class="sd">    Implementations of this method should return a different sequences with each</span>
-<span class="sd">    call so that multiple test executions of the test method may be made with</span>
-<span class="sd">    different inputs.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A sequence of request messages.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="StreamUnaryTestMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamUnaryTestMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">requests</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Verifies that the computed response matches the given requests.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      requests: A sequence of request messages.</span>
-<span class="sd">      response: A response message.</span>
-<span class="sd">      test_case: A unittest.TestCase object affording useful assertion methods.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      AssertionError: If the requests and response do not match, indicating that</span>
-<span class="sd">        there was some problem executing the RPC under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="StreamStreamTestMethodImplementation"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamStreamTestMethodImplementation">[docs]</a><span class="k">class</span> <span class="nc">StreamStreamTestMethodImplementation</span><span class="p">(</span><span class="n">interfaces</span><span class="o">.</span><span class="n">Method</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A controllable implementation of a stream-stream RPC method.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="StreamStreamTestMethodImplementation.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamStreamTestMethodImplementation.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Services an RPC that accepts and produces streams of messages.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      response_consumer: A stream.Consumer to be called to accept the response</span>
-<span class="sd">        messages of the RPC.</span>
-<span class="sd">      context: A face_interfaces.RpcContext object.</span>
-<span class="sd">      control: A test_control.Control to control execution of this method.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A stream.Consumer with which to accept the request messages of the RPC.</span>
-<span class="sd">        The consumer returned from this method may or may not be invoked to</span>
-<span class="sd">        completion: in the case of RPC abortion, RPC Framework will simply stop</span>
-<span class="sd">        passing messages to this object. Implementations must not assume that</span>
-<span class="sd">        this object will be called to completion of the request stream or even</span>
-<span class="sd">        called at all.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      abandonment.Abandoned: May or may not be raised when the RPC has been</span>
-<span class="sd">        aborted.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="StreamStreamTestMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamStreamTestMessages">[docs]</a><span class="k">class</span> <span class="nc">StreamStreamTestMessages</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A type for stream-request-stream-response message pairings.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="StreamStreamTestMessages.requests"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamStreamTestMessages.requests">[docs]</a>  <span class="k">def</span> <span class="nf">requests</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords a sequence of request messages.</span>
-
-<span class="sd">    Implementations of this method should return a different sequences with each</span>
-<span class="sd">    call so that multiple test executions of the test method may be made with</span>
-<span class="sd">    different inputs.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A sequence of request messages.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="StreamStreamTestMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.StreamStreamTestMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">requests</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Verifies that the computed response matches the given requests.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      requests: A sequence of request messages.</span>
-<span class="sd">      responses: A sequence of response messages.</span>
-<span class="sd">      test_case: A unittest.TestCase object affording useful assertion methods.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      AssertionError: If the requests and responses do not match, indicating</span>
-<span class="sd">        that there was some problem executing the RPC under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-
-</div></div>
-<div class="viewcode-block" id="TestService"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.TestService">[docs]</a><span class="k">class</span> <span class="nc">TestService</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A specification of implemented RPC methods to use in tests.&quot;&quot;&quot;</span>
-
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TestService.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.TestService.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Identifies the RPC service name used during the test.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      The RPC service name to be used for the test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TestService.unary_unary_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.TestService.unary_unary_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">unary_unary_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords unary-request-unary-response test methods and their messages.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A dict from method name to pair. The first element of the pair</span>
-<span class="sd">        is a UnaryUnaryTestMethodImplementation object and the second element</span>
-<span class="sd">        is a sequence of UnaryUnaryTestMethodMessages objects.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TestService.unary_stream_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.TestService.unary_stream_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">unary_stream_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords unary-request-stream-response test methods and their messages.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A dict from method name to pair. The first element of the pair is a</span>
-<span class="sd">        UnaryStreamTestMethodImplementation object and the second element is a</span>
-<span class="sd">        sequence of UnaryStreamTestMethodMessages objects.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TestService.stream_unary_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.TestService.stream_unary_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">stream_unary_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords stream-request-unary-response test methods and their messages.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A dict from method name to pair. The first element of the pair is a</span>
-<span class="sd">        StreamUnaryTestMethodImplementation object and the second element is a</span>
-<span class="sd">        sequence of StreamUnaryTestMethodMessages objects.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TestService.stream_stream_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.service.TestService.stream_stream_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">stream_stream_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Affords stream-request-stream-response test methods and their messages.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A dict from method name to pair. The first element of the pair is a</span>
-<span class="sd">        StreamStreamTestMethodImplementation object and the second element is a</span>
-<span class="sd">        sequence of StreamStreamTestMethodMessages objects.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 563
python/_modules/grpc/framework/face/testing/stock_service.html

@@ -1,563 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.stock_service &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.stock_service</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.stock_service</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Examples of Python implementations of the stock.proto Stock service.&quot;&quot;&quot;</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">service</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">abandonment</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream_util</span>
-<span class="kn">from</span> <span class="nn">grpc._junkdrawer</span> <span class="kn">import</span> <span class="n">stock_pb2</span>
-
-<span class="n">SYMBOL_FORMAT</span> <span class="o">=</span> <span class="s">&#39;test symbol:</span><span class="si">%03d</span><span class="s">&#39;</span>
-<span class="n">STREAM_LENGTH</span> <span class="o">=</span> <span class="mi">400</span>
-
-<span class="c"># A test-appropriate security-pricing function. :-P</span>
-<span class="n">_price</span> <span class="o">=</span> <span class="k">lambda</span> <span class="n">symbol_name</span><span class="p">:</span> <span class="nb">float</span><span class="p">(</span><span class="nb">hash</span><span class="p">(</span><span class="n">symbol_name</span><span class="p">)</span> <span class="o">%</span> <span class="mi">4096</span><span class="p">)</span>
-
-
-<span class="k">def</span> <span class="nf">_get_last_trade_price</span><span class="p">(</span><span class="n">stock_request</span><span class="p">,</span> <span class="n">stock_reply_callback</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">active</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A unary-request, unary-response test method.&quot;&quot;&quot;</span>
-  <span class="n">control</span><span class="o">.</span><span class="n">control</span><span class="p">()</span>
-  <span class="k">if</span> <span class="n">active</span><span class="p">():</span>
-    <span class="n">stock_reply_callback</span><span class="p">(</span>
-        <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span>
-            <span class="n">symbol</span><span class="o">=</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span> <span class="n">price</span><span class="o">=</span><span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)))</span>
-  <span class="k">else</span><span class="p">:</span>
-    <span class="k">raise</span> <span class="n">abandonment</span><span class="o">.</span><span class="n">Abandoned</span><span class="p">()</span>
-
-
-<span class="k">def</span> <span class="nf">_get_last_trade_price_multiple</span><span class="p">(</span><span class="n">stock_reply_consumer</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">active</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A stream-request, stream-response test method.&quot;&quot;&quot;</span>
-  <span class="k">def</span> <span class="nf">stock_reply_for_stock_request</span><span class="p">(</span><span class="n">stock_request</span><span class="p">):</span>
-    <span class="n">control</span><span class="o">.</span><span class="n">control</span><span class="p">()</span>
-    <span class="k">if</span> <span class="n">active</span><span class="p">():</span>
-      <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span>
-          <span class="n">symbol</span><span class="o">=</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span> <span class="n">price</span><span class="o">=</span><span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">))</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="n">abandonment</span><span class="o">.</span><span class="n">Abandoned</span><span class="p">()</span>
-  <span class="k">return</span> <span class="n">stream_util</span><span class="o">.</span><span class="n">TransformingConsumer</span><span class="p">(</span>
-      <span class="n">stock_reply_for_stock_request</span><span class="p">,</span> <span class="n">stock_reply_consumer</span><span class="p">)</span>
-
-
-<span class="k">def</span> <span class="nf">_watch_future_trades</span><span class="p">(</span><span class="n">stock_request</span><span class="p">,</span> <span class="n">stock_reply_consumer</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">active</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A unary-request, stream-response test method.&quot;&quot;&quot;</span>
-  <span class="n">base_price</span> <span class="o">=</span> <span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-  <span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">num_trades_to_watch</span><span class="p">):</span>
-    <span class="n">control</span><span class="o">.</span><span class="n">control</span><span class="p">()</span>
-    <span class="k">if</span> <span class="n">active</span><span class="p">():</span>
-      <span class="n">stock_reply_consumer</span><span class="o">.</span><span class="n">consume</span><span class="p">(</span>
-          <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span>
-              <span class="n">symbol</span><span class="o">=</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span> <span class="n">price</span><span class="o">=</span><span class="n">base_price</span> <span class="o">+</span> <span class="n">index</span><span class="p">))</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="k">raise</span> <span class="n">abandonment</span><span class="o">.</span><span class="n">Abandoned</span><span class="p">()</span>
-  <span class="n">stock_reply_consumer</span><span class="o">.</span><span class="n">terminate</span><span class="p">()</span>
-
-
-<span class="k">def</span> <span class="nf">_get_highest_trade_price</span><span class="p">(</span><span class="n">stock_reply_callback</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">active</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A stream-request, unary-response test method.&quot;&quot;&quot;</span>
-
-  <span class="k">class</span> <span class="nc">StockRequestConsumer</span><span class="p">(</span><span class="n">stream</span><span class="o">.</span><span class="n">Consumer</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Keeps an ongoing record of the most valuable symbol yet consumed.&quot;&quot;&quot;</span>
-
-    <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span> <span class="o">=</span> <span class="bp">None</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">=</span> <span class="bp">None</span>
-
-    <span class="k">def</span> <span class="nf">consume</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stock_request</span><span class="p">):</span>
-      <span class="n">control</span><span class="o">.</span><span class="n">control</span><span class="p">()</span>
-      <span class="k">if</span> <span class="n">active</span><span class="p">():</span>
-        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span> <span class="o">=</span> <span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">=</span> <span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-        <span class="k">else</span><span class="p">:</span>
-          <span class="n">candidate_price</span> <span class="o">=</span> <span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-          <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">&lt;</span> <span class="n">candidate_price</span><span class="p">:</span>
-            <span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span> <span class="o">=</span> <span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span>
-            <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">=</span> <span class="n">candidate_price</span>
-
-    <span class="k">def</span> <span class="nf">terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-      <span class="n">control</span><span class="o">.</span><span class="n">control</span><span class="p">()</span>
-      <span class="k">if</span> <span class="n">active</span><span class="p">():</span>
-        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-          <span class="k">raise</span> <span class="ne">ValueError</span><span class="p">()</span>
-        <span class="k">else</span><span class="p">:</span>
-          <span class="n">stock_reply_callback</span><span class="p">(</span>
-              <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span><span class="n">symbol</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span><span class="p">,</span> <span class="n">price</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_price</span><span class="p">))</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span> <span class="o">=</span> <span class="bp">None</span>
-          <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">=</span> <span class="bp">None</span>
-
-    <span class="k">def</span> <span class="nf">consume_and_terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">stock_request</span><span class="p">):</span>
-      <span class="n">control</span><span class="o">.</span><span class="n">control</span><span class="p">()</span>
-      <span class="k">if</span> <span class="n">active</span><span class="p">():</span>
-        <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-          <span class="n">stock_reply_callback</span><span class="p">(</span>
-              <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span>
-                  <span class="n">symbol</span><span class="o">=</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span>
-                  <span class="n">price</span><span class="o">=</span><span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)))</span>
-        <span class="k">else</span><span class="p">:</span>
-          <span class="n">candidate_price</span> <span class="o">=</span> <span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-          <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">&lt;</span> <span class="n">candidate_price</span><span class="p">:</span>
-            <span class="n">stock_reply_callback</span><span class="p">(</span>
-                <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span>
-                    <span class="n">symbol</span><span class="o">=</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span> <span class="n">price</span><span class="o">=</span><span class="n">candidate_price</span><span class="p">))</span>
-          <span class="k">else</span><span class="p">:</span>
-            <span class="n">stock_reply_callback</span><span class="p">(</span>
-                <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="p">(</span>
-                    <span class="n">symbol</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span><span class="p">,</span> <span class="n">price</span><span class="o">=</span><span class="bp">self</span><span class="o">.</span><span class="n">_price</span><span class="p">))</span>
-
-        <span class="bp">self</span><span class="o">.</span><span class="n">_symbol</span> <span class="o">=</span> <span class="bp">None</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_price</span> <span class="o">=</span> <span class="bp">None</span>
-
-  <span class="k">return</span> <span class="n">StockRequestConsumer</span><span class="p">()</span>
-
-
-<div class="viewcode-block" id="GetLastTradePrice"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice">[docs]</a><span class="k">class</span> <span class="nc">GetLastTradePrice</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">UnaryUnaryTestMethodImplementation</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;GetLastTradePrice for use in tests.&quot;&quot;&quot;</span>
-
-<div class="viewcode-block" id="GetLastTradePrice.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="s">&#39;GetLastTradePrice&#39;</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.cardinality"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.cardinality">[docs]</a>  <span class="k">def</span> <span class="nf">cardinality</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.request_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.request_class">[docs]</a>  <span class="k">def</span> <span class="nf">request_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.response_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.response_class">[docs]</a>  <span class="k">def</span> <span class="nf">response_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.serialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.serialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">request</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.deserialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.deserialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_request</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.serialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.serialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.deserialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.deserialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_response</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePrice.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePrice.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="n">_get_last_trade_price</span><span class="p">(</span>
-        <span class="n">request</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">context</span><span class="o">.</span><span class="n">is_active</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="GetLastTradePriceMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMessages">[docs]</a><span class="k">class</span> <span class="nc">GetLastTradePriceMessages</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">UnaryUnaryTestMessages</span><span class="p">):</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_index</span> <span class="o">=</span> <span class="mi">0</span>
-
-<div class="viewcode-block" id="GetLastTradePriceMessages.request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMessages.request">[docs]</a>  <span class="k">def</span> <span class="nf">request</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">symbol</span> <span class="o">=</span> <span class="n">SYMBOL_FORMAT</span> <span class="o">%</span> <span class="bp">self</span><span class="o">.</span><span class="n">_index</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_index</span> <span class="o">+=</span> <span class="mi">1</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="p">(</span><span class="n">symbol</span><span class="o">=</span><span class="n">symbol</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">_price</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">symbol</span><span class="p">),</span> <span class="n">response</span><span class="o">.</span><span class="n">price</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple">[docs]</a><span class="k">class</span> <span class="nc">GetLastTradePriceMultiple</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">StreamStreamTestMethodImplementation</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;GetLastTradePriceMultiple for use in tests.&quot;&quot;&quot;</span>
-
-<div class="viewcode-block" id="GetLastTradePriceMultiple.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="s">&#39;GetLastTradePriceMultiple&#39;</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.cardinality"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.cardinality">[docs]</a>  <span class="k">def</span> <span class="nf">cardinality</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.request_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.request_class">[docs]</a>  <span class="k">def</span> <span class="nf">request_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.response_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.response_class">[docs]</a>  <span class="k">def</span> <span class="nf">response_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.serialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.serialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">request</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.deserialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.deserialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_request</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.serialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.serialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.deserialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.deserialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_response</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultiple.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultiple.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">_get_last_trade_price_multiple</span><span class="p">(</span>
-        <span class="n">response_consumer</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">context</span><span class="o">.</span><span class="n">is_active</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="GetLastTradePriceMultipleMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultipleMessages">[docs]</a><span class="k">class</span> <span class="nc">GetLastTradePriceMultipleMessages</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">StreamStreamTestMessages</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Pairs of message streams for use with GetLastTradePriceMultiple.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_index</span> <span class="o">=</span> <span class="mi">0</span>
-
-<div class="viewcode-block" id="GetLastTradePriceMultipleMessages.requests"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultipleMessages.requests">[docs]</a>  <span class="k">def</span> <span class="nf">requests</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">base_index</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_index</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_index</span> <span class="o">+=</span> <span class="mi">1</span>
-    <span class="k">return</span> <span class="p">[</span>
-        <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="p">(</span><span class="n">symbol</span><span class="o">=</span><span class="n">SYMBOL_FORMAT</span> <span class="o">%</span> <span class="p">(</span><span class="n">base_index</span> <span class="o">+</span> <span class="n">index</span><span class="p">))</span>
-        <span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">STREAM_LENGTH</span><span class="p">)]</span>
-</div>
-<div class="viewcode-block" id="GetLastTradePriceMultipleMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetLastTradePriceMultipleMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">requests</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="nb">len</span><span class="p">(</span><span class="n">requests</span><span class="p">),</span> <span class="nb">len</span><span class="p">(</span><span class="n">responses</span><span class="p">))</span>
-    <span class="k">for</span> <span class="n">stock_request</span><span class="p">,</span> <span class="n">stock_reply</span> <span class="ow">in</span> <span class="nb">zip</span><span class="p">(</span><span class="n">requests</span><span class="p">,</span> <span class="n">responses</span><span class="p">):</span>
-      <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">,</span> <span class="n">stock_reply</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-      <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">_price</span><span class="p">(</span><span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span><span class="p">),</span> <span class="n">stock_reply</span><span class="o">.</span><span class="n">price</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="WatchFutureTrades"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades">[docs]</a><span class="k">class</span> <span class="nc">WatchFutureTrades</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">UnaryStreamTestMethodImplementation</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;WatchFutureTrades for use in tests.&quot;&quot;&quot;</span>
-
-<div class="viewcode-block" id="WatchFutureTrades.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="s">&#39;WatchFutureTrades&#39;</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.cardinality"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.cardinality">[docs]</a>  <span class="k">def</span> <span class="nf">cardinality</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.request_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.request_class">[docs]</a>  <span class="k">def</span> <span class="nf">request_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.response_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.response_class">[docs]</a>  <span class="k">def</span> <span class="nf">response_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.serialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.serialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">request</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.deserialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.deserialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_request</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.serialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.serialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.deserialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.deserialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_response</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTrades.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTrades.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="n">_watch_future_trades</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">context</span><span class="o">.</span><span class="n">is_active</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="WatchFutureTradesMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTradesMessages">[docs]</a><span class="k">class</span> <span class="nc">WatchFutureTradesMessages</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">UnaryStreamTestMessages</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Pairs of a single request message and a sequence of response messages.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_index</span> <span class="o">=</span> <span class="mi">0</span>
-
-<div class="viewcode-block" id="WatchFutureTradesMessages.request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTradesMessages.request">[docs]</a>  <span class="k">def</span> <span class="nf">request</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="n">symbol</span> <span class="o">=</span> <span class="n">SYMBOL_FORMAT</span> <span class="o">%</span> <span class="bp">self</span><span class="o">.</span><span class="n">_index</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_index</span> <span class="o">+=</span> <span class="mi">1</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="p">(</span>
-        <span class="n">symbol</span><span class="o">=</span><span class="n">symbol</span><span class="p">,</span> <span class="n">num_trades_to_watch</span><span class="o">=</span><span class="n">STREAM_LENGTH</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="WatchFutureTradesMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.WatchFutureTradesMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">responses</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">STREAM_LENGTH</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">responses</span><span class="p">))</span>
-    <span class="n">base_price</span> <span class="o">=</span> <span class="n">_price</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-    <span class="k">for</span> <span class="n">index</span><span class="p">,</span> <span class="n">response</span> <span class="ow">in</span> <span class="nb">enumerate</span><span class="p">(</span><span class="n">responses</span><span class="p">):</span>
-      <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">base_price</span> <span class="o">+</span> <span class="n">index</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">price</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="GetHighestTradePrice"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice">[docs]</a><span class="k">class</span> <span class="nc">GetHighestTradePrice</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">StreamUnaryTestMethodImplementation</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;GetHighestTradePrice for use in tests.&quot;&quot;&quot;</span>
-
-<div class="viewcode-block" id="GetHighestTradePrice.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="s">&#39;GetHighestTradePrice&#39;</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.cardinality"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.cardinality">[docs]</a>  <span class="k">def</span> <span class="nf">cardinality</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.request_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.request_class">[docs]</a>  <span class="k">def</span> <span class="nf">request_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.response_class"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.response_class">[docs]</a>  <span class="k">def</span> <span class="nf">response_class</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.serialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.serialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">request</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.deserialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.deserialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_request</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_request</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.serialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.serialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">SerializeToString</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.deserialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.deserialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_response</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockReply</span><span class="o">.</span><span class="n">FromString</span><span class="p">(</span><span class="n">serialized_response</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePrice.service"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePrice.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response_callback</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">control</span><span class="p">):</span>
-    <span class="k">return</span> <span class="n">_get_highest_trade_price</span><span class="p">(</span>
-        <span class="n">response_callback</span><span class="p">,</span> <span class="n">control</span><span class="p">,</span> <span class="n">context</span><span class="o">.</span><span class="n">is_active</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="GetHighestTradePriceMessages"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePriceMessages">[docs]</a><span class="k">class</span> <span class="nc">GetHighestTradePriceMessages</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">StreamUnaryTestMessages</span><span class="p">):</span>
-
-<div class="viewcode-block" id="GetHighestTradePriceMessages.requests"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePriceMessages.requests">[docs]</a>  <span class="k">def</span> <span class="nf">requests</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="p">[</span>
-        <span class="n">stock_pb2</span><span class="o">.</span><span class="n">StockRequest</span><span class="p">(</span><span class="n">symbol</span><span class="o">=</span><span class="n">SYMBOL_FORMAT</span> <span class="o">%</span> <span class="n">index</span><span class="p">)</span>
-        <span class="k">for</span> <span class="n">index</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">STREAM_LENGTH</span><span class="p">)]</span>
-</div>
-<div class="viewcode-block" id="GetHighestTradePriceMessages.verify"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.GetHighestTradePriceMessages.verify">[docs]</a>  <span class="k">def</span> <span class="nf">verify</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">requests</span><span class="p">,</span> <span class="n">response</span><span class="p">,</span> <span class="n">test_case</span><span class="p">):</span>
-    <span class="n">price</span> <span class="o">=</span> <span class="bp">None</span>
-    <span class="n">symbol</span> <span class="o">=</span> <span class="bp">None</span>
-    <span class="k">for</span> <span class="n">stock_request</span> <span class="ow">in</span> <span class="n">requests</span><span class="p">:</span>
-      <span class="n">current_symbol</span> <span class="o">=</span> <span class="n">stock_request</span><span class="o">.</span><span class="n">symbol</span>
-      <span class="n">current_price</span> <span class="o">=</span> <span class="n">_price</span><span class="p">(</span><span class="n">current_symbol</span><span class="p">)</span>
-      <span class="k">if</span> <span class="n">price</span> <span class="ow">is</span> <span class="bp">None</span> <span class="ow">or</span> <span class="n">price</span> <span class="o">&lt;</span> <span class="n">current_price</span><span class="p">:</span>
-        <span class="n">price</span> <span class="o">=</span> <span class="n">current_price</span>
-        <span class="n">symbol</span> <span class="o">=</span> <span class="n">current_symbol</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">price</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">price</span><span class="p">)</span>
-    <span class="n">test_case</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">symbol</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">symbol</span><span class="p">)</span>
-
-</div></div>
-<div class="viewcode-block" id="StockTestService"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.StockTestService">[docs]</a><span class="k">class</span> <span class="nc">StockTestService</span><span class="p">(</span><span class="n">service</span><span class="o">.</span><span class="n">TestService</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A corpus of test data with one method of each RPC cardinality.&quot;&quot;&quot;</span>
-
-<div class="viewcode-block" id="StockTestService.name"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.StockTestService.name">[docs]</a>  <span class="k">def</span> <span class="nf">name</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="s">&#39;Stock&#39;</span>
-</div>
-<div class="viewcode-block" id="StockTestService.unary_unary_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.StockTestService.unary_unary_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">unary_unary_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="p">{</span>
-        <span class="s">&#39;GetLastTradePrice&#39;</span><span class="p">:</span> <span class="p">(</span>
-            <span class="n">GetLastTradePrice</span><span class="p">(),</span> <span class="p">[</span><span class="n">GetLastTradePriceMessages</span><span class="p">()]),</span>
-    <span class="p">}</span>
-</div>
-<div class="viewcode-block" id="StockTestService.unary_stream_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.StockTestService.unary_stream_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">unary_stream_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="p">{</span>
-        <span class="s">&#39;WatchFutureTrades&#39;</span><span class="p">:</span> <span class="p">(</span>
-            <span class="n">WatchFutureTrades</span><span class="p">(),</span> <span class="p">[</span><span class="n">WatchFutureTradesMessages</span><span class="p">()]),</span>
-    <span class="p">}</span>
-</div>
-<div class="viewcode-block" id="StockTestService.stream_unary_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.StockTestService.stream_unary_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">stream_unary_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="p">{</span>
-        <span class="s">&#39;GetHighestTradePrice&#39;</span><span class="p">:</span> <span class="p">(</span>
-            <span class="n">GetHighestTradePrice</span><span class="p">(),</span> <span class="p">[</span><span class="n">GetHighestTradePriceMessages</span><span class="p">()])</span>
-    <span class="p">}</span>
-</div>
-<div class="viewcode-block" id="StockTestService.stream_stream_scenarios"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.stock_service.StockTestService.stream_stream_scenarios">[docs]</a>  <span class="k">def</span> <span class="nf">stream_stream_scenarios</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="k">return</span> <span class="p">{</span>
-        <span class="s">&#39;GetLastTradePriceMultiple&#39;</span><span class="p">:</span> <span class="p">(</span>
-            <span class="n">GetLastTradePriceMultiple</span><span class="p">(),</span> <span class="p">[</span><span class="n">GetLastTradePriceMultipleMessages</span><span class="p">()]),</span>
-    <span class="p">}</span>
-
-</div></div>
-<span class="n">STOCK_TEST_SERVICE</span> <span class="o">=</span> <span class="n">StockTestService</span><span class="p">()</span>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 269
python/_modules/grpc/framework/face/testing/test_case.html

@@ -1,269 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.face.testing.test_case &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.face.testing.test_case</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.face.testing.test_case</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Tools for creating tests of implementations of the Face layer.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">abc</span>
-
-<span class="c"># face_interfaces and interfaces are referenced in specification in this module.</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face</span> <span class="kn">import</span> <span class="n">interfaces</span> <span class="k">as</span> <span class="n">face_interfaces</span>  <span class="c"># pylint: disable=unused-import</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.face.testing</span> <span class="kn">import</span> <span class="n">interfaces</span>  <span class="c"># pylint: disable=unused-import</span>
-
-
-<div class="viewcode-block" id="FaceTestCase"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.test_case.FaceTestCase">[docs]</a><span class="k">class</span> <span class="nc">FaceTestCase</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Describes a test of the Face Layer of RPC Framework.</span>
-
-<span class="sd">  Concrete subclasses must also inherit from unittest.TestCase and from at least</span>
-<span class="sd">  one class that defines test methods.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FaceTestCase.set_up_implementation"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.test_case.FaceTestCase.set_up_implementation">[docs]</a>  <span class="k">def</span> <span class="nf">set_up_implementation</span><span class="p">(</span>
-      <span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">,</span> <span class="n">methods</span><span class="p">,</span> <span class="n">method_implementations</span><span class="p">,</span>
-      <span class="n">multi_method_implementation</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Instantiates the Face Layer implementation under test.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      name: The service name to be used in the test.</span>
-<span class="sd">      methods: A sequence of interfaces.Method objects describing the RPC</span>
-<span class="sd">        methods that will be called during the test.</span>
-<span class="sd">      method_implementations: A dictionary from string RPC method name to</span>
-<span class="sd">        face_interfaces.MethodImplementation object specifying</span>
-<span class="sd">        implementation of an RPC method.</span>
-<span class="sd">      multi_method_implementation: An face_interfaces.MultiMethodImplementation</span>
-<span class="sd">        or None.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A sequence of length two the first element of which is a</span>
-<span class="sd">        face_interfaces.GenericStub (backed by the given method</span>
-<span class="sd">        implementations), and the second element of which is an arbitrary memo</span>
-<span class="sd">        object to be kept and passed to tearDownImplementation at the conclusion</span>
-<span class="sd">        of the test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="FaceTestCase.tear_down_implementation"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.test_case.FaceTestCase.tear_down_implementation">[docs]</a>  <span class="k">def</span> <span class="nf">tear_down_implementation</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">memo</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Destroys the Face layer implementation under test.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      memo: The object from the second position of the return value of</span>
-<span class="sd">        set_up_implementation.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/face/utilities.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.utilities &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.face.utilities &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -336,7 +343,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/abandonment.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.abandonment &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.abandonment &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -197,7 +204,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/activated.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.activated &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.activated &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -224,7 +231,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/callable_util.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.callable_util &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.callable_util &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -266,7 +273,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/future.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.future &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.future &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -395,7 +402,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/later.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.later &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.later &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -210,7 +217,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/logging_pool.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.logging_pool &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.logging_pool &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -242,7 +249,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/relay.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.relay &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.relay &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -334,7 +341,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/_modules/grpc/framework/foundation/stream.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.stream &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.stream &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -219,7 +226,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 262
python/_modules/grpc/framework/foundation/stream_testing.html

@@ -1,262 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.foundation.stream_testing &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.foundation.stream_testing</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.foundation.stream_testing</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Utilities for testing stream-related code.&quot;&quot;&quot;</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>
-
-
-<div class="viewcode-block" id="TestConsumer"><a class="viewcode-back" href="../../../../grpc.framework.foundation.html#grpc.framework.foundation.stream_testing.TestConsumer">[docs]</a><span class="k">class</span> <span class="nc">TestConsumer</span><span class="p">(</span><span class="n">stream</span><span class="o">.</span><span class="n">Consumer</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A stream.Consumer instrumented for testing.</span>
-
-<span class="sd">  Attributes:</span>
-<span class="sd">    calls: A sequence of value-termination pairs describing the history of calls</span>
-<span class="sd">      made on this object.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">calls</span> <span class="o">=</span> <span class="p">[]</span>
-
-<div class="viewcode-block" id="TestConsumer.consume"><a class="viewcode-back" href="../../../../grpc.framework.foundation.html#grpc.framework.foundation.stream_testing.TestConsumer.consume">[docs]</a>  <span class="k">def</span> <span class="nf">consume</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See stream.Consumer.consume for specification.&quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">calls</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">value</span><span class="p">,</span> <span class="bp">False</span><span class="p">))</span>
-</div>
-<div class="viewcode-block" id="TestConsumer.terminate"><a class="viewcode-back" href="../../../../grpc.framework.foundation.html#grpc.framework.foundation.stream_testing.TestConsumer.terminate">[docs]</a>  <span class="k">def</span> <span class="nf">terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See stream.Consumer.terminate for specification.&quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">calls</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="bp">None</span><span class="p">,</span> <span class="bp">True</span><span class="p">))</span>
-</div>
-<div class="viewcode-block" id="TestConsumer.consume_and_terminate"><a class="viewcode-back" href="../../../../grpc.framework.foundation.html#grpc.framework.foundation.stream_testing.TestConsumer.consume_and_terminate">[docs]</a>  <span class="k">def</span> <span class="nf">consume_and_terminate</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;See stream.Consumer.consume_and_terminate for specification.&quot;&quot;&quot;</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">calls</span><span class="o">.</span><span class="n">append</span><span class="p">((</span><span class="n">value</span><span class="p">,</span> <span class="bp">True</span><span class="p">))</span>
-</div>
-<div class="viewcode-block" id="TestConsumer.is_legal"><a class="viewcode-back" href="../../../../grpc.framework.foundation.html#grpc.framework.foundation.stream_testing.TestConsumer.is_legal">[docs]</a>  <span class="k">def</span> <span class="nf">is_legal</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Reports whether or not a legal sequence of calls has been made.&quot;&quot;&quot;</span>
-    <span class="n">terminated</span> <span class="o">=</span> <span class="bp">False</span>
-    <span class="k">for</span> <span class="n">value</span><span class="p">,</span> <span class="n">terminal</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">calls</span><span class="p">:</span>
-      <span class="k">if</span> <span class="n">terminated</span><span class="p">:</span>
-        <span class="k">return</span> <span class="bp">False</span>
-      <span class="k">elif</span> <span class="n">terminal</span><span class="p">:</span>
-        <span class="n">terminated</span> <span class="o">=</span> <span class="bp">True</span>
-      <span class="k">elif</span> <span class="n">value</span> <span class="ow">is</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="k">return</span> <span class="bp">False</span>
-    <span class="k">else</span><span class="p">:</span>  <span class="c"># pylint: disable=useless-else-on-loop</span>
-      <span class="k">return</span> <span class="bp">True</span>
-</div>
-<div class="viewcode-block" id="TestConsumer.values"><a class="viewcode-back" href="../../../../grpc.framework.foundation.html#grpc.framework.foundation.stream_testing.TestConsumer.values">[docs]</a>  <span class="k">def</span> <span class="nf">values</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Returns the sequence of values that have been passed to this Consumer.&quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="p">[</span><span class="n">value</span> <span class="k">for</span> <span class="n">value</span><span class="p">,</span> <span class="n">_</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">calls</span> <span class="k">if</span> <span class="n">value</span><span class="p">]</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 11 - 4
python/_modules/grpc/framework/foundation/stream_util.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.foundation.stream_util &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.foundation.stream_util &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -319,7 +326,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../',
             URL_ROOT:'../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 535 - 0
python/_modules/grpc/framework/interfaces/base/base.html

@@ -0,0 +1,535 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.framework.interfaces.base.base &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../../index.html"/>
+        <link rel="up" title="Module code" href="../../../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.framework.interfaces.base.base</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.framework.interfaces.base.base</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;The base interface of RPC Framework.</span>
+
+<span class="sd">Implementations of this interface support the conduct of &quot;operations&quot;:</span>
+<span class="sd">exchanges between two distinct ends of an arbitrary number of data payloads</span>
+<span class="sd">and metadata such as a name for the operation, initial and terminal metadata</span>
+<span class="sd">in each direction, and flow control. These operations may be used for transfers</span>
+<span class="sd">of data, remote procedure calls, status indication, or anything else</span>
+<span class="sd">applications choose.</span>
+<span class="sd">&quot;&quot;&quot;</span>
+
+<span class="c"># threading is referenced from specification in this module.</span>
+<span class="kn">import</span> <span class="nn">abc</span>
+<span class="kn">import</span> <span class="nn">enum</span>
+<span class="kn">import</span> <span class="nn">threading</span>  <span class="c"># pylint: disable=unused-import</span>
+
+<span class="c"># abandonment is referenced from specification in this module.</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">abandonment</span>  <span class="c"># pylint: disable=unused-import</span>
+
+
+<div class="viewcode-block" id="NoSuchMethodError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.NoSuchMethodError">[docs]</a><span class="k">class</span> <span class="nc">NoSuchMethodError</span><span class="p">(</span><span class="ne">Exception</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an unrecognized operation has been called.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    code: A code value to communicate to the other side of the operation along</span>
+<span class="sd">      with indication of operation termination. May be None.</span>
+<span class="sd">    details: A details value to communicate to the other side of the operation</span>
+<span class="sd">      along with indication of operation termination. May be None.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">code</span><span class="p">,</span> <span class="n">details</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Constructor.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      code: A code value to communicate to the other side of the operation</span>
+<span class="sd">        along with indication of operation termination. May be None.</span>
+<span class="sd">      details: A details value to communicate to the other side of the</span>
+<span class="sd">        operation along with indication of operation termination. May be None.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">code</span> <span class="o">=</span> <span class="n">code</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">details</span> <span class="o">=</span> <span class="n">details</span>
+
+</div>
+<div class="viewcode-block" id="Outcome"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Outcome">[docs]</a><span class="k">class</span> <span class="nc">Outcome</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;The outcome of an operation.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    kind: A Kind value coarsely identifying how the operation terminated.</span>
+<span class="sd">    code: An application-specific code value or None if no such value was</span>
+<span class="sd">      provided.</span>
+<span class="sd">    details: An application-specific details value or None if no such value was</span>
+<span class="sd">      provided.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="nd">@enum.unique</span>
+<div class="viewcode-block" id="Outcome.Kind"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Outcome.Kind">[docs]</a>  <span class="k">class</span> <span class="nc">Kind</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Ways in which an operation can terminate.&quot;&quot;&quot;</span>
+
+    <span class="n">COMPLETED</span> <span class="o">=</span> <span class="s">&#39;completed&#39;</span>
+    <span class="n">CANCELLED</span> <span class="o">=</span> <span class="s">&#39;cancelled&#39;</span>
+    <span class="n">EXPIRED</span> <span class="o">=</span> <span class="s">&#39;expired&#39;</span>
+    <span class="n">LOCAL_SHUTDOWN</span> <span class="o">=</span> <span class="s">&#39;local shutdown&#39;</span>
+    <span class="n">REMOTE_SHUTDOWN</span> <span class="o">=</span> <span class="s">&#39;remote shutdown&#39;</span>
+    <span class="n">RECEPTION_FAILURE</span> <span class="o">=</span> <span class="s">&#39;reception failure&#39;</span>
+    <span class="n">TRANSMISSION_FAILURE</span> <span class="o">=</span> <span class="s">&#39;transmission failure&#39;</span>
+    <span class="n">LOCAL_FAILURE</span> <span class="o">=</span> <span class="s">&#39;local failure&#39;</span>
+    <span class="n">REMOTE_FAILURE</span> <span class="o">=</span> <span class="s">&#39;remote failure&#39;</span>
+
+</div></div>
+<div class="viewcode-block" id="Completion"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Completion">[docs]</a><span class="k">class</span> <span class="nc">Completion</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;An aggregate of the values exchanged upon operation completion.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    terminal_metadata: A terminal metadata value for the operaton.</span>
+<span class="sd">    code: A code value for the operation.</span>
+<span class="sd">    message: A message value for the operation.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+</div>
+<div class="viewcode-block" id="OperationContext"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.OperationContext">[docs]</a><span class="k">class</span> <span class="nc">OperationContext</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Provides operation-related information and action.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="OperationContext.outcome"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.OperationContext.outcome">[docs]</a>  <span class="k">def</span> <span class="nf">outcome</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Indicates the operation&#39;s outcome (or that the operation is ongoing).</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      None if the operation is still active or the Outcome value for the</span>
+<span class="sd">        operation if it has terminated.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="OperationContext.add_termination_callback"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.OperationContext.add_termination_callback">[docs]</a>  <span class="k">def</span> <span class="nf">add_termination_callback</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">callback</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Adds a function to be called upon operation termination.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      callback: A callable to be passed an Outcome value on operation</span>
+<span class="sd">        termination.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      None if the operation has not yet terminated and the passed callback will</span>
+<span class="sd">        later be called when it does terminate, or if the operation has already</span>
+<span class="sd">        terminated an Outcome value describing the operation termination and the</span>
+<span class="sd">        passed callback will not be called as a result of this method call.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="OperationContext.time_remaining"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.OperationContext.time_remaining">[docs]</a>  <span class="k">def</span> <span class="nf">time_remaining</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Describes the length of allowed time remaining for the operation.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A nonnegative float indicating the length of allowed time in seconds</span>
+<span class="sd">      remaining for the operation to complete before it is considered to have</span>
+<span class="sd">      timed out. Zero is returned if the operation has terminated.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="OperationContext.cancel"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.OperationContext.cancel">[docs]</a>  <span class="k">def</span> <span class="nf">cancel</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Cancels the operation if the operation has not yet terminated.&quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="OperationContext.fail"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.OperationContext.fail">[docs]</a>  <span class="k">def</span> <span class="nf">fail</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">exception</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Indicates that the operation has failed.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      exception: An exception germane to the operation failure. May be None.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="Operator"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Operator">[docs]</a><span class="k">class</span> <span class="nc">Operator</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;An interface through which to participate in an operation.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Operator.advance"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Operator.advance">[docs]</a>  <span class="k">def</span> <span class="nf">advance</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">payload</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">completion</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">allowance</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Progresses the operation.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      initial_metadata: An initial metadata value. Only one may ever be</span>
+<span class="sd">        communicated in each direction for an operation, and they must be</span>
+<span class="sd">        communicated no later than either the first payload or the completion.</span>
+<span class="sd">      payload: A payload value.</span>
+<span class="sd">      completion: A Completion value. May only ever be non-None once in either</span>
+<span class="sd">        direction, and no payloads may be passed after it has been communicated.</span>
+<span class="sd">      allowance: A positive integer communicating the number of additional</span>
+<span class="sd">        payloads allowed to be passed by the remote side of the operation.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div></div>
+<div class="viewcode-block" id="ProtocolReceiver"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.ProtocolReceiver">[docs]</a><span class="k">class</span> <span class="nc">ProtocolReceiver</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A means of receiving protocol values during an operation.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ProtocolReceiver.context"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.ProtocolReceiver.context">[docs]</a>  <span class="k">def</span> <span class="nf">context</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">protocol_context</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accepts the protocol context object for the operation.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      protocol_context: The protocol context object for the operation.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="Subscription"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Subscription">[docs]</a><span class="k">class</span> <span class="nc">Subscription</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Describes customer code&#39;s interest in values from the other side.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    kind: A Kind value describing the overall kind of this value.</span>
+<span class="sd">    termination_callback: A callable to be passed the Outcome associated with</span>
+<span class="sd">      the operation after it has terminated. Must be non-None if kind is</span>
+<span class="sd">      Kind.TERMINATION_ONLY. Must be None otherwise.</span>
+<span class="sd">    allowance: A callable behavior that accepts positive integers representing</span>
+<span class="sd">      the number of additional payloads allowed to be passed to the other side</span>
+<span class="sd">      of the operation. Must be None if kind is Kind.FULL. Must not be None</span>
+<span class="sd">      otherwise.</span>
+<span class="sd">    operator: An Operator to be passed values from the other side of the</span>
+<span class="sd">      operation. Must be non-None if kind is Kind.FULL. Must be None otherwise.</span>
+<span class="sd">    protocol_receiver: A ProtocolReceiver to be passed protocol objects as they</span>
+<span class="sd">      become available during the operation. Must be non-None if kind is</span>
+<span class="sd">      Kind.FULL.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@enum.unique</span>
+<div class="viewcode-block" id="Subscription.Kind"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Subscription.Kind">[docs]</a>  <span class="k">class</span> <span class="nc">Kind</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
+
+    <span class="n">NONE</span> <span class="o">=</span> <span class="s">&#39;none&#39;</span>
+    <span class="n">TERMINATION_ONLY</span> <span class="o">=</span> <span class="s">&#39;termination only&#39;</span>
+    <span class="n">FULL</span> <span class="o">=</span> <span class="s">&#39;full&#39;</span>
+
+</div></div>
+<div class="viewcode-block" id="Servicer"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Servicer">[docs]</a><span class="k">class</span> <span class="nc">Servicer</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Interface for service implementations.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Servicer.service"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.Servicer.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">output_operator</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Services an operation.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the operation to be serviced.</span>
+<span class="sd">      method: The method identifier of the operation to be serviced.</span>
+<span class="sd">      context: An OperationContext object affording contextual information and</span>
+<span class="sd">        actions.</span>
+<span class="sd">      output_operator: An Operator that will accept output values of the</span>
+<span class="sd">        operation.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A Subscription via which this object may or may not accept more values of</span>
+<span class="sd">        the operation.</span>
+
+<span class="sd">    Raises:</span>
+<span class="sd">      NoSuchMethodError: If this Servicer does not handle operations with the</span>
+<span class="sd">        given group and method.</span>
+<span class="sd">      abandonment.Abandoned: If the operation has been aborted and there no</span>
+<span class="sd">        longer is any reason to service the operation.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="End"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.End">[docs]</a><span class="k">class</span> <span class="nc">End</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Common type for entry-point objects on both sides of an operation.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="End.start"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.End.start">[docs]</a>  <span class="k">def</span> <span class="nf">start</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Starts this object&#39;s service of operations.&quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="End.stop"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.End.stop">[docs]</a>  <span class="k">def</span> <span class="nf">stop</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">grace</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Stops this object&#39;s service of operations.</span>
+
+<span class="sd">    This object will refuse service of new operations as soon as this method is</span>
+<span class="sd">    called but operations under way at the time of the call may be given a</span>
+<span class="sd">    grace period during which they are allowed to finish.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      grace: A duration of time in seconds to allow ongoing operations to</span>
+<span class="sd">        terminate before being forcefully terminated by the stopping of this</span>
+<span class="sd">        End. May be zero to terminate all ongoing operations and immediately</span>
+<span class="sd">        stop.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A threading.Event that will be set to indicate all operations having</span>
+<span class="sd">        terminated and this End having completely stopped. The returned event</span>
+<span class="sd">        may not be set until after the full grace period (if some ongoing</span>
+<span class="sd">        operation continues for the full length of the period) or it may be set</span>
+<span class="sd">        much sooner (if for example this End had no operations in progress at</span>
+<span class="sd">        the time its stop method was called).</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="End.operate"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.End.operate">[docs]</a>  <span class="k">def</span> <span class="nf">operate</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">subscription</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">payload</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">completion</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Commences an operation.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the invoked operation.</span>
+<span class="sd">      method: The method identifier of the invoked operation.</span>
+<span class="sd">      subscription: A Subscription to which the results of the operation will be</span>
+<span class="sd">        passed.</span>
+<span class="sd">      timeout: A length of time in seconds to allow for the operation.</span>
+<span class="sd">      initial_metadata: An initial metadata value to be sent to the other side</span>
+<span class="sd">        of the operation. May be None if the initial metadata will be later</span>
+<span class="sd">        passed via the returned operator or if there will be no initial metadata</span>
+<span class="sd">        passed at all.</span>
+<span class="sd">      payload: An initial payload for the operation.</span>
+<span class="sd">      completion: A Completion value indicating the end of transmission to the</span>
+<span class="sd">        other side of the operation.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Base interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A pair of objects affording information about the operation and action</span>
+<span class="sd">        continuing the operation. The first element of the returned pair is an</span>
+<span class="sd">        OperationContext for the operation and the second element of the</span>
+<span class="sd">        returned pair is an Operator to which operation values not passed in</span>
+<span class="sd">        this call should later be passed.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="End.operation_stats"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.End.operation_stats">[docs]</a>  <span class="k">def</span> <span class="nf">operation_stats</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Reports the number of terminated operations broken down by outcome.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A dictionary from Outcome.Kind value to an integer identifying the number</span>
+<span class="sd">        of operations that terminated with that outcome kind.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="End.add_idle_action"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.base.End.add_idle_action">[docs]</a>  <span class="k">def</span> <span class="nf">add_idle_action</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">action</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Adds an action to be called when this End has no ongoing operations.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      action: A callable that accepts no arguments.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span></div></div>
+</pre></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 58 - 39
python/_modules/grpc/framework/face/testing/serial.html → python/_modules/grpc/framework/interfaces/base/utilities.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.face.testing.serial &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.interfaces.base.utilities &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -116,7 +123,7 @@
       
       
           <li><a href="../../../../index.html">Module code</a> &raquo;</li>
           <li><a href="../../../../index.html">Module code</a> &raquo;</li>
       
       
-    <li>grpc.framework.face.testing.serial</li>
+    <li>grpc.framework.interfaces.base.utilities</li>
       <li class="wy-breadcrumbs-aside">
       <li class="wy-breadcrumbs-aside">
         
         
           
           
@@ -127,7 +134,7 @@
 </div>
 </div>
           <div role="main" class="document">
           <div role="main" class="document">
             
             
-  <h1>Source code for grpc.framework.face.testing.serial</h1><div class="highlight"><pre>
+  <h1>Source code for grpc.framework.interfaces.base.utilities</h1><div class="highlight"><pre>
 <span class="c"># Copyright 2015, Google Inc.</span>
 <span class="c"># Copyright 2015, Google Inc.</span>
 <span class="c"># All rights reserved.</span>
 <span class="c"># All rights reserved.</span>
 <span class="c">#</span>
 <span class="c">#</span>
@@ -157,47 +164,59 @@
 <span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
 <span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
 <span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
 <span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
 
 
-<span class="sd">&quot;&quot;&quot;Utility for serialization in the context of test RPC services.&quot;&quot;&quot;</span>
+<span class="sd">&quot;&quot;&quot;Utilities for use with the base interface of RPC Framework.&quot;&quot;&quot;</span>
 
 
 <span class="kn">import</span> <span class="nn">collections</span>
 <span class="kn">import</span> <span class="nn">collections</span>
 
 
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.base</span> <span class="kn">import</span> <span class="n">base</span>
 
 
-<div class="viewcode-block" id="Serialization"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.serial.Serialization">[docs]</a><span class="k">class</span> <span class="nc">Serialization</span><span class="p">(</span>
+
+<span class="k">class</span> <span class="nc">_Completion</span><span class="p">(</span>
+    <span class="n">base</span><span class="o">.</span><span class="n">Completion</span><span class="p">,</span>
     <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
     <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
-        <span class="s">&#39;_Serialization&#39;</span><span class="p">,</span>
-        <span class="p">[</span><span class="s">&#39;request_serializers&#39;</span><span class="p">,</span>
-         <span class="s">&#39;request_deserializers&#39;</span><span class="p">,</span>
-         <span class="s">&#39;response_serializers&#39;</span><span class="p">,</span>
-         <span class="s">&#39;response_deserializers&#39;</span><span class="p">])):</span>
-  <span class="sd">&quot;&quot;&quot;An aggregation of serialization behaviors for an RPC service.</span>
-
-<span class="sd">  Attributes:</span>
-<span class="sd">    request_serializers: A dict from method name to request object serializer</span>
-<span class="sd">      behavior.</span>
-<span class="sd">    request_deserializers: A dict from method name to request object</span>
-<span class="sd">      deserializer behavior.</span>
-<span class="sd">    response_serializers: A dict from method name to response object serializer</span>
-<span class="sd">      behavior.</span>
-<span class="sd">    response_deserializers: A dict from method name to response object</span>
-<span class="sd">      deserializer behavior.</span>
+        <span class="s">&#39;_Completion&#39;</span><span class="p">,</span> <span class="p">(</span><span class="s">&#39;terminal_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;code&#39;</span><span class="p">,</span> <span class="s">&#39;message&#39;</span><span class="p">,))):</span>
+  <span class="sd">&quot;&quot;&quot;A trivial implementation of base.Completion.&quot;&quot;&quot;</span>
+
+
+<span class="k">class</span> <span class="nc">_Subscription</span><span class="p">(</span>
+    <span class="n">base</span><span class="o">.</span><span class="n">Subscription</span><span class="p">,</span>
+    <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
+        <span class="s">&#39;_Subscription&#39;</span><span class="p">,</span>
+        <span class="p">(</span><span class="s">&#39;kind&#39;</span><span class="p">,</span> <span class="s">&#39;termination_callback&#39;</span><span class="p">,</span> <span class="s">&#39;allowance&#39;</span><span class="p">,</span> <span class="s">&#39;operator&#39;</span><span class="p">,</span>
+         <span class="s">&#39;protocol_receiver&#39;</span><span class="p">,))):</span>
+  <span class="sd">&quot;&quot;&quot;A trivial implementation of base.Subscription.&quot;&quot;&quot;</span>
+
+<span class="n">_NONE_SUBSCRIPTION</span> <span class="o">=</span> <span class="n">_Subscription</span><span class="p">(</span>
+    <span class="n">base</span><span class="o">.</span><span class="n">Subscription</span><span class="o">.</span><span class="n">Kind</span><span class="o">.</span><span class="n">NONE</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+
+<div class="viewcode-block" id="completion"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.utilities.completion">[docs]</a><span class="k">def</span> <span class="nf">completion</span><span class="p">(</span><span class="n">terminal_metadata</span><span class="p">,</span> <span class="n">code</span><span class="p">,</span> <span class="n">message</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a base.Completion aggregating the given operation values.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    terminal_metadata: A terminal metadata value for an operaton.</span>
+<span class="sd">    code: A code value for an operation.</span>
+<span class="sd">    message: A message value for an operation.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A base.Completion aggregating the given operation values.</span>
 <span class="sd">  &quot;&quot;&quot;</span>
 <span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_Completion</span><span class="p">(</span><span class="n">terminal_metadata</span><span class="p">,</span> <span class="n">code</span><span class="p">,</span> <span class="n">message</span><span class="p">)</span>
 
 
 </div>
 </div>
-<div class="viewcode-block" id="serialization"><a class="viewcode-back" href="../../../../../grpc.framework.face.testing.html#grpc.framework.face.testing.serial.serialization">[docs]</a><span class="k">def</span> <span class="nf">serialization</span><span class="p">(</span><span class="n">methods</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Creates a Serialization from a sequences of interfaces.Method objects.&quot;&quot;&quot;</span>
-  <span class="n">request_serializers</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="n">request_deserializers</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="n">response_serializers</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="n">response_deserializers</span> <span class="o">=</span> <span class="p">{}</span>
-  <span class="k">for</span> <span class="n">method</span> <span class="ow">in</span> <span class="n">methods</span><span class="p">:</span>
-    <span class="n">name</span> <span class="o">=</span> <span class="n">method</span><span class="o">.</span><span class="n">name</span><span class="p">()</span>
-    <span class="n">request_serializers</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">method</span><span class="o">.</span><span class="n">serialize_request</span>
-    <span class="n">request_deserializers</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">method</span><span class="o">.</span><span class="n">deserialize_request</span>
-    <span class="n">response_serializers</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">method</span><span class="o">.</span><span class="n">serialize_response</span>
-    <span class="n">response_deserializers</span><span class="p">[</span><span class="n">name</span><span class="p">]</span> <span class="o">=</span> <span class="n">method</span><span class="o">.</span><span class="n">deserialize_response</span>
-  <span class="k">return</span> <span class="n">Serialization</span><span class="p">(</span>
-      <span class="n">request_serializers</span><span class="p">,</span> <span class="n">request_deserializers</span><span class="p">,</span> <span class="n">response_serializers</span><span class="p">,</span>
-      <span class="n">response_deserializers</span><span class="p">)</span></div>
+<div class="viewcode-block" id="full_subscription"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.base.html#grpc.framework.interfaces.base.utilities.full_subscription">[docs]</a><span class="k">def</span> <span class="nf">full_subscription</span><span class="p">(</span><span class="n">operator</span><span class="p">,</span> <span class="n">protocol_receiver</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates a &quot;full&quot; base.Subscription for the given base.Operator.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    operator: A base.Operator to be used in an operation.</span>
+<span class="sd">    protocol_receiver: A base.ProtocolReceiver to be used in an operation.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    A base.Subscription of kind base.Subscription.Kind.FULL wrapping the given</span>
+<span class="sd">      base.Operator and base.ProtocolReceiver.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_Subscription</span><span class="p">(</span>
+      <span class="n">base</span><span class="o">.</span><span class="n">Subscription</span><span class="o">.</span><span class="n">Kind</span><span class="o">.</span><span class="n">FULL</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">operator</span><span class="p">,</span> <span class="n">protocol_receiver</span><span class="p">)</span></div>
 </pre></div>
 </pre></div>
 
 
           </div>
           </div>
@@ -229,7 +248,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../../',
             URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 1188 - 0
python/_modules/grpc/framework/interfaces/face/face.html

@@ -0,0 +1,1188 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.framework.interfaces.face.face &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../../index.html"/>
+        <link rel="up" title="Module code" href="../../../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.framework.interfaces.face.face</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.framework.interfaces.face.face</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;Interfaces defining the Face layer of RPC Framework.&quot;&quot;&quot;</span>
+
+<span class="kn">import</span> <span class="nn">abc</span>
+<span class="kn">import</span> <span class="nn">collections</span>
+<span class="kn">import</span> <span class="nn">enum</span>
+
+<span class="c"># cardinality, style, abandonment, future, and stream are</span>
+<span class="c"># referenced from specification in this module.</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">style</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">abandonment</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">future</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>  <span class="c"># pylint: disable=unused-import</span>
+
+
+<div class="viewcode-block" id="NoSuchMethodError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.NoSuchMethodError">[docs]</a><span class="k">class</span> <span class="nc">NoSuchMethodError</span><span class="p">(</span><span class="ne">Exception</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Raised by customer code to indicate an unrecognized method.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    group: The group of the unrecognized method.</span>
+<span class="sd">    name: The name of the unrecognized method.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Constructor.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the unrecognized RPC name.</span>
+<span class="sd">      method: The method identifier of the unrecognized RPC name.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="nb">super</span><span class="p">(</span><span class="n">NoSuchMethodError</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="n">__init__</span><span class="p">()</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">group</span> <span class="o">=</span> <span class="n">group</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">method</span> <span class="o">=</span> <span class="n">method</span>
+
+  <span class="k">def</span> <span class="nf">__repr__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">return</span> <span class="s">&#39;face.NoSuchMethodError(</span><span class="si">%s</span><span class="s">, </span><span class="si">%s</span><span class="s">)&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">group</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">method</span><span class="p">,)</span>
+
+</div>
+<div class="viewcode-block" id="Abortion"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Abortion">[docs]</a><span class="k">class</span> <span class="nc">Abortion</span><span class="p">(</span>
+    <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
+        <span class="s">&#39;Abortion&#39;</span><span class="p">,</span>
+        <span class="p">(</span><span class="s">&#39;kind&#39;</span><span class="p">,</span> <span class="s">&#39;initial_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;terminal_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;code&#39;</span><span class="p">,</span> <span class="s">&#39;details&#39;</span><span class="p">,))):</span>
+  <span class="sd">&quot;&quot;&quot;A value describing RPC abortion.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    kind: A Kind value identifying how the RPC failed.</span>
+<span class="sd">    initial_metadata: The initial metadata from the other side of the RPC or</span>
+<span class="sd">      None if no initial metadata value was received.</span>
+<span class="sd">    terminal_metadata: The terminal metadata from the other side of the RPC or</span>
+<span class="sd">      None if no terminal metadata value was received.</span>
+<span class="sd">    code: The code value from the other side of the RPC or None if no code value</span>
+<span class="sd">      was received.</span>
+<span class="sd">    details: The details value from the other side of the RPC or None if no</span>
+<span class="sd">      details value was received.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="nd">@enum.unique</span>
+<div class="viewcode-block" id="Abortion.Kind"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Abortion.Kind">[docs]</a>  <span class="k">class</span> <span class="nc">Kind</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Types of RPC abortion.&quot;&quot;&quot;</span>
+
+    <span class="n">CANCELLED</span> <span class="o">=</span> <span class="s">&#39;cancelled&#39;</span>
+    <span class="n">EXPIRED</span> <span class="o">=</span> <span class="s">&#39;expired&#39;</span>
+    <span class="n">LOCAL_SHUTDOWN</span> <span class="o">=</span> <span class="s">&#39;local shutdown&#39;</span>
+    <span class="n">REMOTE_SHUTDOWN</span> <span class="o">=</span> <span class="s">&#39;remote shutdown&#39;</span>
+    <span class="n">NETWORK_FAILURE</span> <span class="o">=</span> <span class="s">&#39;network failure&#39;</span>
+    <span class="n">LOCAL_FAILURE</span> <span class="o">=</span> <span class="s">&#39;local failure&#39;</span>
+    <span class="n">REMOTE_FAILURE</span> <span class="o">=</span> <span class="s">&#39;remote failure&#39;</span>
+
+</div></div>
+<div class="viewcode-block" id="AbortionError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.AbortionError">[docs]</a><span class="k">class</span> <span class="nc">AbortionError</span><span class="p">(</span><span class="ne">Exception</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Common super type for exceptions indicating RPC abortion.</span>
+
+<span class="sd">    initial_metadata: The initial metadata from the other side of the RPC or</span>
+<span class="sd">      None if no initial metadata value was received.</span>
+<span class="sd">    terminal_metadata: The terminal metadata from the other side of the RPC or</span>
+<span class="sd">      None if no terminal metadata value was received.</span>
+<span class="sd">    code: The code value from the other side of the RPC or None if no code value</span>
+<span class="sd">      was received.</span>
+<span class="sd">    details: The details value from the other side of the RPC or None if no</span>
+<span class="sd">      details value was received.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">,</span> <span class="n">code</span><span class="p">,</span> <span class="n">details</span><span class="p">):</span>
+    <span class="nb">super</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">,</span> <span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="n">__init__</span><span class="p">()</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">initial_metadata</span> <span class="o">=</span> <span class="n">initial_metadata</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">terminal_metadata</span> <span class="o">=</span> <span class="n">terminal_metadata</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">code</span> <span class="o">=</span> <span class="n">code</span>
+    <span class="bp">self</span><span class="o">.</span><span class="n">details</span> <span class="o">=</span> <span class="n">details</span>
+
+</div>
+<div class="viewcode-block" id="CancellationError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.CancellationError">[docs]</a><span class="k">class</span> <span class="nc">CancellationError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an RPC has been cancelled.&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="ExpirationError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ExpirationError">[docs]</a><span class="k">class</span> <span class="nc">ExpirationError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an RPC has expired (&quot;timed out&quot;).&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="LocalShutdownError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.LocalShutdownError">[docs]</a><span class="k">class</span> <span class="nc">LocalShutdownError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an RPC has terminated due to local shutdown of RPCs.&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="RemoteShutdownError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RemoteShutdownError">[docs]</a><span class="k">class</span> <span class="nc">RemoteShutdownError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an RPC has terminated due to remote shutdown of RPCs.&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="NetworkError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.NetworkError">[docs]</a><span class="k">class</span> <span class="nc">NetworkError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that some error occurred on the network.&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="LocalError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.LocalError">[docs]</a><span class="k">class</span> <span class="nc">LocalError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an RPC has terminated due to a local defect.&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="RemoteError"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RemoteError">[docs]</a><span class="k">class</span> <span class="nc">RemoteError</span><span class="p">(</span><span class="n">AbortionError</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Indicates that an RPC has terminated due to a remote defect.&quot;&quot;&quot;</span>
+
+</div>
+<div class="viewcode-block" id="RpcContext"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RpcContext">[docs]</a><span class="k">class</span> <span class="nc">RpcContext</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Provides RPC-related information and action.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="RpcContext.is_active"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RpcContext.is_active">[docs]</a>  <span class="k">def</span> <span class="nf">is_active</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Describes whether the RPC is active or has terminated.&quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="RpcContext.time_remaining"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RpcContext.time_remaining">[docs]</a>  <span class="k">def</span> <span class="nf">time_remaining</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Describes the length of allowed time remaining for the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A nonnegative float indicating the length of allowed time in seconds</span>
+<span class="sd">      remaining for the RPC to complete before it is considered to have timed</span>
+<span class="sd">      out.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="RpcContext.add_abortion_callback"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RpcContext.add_abortion_callback">[docs]</a>  <span class="k">def</span> <span class="nf">add_abortion_callback</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Registers a callback to be called if the RPC is aborted.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      abortion_callback: A callable to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="RpcContext.cancel"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RpcContext.cancel">[docs]</a>  <span class="k">def</span> <span class="nf">cancel</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Cancels the RPC.</span>
+
+<span class="sd">    Idempotent and has no effect if the RPC has already terminated.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="RpcContext.protocol_context"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.RpcContext.protocol_context">[docs]</a>  <span class="k">def</span> <span class="nf">protocol_context</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accesses a custom object specified by an implementation provider.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A value specified by the provider of a Face interface implementation</span>
+<span class="sd">        affording custom state and behavior.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="Call"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Call">[docs]</a><span class="k">class</span> <span class="nc">Call</span><span class="p">(</span><span class="n">RpcContext</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Invocation-side utility object for an RPC.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Call.initial_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Call.initial_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">initial_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accesses the initial metadata from the service-side of the RPC.</span>
+
+<span class="sd">    This method blocks until the value is available or is known not to have been</span>
+<span class="sd">    emitted from the service-side of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The initial metadata object emitted by the service-side of the RPC, or</span>
+<span class="sd">        None if there was no such value.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Call.terminal_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Call.terminal_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">terminal_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accesses the terminal metadata from the service-side of the RPC.</span>
+
+<span class="sd">    This method blocks until the value is available or is known not to have been</span>
+<span class="sd">    emitted from the service-side of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The terminal metadata object emitted by the service-side of the RPC, or</span>
+<span class="sd">        None if there was no such value.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Call.code"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Call.code">[docs]</a>  <span class="k">def</span> <span class="nf">code</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accesses the code emitted by the service-side of the RPC.</span>
+
+<span class="sd">    This method blocks until the value is available or is known not to have been</span>
+<span class="sd">    emitted from the service-side of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The code object emitted by the service-side of the RPC, or None if there</span>
+<span class="sd">        was no such value.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="Call.details"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.Call.details">[docs]</a>  <span class="k">def</span> <span class="nf">details</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accesses the details value emitted by the service-side of the RPC.</span>
+
+<span class="sd">    This method blocks until the value is available or is known not to have been</span>
+<span class="sd">    emitted from the service-side of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The details value emitted by the service-side of the RPC, or None if there</span>
+<span class="sd">        was no such value.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="ServicerContext"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ServicerContext">[docs]</a><span class="k">class</span> <span class="nc">ServicerContext</span><span class="p">(</span><span class="n">RpcContext</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A context object passed to method implementations.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ServicerContext.invocation_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ServicerContext.invocation_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">invocation_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accesses the metadata from the invocation-side of the RPC.</span>
+
+<span class="sd">    This method blocks until the value is available or is known not to have been</span>
+<span class="sd">    emitted from the invocation-side of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The metadata object emitted by the invocation-side of the RPC, or None if</span>
+<span class="sd">        there was no such value.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ServicerContext.initial_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ServicerContext.initial_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">initial_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accepts the service-side initial metadata value of the RPC.</span>
+
+<span class="sd">    This method need not be called by method implementations if they have no</span>
+<span class="sd">    service-side initial metadata to transmit.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      initial_metadata: The service-side initial metadata value of the RPC to</span>
+<span class="sd">        be transmitted to the invocation side of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ServicerContext.terminal_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ServicerContext.terminal_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">terminal_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accepts the service-side terminal metadata value of the RPC.</span>
+
+<span class="sd">    This method need not be called by method implementations if they have no</span>
+<span class="sd">    service-side terminal metadata to transmit.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      terminal_metadata: The service-side terminal metadata value of the RPC to</span>
+<span class="sd">        be transmitted to the invocation side of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ServicerContext.code"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ServicerContext.code">[docs]</a>  <span class="k">def</span> <span class="nf">code</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">code</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accepts the service-side code of the RPC.</span>
+
+<span class="sd">    This method need not be called by method implementations if they have no</span>
+<span class="sd">    code to transmit.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      code: The code of the RPC to be transmitted to the invocation side of the</span>
+<span class="sd">        RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ServicerContext.details"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ServicerContext.details">[docs]</a>  <span class="k">def</span> <span class="nf">details</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">details</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Accepts the service-side details of the RPC.</span>
+
+<span class="sd">    This method need not be called by method implementations if they have no</span>
+<span class="sd">    service-side details to transmit.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      details: The service-side details value of the RPC to be transmitted to</span>
+<span class="sd">        the invocation side of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="ResponseReceiver"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ResponseReceiver">[docs]</a><span class="k">class</span> <span class="nc">ResponseReceiver</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Invocation-side object used to accept the output of an RPC.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ResponseReceiver.initial_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ResponseReceiver.initial_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">initial_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Receives the initial metadata from the service-side of the RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      initial_metadata: The initial metadata object emitted from the</span>
+<span class="sd">        service-side of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ResponseReceiver.response"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ResponseReceiver.response">[docs]</a>  <span class="k">def</span> <span class="nf">response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Receives a response from the service-side of the RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      response: A response object emitted from the service-side of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="ResponseReceiver.complete"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.ResponseReceiver.complete">[docs]</a>  <span class="k">def</span> <span class="nf">complete</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">,</span> <span class="n">code</span><span class="p">,</span> <span class="n">details</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Receives the completion values emitted from the service-side of the RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      terminal_metadata: The terminal metadata object emitted from the</span>
+<span class="sd">        service-side of the RPC.</span>
+<span class="sd">      code: The code object emitted from the service-side of the RPC.</span>
+<span class="sd">      details: The details object emitted from the service-side of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="UnaryUnaryMultiCallable"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryUnaryMultiCallable">[docs]</a><span class="k">class</span> <span class="nc">UnaryUnaryMultiCallable</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Affords invoking a unary-unary RPC in any call style.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="UnaryUnaryMultiCallable.__call__"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryUnaryMultiCallable.__call__">[docs]</a>  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">with_call</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Synchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      with_call: Whether or not to include return a Call for the RPC in addition</span>
+<span class="sd">        to the reponse.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The response value for the RPC, and a Call for the RPC if with_call was</span>
+<span class="sd">        set to True at invocation.</span>
+
+<span class="sd">    Raises:</span>
+<span class="sd">      AbortionError: Indicating that the RPC was aborted.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="UnaryUnaryMultiCallable.future"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryUnaryMultiCallable.future">[docs]</a>  <span class="k">def</span> <span class="nf">future</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Asynchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and a future.Future. In the</span>
+<span class="sd">        event of RPC completion, the return Future&#39;s result value will be the</span>
+<span class="sd">        response value of the RPC. In the event of RPC abortion, the returned</span>
+<span class="sd">        Future&#39;s exception value will be an AbortionError.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="UnaryUnaryMultiCallable.event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryUnaryMultiCallable.event">[docs]</a>  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Asynchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A Call for the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="UnaryStreamMultiCallable"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryStreamMultiCallable">[docs]</a><span class="k">class</span> <span class="nc">UnaryStreamMultiCallable</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Affords invoking a unary-stream RPC in any call style.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="UnaryStreamMultiCallable.__call__"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryStreamMultiCallable.__call__">[docs]</a>  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and an iterator of response</span>
+<span class="sd">        values. Drawing response values from the returned iterator may raise</span>
+<span class="sd">        AbortionError indicating abortion of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="UnaryStreamMultiCallable.event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.UnaryStreamMultiCallable.event">[docs]</a>  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Asynchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A Call object for the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="StreamUnaryMultiCallable"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamUnaryMultiCallable">[docs]</a><span class="k">class</span> <span class="nc">StreamUnaryMultiCallable</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Affords invoking a stream-unary RPC in any call style.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="StreamUnaryMultiCallable.__call__"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamUnaryMultiCallable.__call__">[docs]</a>  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">with_call</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Synchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request_iterator: An iterator that yields request values for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      with_call: Whether or not to include return a Call for the RPC in addition</span>
+<span class="sd">        to the reponse.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The response value for the RPC, and a Call for the RPC if with_call was</span>
+<span class="sd">        set to True at invocation.</span>
+
+<span class="sd">    Raises:</span>
+<span class="sd">      AbortionError: Indicating that the RPC was aborted.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="StreamUnaryMultiCallable.future"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamUnaryMultiCallable.future">[docs]</a>  <span class="k">def</span> <span class="nf">future</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Asynchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request_iterator: An iterator that yields request values for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and a future.Future. In the</span>
+<span class="sd">        event of RPC completion, the return Future&#39;s result value will be the</span>
+<span class="sd">        response value of the RPC. In the event of RPC abortion, the returned</span>
+<span class="sd">        Future&#39;s exception value will be an AbortionError.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="StreamUnaryMultiCallable.event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamUnaryMultiCallable.event">[docs]</a>  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Asynchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A single object that is both a Call object for the RPC and a</span>
+<span class="sd">        stream.Consumer to which the request values of the RPC should be passed.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="StreamStreamMultiCallable"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamStreamMultiCallable">[docs]</a><span class="k">class</span> <span class="nc">StreamStreamMultiCallable</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Affords invoking a stream-stream RPC in any call style.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="StreamStreamMultiCallable.__call__"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamStreamMultiCallable.__call__">[docs]</a>  <span class="k">def</span> <span class="nf">__call__</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      request_iterator: An iterator that yields request values for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and an iterator of response</span>
+<span class="sd">        values. Drawing response values from the returned iterator may raise</span>
+<span class="sd">        AbortionError indicating abortion of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="StreamStreamMultiCallable.event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.StreamStreamMultiCallable.event">[docs]</a>  <span class="k">def</span> <span class="nf">event</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Asynchronously invokes the underlying RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of</span>
+<span class="sd">        the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A single object that is both a Call object for the RPC and a</span>
+<span class="sd">        stream.Consumer to which the request values of the RPC should be passed.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="MethodImplementation"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.MethodImplementation">[docs]</a><span class="k">class</span> <span class="nc">MethodImplementation</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A sum type that describes a method implementation.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    cardinality: A cardinality.Cardinality value.</span>
+<span class="sd">    style: A style.Service value.</span>
+<span class="sd">    unary_unary_inline: The implementation of the method as a callable value</span>
+<span class="sd">      that takes a request value and a ServicerContext object and returns a</span>
+<span class="sd">      response value. Only non-None if cardinality is</span>
+<span class="sd">      cardinality.Cardinality.UNARY_UNARY and style is style.Service.INLINE.</span>
+<span class="sd">    unary_stream_inline: The implementation of the method as a callable value</span>
+<span class="sd">      that takes a request value and a ServicerContext object and returns an</span>
+<span class="sd">      iterator of response values. Only non-None if cardinality is</span>
+<span class="sd">      cardinality.Cardinality.UNARY_STREAM and style is style.Service.INLINE.</span>
+<span class="sd">    stream_unary_inline: The implementation of the method as a callable value</span>
+<span class="sd">      that takes an iterator of request values and a ServicerContext object and</span>
+<span class="sd">      returns a response value. Only non-None if cardinality is</span>
+<span class="sd">      cardinality.Cardinality.STREAM_UNARY and style is style.Service.INLINE.</span>
+<span class="sd">    stream_stream_inline: The implementation of the method as a callable value</span>
+<span class="sd">      that takes an iterator of request values and a ServicerContext object and</span>
+<span class="sd">      returns an iterator of response values. Only non-None if cardinality is</span>
+<span class="sd">      cardinality.Cardinality.STREAM_STREAM and style is style.Service.INLINE.</span>
+<span class="sd">    unary_unary_event: The implementation of the method as a callable value that</span>
+<span class="sd">      takes a request value, a response callback to which to pass the response</span>
+<span class="sd">      value of the RPC, and a ServicerContext. Only non-None if cardinality is</span>
+<span class="sd">      cardinality.Cardinality.UNARY_UNARY and style is style.Service.EVENT.</span>
+<span class="sd">    unary_stream_event: The implementation of the method as a callable value</span>
+<span class="sd">      that takes a request value, a stream.Consumer to which to pass the</span>
+<span class="sd">      response values of the RPC, and a ServicerContext. Only non-None if</span>
+<span class="sd">      cardinality is cardinality.Cardinality.UNARY_STREAM and style is</span>
+<span class="sd">      style.Service.EVENT.</span>
+<span class="sd">    stream_unary_event: The implementation of the method as a callable value</span>
+<span class="sd">      that takes a response callback to which to pass the response value of the</span>
+<span class="sd">      RPC and a ServicerContext and returns a stream.Consumer to which the</span>
+<span class="sd">      request values of the RPC should be passed. Only non-None if cardinality</span>
+<span class="sd">      is cardinality.Cardinality.STREAM_UNARY and style is style.Service.EVENT.</span>
+<span class="sd">    stream_stream_event: The implementation of the method as a callable value</span>
+<span class="sd">      that takes a stream.Consumer to which to pass the response values of the</span>
+<span class="sd">      RPC and a ServicerContext and returns a stream.Consumer to which the</span>
+<span class="sd">      request values of the RPC should be passed. Only non-None if cardinality</span>
+<span class="sd">      is cardinality.Cardinality.STREAM_STREAM and style is</span>
+<span class="sd">      style.Service.EVENT.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+</div>
+<div class="viewcode-block" id="MultiMethodImplementation"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.MultiMethodImplementation">[docs]</a><span class="k">class</span> <span class="nc">MultiMethodImplementation</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;A general type able to service many methods.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="MultiMethodImplementation.service"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.MultiMethodImplementation.service">[docs]</a>  <span class="k">def</span> <span class="nf">service</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">response_consumer</span><span class="p">,</span> <span class="n">context</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Services an RPC.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      response_consumer: A stream.Consumer to be called to accept the response</span>
+<span class="sd">        values of the RPC.</span>
+<span class="sd">      context: a ServicerContext object.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A stream.Consumer with which to accept the request values of the RPC. The</span>
+<span class="sd">        consumer returned from this method may or may not be invoked to</span>
+<span class="sd">        completion: in the case of RPC abortion, RPC Framework will simply stop</span>
+<span class="sd">        passing values to this object. Implementations must not assume that this</span>
+<span class="sd">        object will be called to completion of the request stream or even called</span>
+<span class="sd">        at all.</span>
+
+<span class="sd">    Raises:</span>
+<span class="sd">      abandonment.Abandoned: May or may not be raised when the RPC has been</span>
+<span class="sd">        aborted.</span>
+<span class="sd">      NoSuchMethodError: If this MultiMethod does not recognize the given group</span>
+<span class="sd">        and name for the RPC and is not able to service the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="GenericStub"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub">[docs]</a><span class="k">class</span> <span class="nc">GenericStub</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Affords RPC invocation via generic methods.&quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
+
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.blocking_unary_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.blocking_unary_unary">[docs]</a>  <span class="k">def</span> <span class="nf">blocking_unary_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">with_call</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes a unary-request-unary-response method.</span>
+
+<span class="sd">    This method blocks until either returning the response value of the RPC</span>
+<span class="sd">    (in the event of RPC completion) or raising an exception (in the event of</span>
+<span class="sd">    RPC abortion).</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      with_call: Whether or not to include return a Call for the RPC in addition</span>
+<span class="sd">        to the reponse.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The response value for the RPC, and a Call for the RPC if with_call was</span>
+<span class="sd">        set to True at invocation.</span>
+
+<span class="sd">    Raises:</span>
+<span class="sd">      AbortionError: Indicating that the RPC was aborted.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.future_unary_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.future_unary_unary">[docs]</a>  <span class="k">def</span> <span class="nf">future_unary_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes a unary-request-unary-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and a future.Future. In the</span>
+<span class="sd">        event of RPC completion, the return Future&#39;s result value will be the</span>
+<span class="sd">        response value of the RPC. In the event of RPC abortion, the returned</span>
+<span class="sd">        Future&#39;s exception value will be an AbortionError.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.inline_unary_stream"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.inline_unary_stream">[docs]</a>  <span class="k">def</span> <span class="nf">inline_unary_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes a unary-request-stream-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and an iterator of response</span>
+<span class="sd">        values. Drawing response values from the returned iterator may raise</span>
+<span class="sd">        AbortionError indicating abortion of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.blocking_stream_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.blocking_stream_unary">[docs]</a>  <span class="k">def</span> <span class="nf">blocking_stream_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">with_call</span><span class="o">=</span><span class="bp">False</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes a stream-request-unary-response method.</span>
+
+<span class="sd">    This method blocks until either returning the response value of the RPC</span>
+<span class="sd">    (in the event of RPC completion) or raising an exception (in the event of</span>
+<span class="sd">    RPC abortion).</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request_iterator: An iterator that yields request values for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      with_call: Whether or not to include return a Call for the RPC in addition</span>
+<span class="sd">        to the reponse.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      The response value for the RPC, and a Call for the RPC if with_call was</span>
+<span class="sd">        set to True at invocation.</span>
+
+<span class="sd">    Raises:</span>
+<span class="sd">      AbortionError: Indicating that the RPC was aborted.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.future_stream_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.future_stream_unary">[docs]</a>  <span class="k">def</span> <span class="nf">future_stream_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes a stream-request-unary-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request_iterator: An iterator that yields request values for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and a future.Future. In the</span>
+<span class="sd">        event of RPC completion, the return Future&#39;s result value will be the</span>
+<span class="sd">        response value of the RPC. In the event of RPC abortion, the returned</span>
+<span class="sd">        Future&#39;s exception value will be an AbortionError.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.inline_stream_stream"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.inline_stream_stream">[docs]</a>  <span class="k">def</span> <span class="nf">inline_stream_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request_iterator</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span>
+      <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Invokes a stream-request-stream-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request_iterator: An iterator that yields request values for the RPC.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      An object that is both a Call for the RPC and an iterator of response</span>
+<span class="sd">        values. Drawing response values from the returned iterator may raise</span>
+<span class="sd">        AbortionError indicating abortion of the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.event_unary_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.event_unary_unary">[docs]</a>  <span class="k">def</span> <span class="nf">event_unary_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Event-driven invocation of a unary-request-unary-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A Call for the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.event_unary_stream"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.event_unary_stream">[docs]</a>  <span class="k">def</span> <span class="nf">event_unary_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">request</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Event-driven invocation of a unary-request-stream-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      request: The request value for the RPC.</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A Call for the RPC.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.event_stream_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.event_stream_unary">[docs]</a>  <span class="k">def</span> <span class="nf">event_stream_unary</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Event-driven invocation of a unary-request-unary-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A pair of a Call object for the RPC and a stream.Consumer to which the</span>
+<span class="sd">        request values of the RPC should be passed.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.event_stream_stream"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.event_stream_stream">[docs]</a>  <span class="k">def</span> <span class="nf">event_stream_stream</span><span class="p">(</span>
+      <span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">receiver</span><span class="p">,</span> <span class="n">abortion_callback</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span>
+      <span class="n">metadata</span><span class="o">=</span><span class="bp">None</span><span class="p">,</span> <span class="n">protocol_options</span><span class="o">=</span><span class="bp">None</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Event-driven invocation of a unary-request-stream-response method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+<span class="sd">      receiver: A ResponseReceiver to be passed the response data of the RPC.</span>
+<span class="sd">      abortion_callback: A callback to be called and passed an Abortion value</span>
+<span class="sd">        in the event of RPC abortion.</span>
+<span class="sd">      timeout: A duration of time in seconds to allow for the RPC.</span>
+<span class="sd">      metadata: A metadata value to be passed to the service-side of the RPC.</span>
+<span class="sd">      protocol_options: A value specified by the provider of a Face interface</span>
+<span class="sd">        implementation affording custom state and behavior.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A pair of a Call object for the RPC and a stream.Consumer to which the</span>
+<span class="sd">        request values of the RPC should be passed.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.unary_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.unary_unary">[docs]</a>  <span class="k">def</span> <span class="nf">unary_unary</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Creates a UnaryUnaryMultiCallable for a unary-unary method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A UnaryUnaryMultiCallable value for the named unary-unary method.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.unary_stream"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.unary_stream">[docs]</a>  <span class="k">def</span> <span class="nf">unary_stream</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Creates a UnaryStreamMultiCallable for a unary-stream method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A UnaryStreamMultiCallable value for the name unary-stream method.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.stream_unary"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.stream_unary">[docs]</a>  <span class="k">def</span> <span class="nf">stream_unary</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Creates a StreamUnaryMultiCallable for a stream-unary method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A StreamUnaryMultiCallable value for the named stream-unary method.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+</div>
+  <span class="nd">@abc.abstractmethod</span>
+<div class="viewcode-block" id="GenericStub.stream_stream"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.GenericStub.stream_stream">[docs]</a>  <span class="k">def</span> <span class="nf">stream_stream</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;Creates a StreamStreamMultiCallable for a stream-stream method.</span>
+
+<span class="sd">    Args:</span>
+<span class="sd">      group: The group identifier of the RPC.</span>
+<span class="sd">      method: The method identifier of the RPC.</span>
+
+<span class="sd">    Returns:</span>
+<span class="sd">      A StreamStreamMultiCallable value for the named stream-stream method.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
+
+</div></div>
+<div class="viewcode-block" id="DynamicStub"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.face.DynamicStub">[docs]</a><span class="k">class</span> <span class="nc">DynamicStub</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Affords RPC invocation via attributes corresponding to afforded methods.</span>
+
+<span class="sd">  Instances of this type may be scoped to a single group so that attribute</span>
+<span class="sd">  access is unambiguous.</span>
+
+<span class="sd">  Instances of this type respond to attribute access as follows: if the</span>
+<span class="sd">  requested attribute is the name of a unary-unary method, the value of the</span>
+<span class="sd">  attribute will be a UnaryUnaryMultiCallable with which to invoke an RPC; if</span>
+<span class="sd">  the requested attribute is the name of a unary-stream method, the value of the</span>
+<span class="sd">  attribute will be a UnaryStreamMultiCallable with which to invoke an RPC; if</span>
+<span class="sd">  the requested attribute is the name of a stream-unary method, the value of the</span>
+<span class="sd">  attribute will be a StreamUnaryMultiCallable with which to invoke an RPC; and</span>
+<span class="sd">  if the requested attribute is the name of a stream-stream method, the value of</span>
+<span class="sd">  the attribute will be a StreamStreamMultiCallable with which to invoke an RPC.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span></div>
+</pre></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 374 - 0
python/_modules/grpc/framework/interfaces/face/utilities.html

@@ -0,0 +1,374 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.framework.interfaces.face.utilities &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../../index.html"/>
+        <link rel="up" title="Module code" href="../../../../index.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="../../../../../index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="../../../../../index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
+      
+    <li>grpc.framework.interfaces.face.utilities</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <h1>Source code for grpc.framework.interfaces.face.utilities</h1><div class="highlight"><pre>
+<span class="c"># Copyright 2015, Google Inc.</span>
+<span class="c"># All rights reserved.</span>
+<span class="c">#</span>
+<span class="c"># Redistribution and use in source and binary forms, with or without</span>
+<span class="c"># modification, are permitted provided that the following conditions are</span>
+<span class="c"># met:</span>
+<span class="c">#</span>
+<span class="c">#     * Redistributions of source code must retain the above copyright</span>
+<span class="c"># notice, this list of conditions and the following disclaimer.</span>
+<span class="c">#     * Redistributions in binary form must reproduce the above</span>
+<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
+<span class="c"># in the documentation and/or other materials provided with the</span>
+<span class="c"># distribution.</span>
+<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
+<span class="c"># contributors may be used to endorse or promote products derived from</span>
+<span class="c"># this software without specific prior written permission.</span>
+<span class="c">#</span>
+<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
+<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
+<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
+<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
+<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
+<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
+<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
+<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
+<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
+<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
+
+<span class="sd">&quot;&quot;&quot;Utilities for RPC Framework&#39;s Face interface.&quot;&quot;&quot;</span>
+
+<span class="kn">import</span> <span class="nn">collections</span>
+
+<span class="c"># stream is referenced from specification in this module.</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">cardinality</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">style</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.foundation</span> <span class="kn">import</span> <span class="n">stream</span>  <span class="c"># pylint: disable=unused-import</span>
+<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.face</span> <span class="kn">import</span> <span class="n">face</span>
+
+
+<span class="k">class</span> <span class="nc">_MethodImplementation</span><span class="p">(</span>
+    <span class="n">face</span><span class="o">.</span><span class="n">MethodImplementation</span><span class="p">,</span>
+    <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
+        <span class="s">&#39;_MethodImplementation&#39;</span><span class="p">,</span>
+        <span class="p">[</span><span class="s">&#39;cardinality&#39;</span><span class="p">,</span> <span class="s">&#39;style&#39;</span><span class="p">,</span> <span class="s">&#39;unary_unary_inline&#39;</span><span class="p">,</span> <span class="s">&#39;unary_stream_inline&#39;</span><span class="p">,</span>
+         <span class="s">&#39;stream_unary_inline&#39;</span><span class="p">,</span> <span class="s">&#39;stream_stream_inline&#39;</span><span class="p">,</span> <span class="s">&#39;unary_unary_event&#39;</span><span class="p">,</span>
+         <span class="s">&#39;unary_stream_event&#39;</span><span class="p">,</span> <span class="s">&#39;stream_unary_event&#39;</span><span class="p">,</span> <span class="s">&#39;stream_stream_event&#39;</span><span class="p">,])):</span>
+  <span class="k">pass</span>
+
+
+<div class="viewcode-block" id="unary_unary_inline"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.unary_unary_inline">[docs]</a><span class="k">def</span> <span class="nf">unary_unary_inline</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a unary-unary RPC method as a callable value</span>
+<span class="sd">      that takes a request value and an face.ServicerContext object and</span>
+<span class="sd">      returns a response value.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span>
+      <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="unary_stream_inline"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.unary_stream_inline">[docs]</a><span class="k">def</span> <span class="nf">unary_stream_inline</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a unary-stream RPC method as a callable</span>
+<span class="sd">      value that takes a request value and an face.ServicerContext object and</span>
+<span class="sd">      returns an iterator of response values.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="n">behavior</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="stream_unary_inline"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.stream_unary_inline">[docs]</a><span class="k">def</span> <span class="nf">stream_unary_inline</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a stream-unary RPC method as a callable</span>
+<span class="sd">      value that takes an iterator of request values and an</span>
+<span class="sd">      face.ServicerContext object and returns a response value.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="n">behavior</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="stream_stream_inline"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.stream_stream_inline">[docs]</a><span class="k">def</span> <span class="nf">stream_stream_inline</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a stream-stream RPC method as a callable</span>
+<span class="sd">      value that takes an iterator of request values and an</span>
+<span class="sd">      face.ServicerContext object and returns an iterator of response values.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">INLINE</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="bp">None</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="unary_unary_event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.unary_unary_event">[docs]</a><span class="k">def</span> <span class="nf">unary_unary_event</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a unary-unary RPC method as a callable</span>
+<span class="sd">      value that takes a request value, a response callback to which to pass</span>
+<span class="sd">      the response value of the RPC, and an face.ServicerContext.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_UNARY</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="unary_stream_event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.unary_stream_event">[docs]</a><span class="k">def</span> <span class="nf">unary_stream_event</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a unary-stream RPC method as a callable</span>
+<span class="sd">      value that takes a request value, a stream.Consumer to which to pass the</span>
+<span class="sd">      the response values of the RPC, and an face.ServicerContext.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">UNARY_STREAM</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="stream_unary_event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.stream_unary_event">[docs]</a><span class="k">def</span> <span class="nf">stream_unary_event</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a stream-unary RPC method as a callable</span>
+<span class="sd">      value that takes a response callback to which to pass the response value</span>
+<span class="sd">      of the RPC and an face.ServicerContext and returns a stream.Consumer to</span>
+<span class="sd">      which the request values of the RPC should be passed.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_UNARY</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">behavior</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span>
+
+</div>
+<div class="viewcode-block" id="stream_stream_event"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.face.html#grpc.framework.interfaces.face.utilities.stream_stream_event">[docs]</a><span class="k">def</span> <span class="nf">stream_stream_event</span><span class="p">(</span><span class="n">behavior</span><span class="p">):</span>
+  <span class="sd">&quot;&quot;&quot;Creates an face.MethodImplementation for the given behavior.</span>
+
+<span class="sd">  Args:</span>
+<span class="sd">    behavior: The implementation of a stream-stream RPC method as a callable</span>
+<span class="sd">      value that takes a stream.Consumer to which to pass the response values</span>
+<span class="sd">      of the RPC and an face.ServicerContext and returns a stream.Consumer to</span>
+<span class="sd">      which the request values of the RPC should be passed.</span>
+
+<span class="sd">  Returns:</span>
+<span class="sd">    An face.MethodImplementation derived from the given behavior.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+  <span class="k">return</span> <span class="n">_MethodImplementation</span><span class="p">(</span>
+      <span class="n">cardinality</span><span class="o">.</span><span class="n">Cardinality</span><span class="o">.</span><span class="n">STREAM_STREAM</span><span class="p">,</span> <span class="n">style</span><span class="o">.</span><span class="n">Service</span><span class="o">.</span><span class="n">EVENT</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span>
+      <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">behavior</span><span class="p">)</span></div>
+</pre></div>
+
+          </div>
+          <footer>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'../../../../../',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
+      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
+      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 32 - 7
python/_modules/grpc/framework/interfaces/links/links.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.interfaces.links.links &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.interfaces.links.links &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../../../../../index.html"/>
         <link rel="up" title="Module code" href="../../../../index.html"/> 
         <link rel="up" title="Module code" href="../../../../index.html"/> 
 
 
   
   
@@ -73,10 +73,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -164,12 +171,28 @@
 <span class="kn">import</span> <span class="nn">enum</span>
 <span class="kn">import</span> <span class="nn">enum</span>
 
 
 
 
+<div class="viewcode-block" id="Protocol"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.links.Protocol">[docs]</a><span class="k">class</span> <span class="nc">Protocol</span><span class="p">(</span><span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span><span class="s">&#39;Protocol&#39;</span><span class="p">,</span> <span class="p">(</span><span class="s">&#39;kind&#39;</span><span class="p">,</span> <span class="s">&#39;value&#39;</span><span class="p">,))):</span>
+  <span class="sd">&quot;&quot;&quot;A sum type for handles to a system that transmits tickets.</span>
+
+<span class="sd">  Attributes:</span>
+<span class="sd">    kind: A Kind value identifying the kind of value being passed.</span>
+<span class="sd">    value: The value being passed between the high-level application and the</span>
+<span class="sd">      system affording ticket transport.</span>
+<span class="sd">  &quot;&quot;&quot;</span>
+
+  <span class="nd">@enum.unique</span>
+<div class="viewcode-block" id="Protocol.Kind"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.links.Protocol.Kind">[docs]</a>  <span class="k">class</span> <span class="nc">Kind</span><span class="p">(</span><span class="n">enum</span><span class="o">.</span><span class="n">Enum</span><span class="p">):</span>
+    <span class="n">CALL_OPTION</span> <span class="o">=</span> <span class="s">&#39;call option&#39;</span>
+    <span class="n">SERVICER_CONTEXT</span> <span class="o">=</span> <span class="s">&#39;servicer context&#39;</span>
+    <span class="n">INVOCATION_CONTEXT</span> <span class="o">=</span> <span class="s">&#39;invocation context&#39;</span>
+
+</div></div>
 <div class="viewcode-block" id="Ticket"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.links.Ticket">[docs]</a><span class="k">class</span> <span class="nc">Ticket</span><span class="p">(</span>
 <div class="viewcode-block" id="Ticket"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.links.Ticket">[docs]</a><span class="k">class</span> <span class="nc">Ticket</span><span class="p">(</span>
     <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
     <span class="n">collections</span><span class="o">.</span><span class="n">namedtuple</span><span class="p">(</span>
         <span class="s">&#39;Ticket&#39;</span><span class="p">,</span>
         <span class="s">&#39;Ticket&#39;</span><span class="p">,</span>
-        <span class="p">[</span><span class="s">&#39;operation_id&#39;</span><span class="p">,</span> <span class="s">&#39;sequence_number&#39;</span><span class="p">,</span> <span class="s">&#39;group&#39;</span><span class="p">,</span> <span class="s">&#39;method&#39;</span><span class="p">,</span> <span class="s">&#39;subscription&#39;</span><span class="p">,</span>
+        <span class="p">(</span><span class="s">&#39;operation_id&#39;</span><span class="p">,</span> <span class="s">&#39;sequence_number&#39;</span><span class="p">,</span> <span class="s">&#39;group&#39;</span><span class="p">,</span> <span class="s">&#39;method&#39;</span><span class="p">,</span> <span class="s">&#39;subscription&#39;</span><span class="p">,</span>
          <span class="s">&#39;timeout&#39;</span><span class="p">,</span> <span class="s">&#39;allowance&#39;</span><span class="p">,</span> <span class="s">&#39;initial_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;payload&#39;</span><span class="p">,</span>
          <span class="s">&#39;timeout&#39;</span><span class="p">,</span> <span class="s">&#39;allowance&#39;</span><span class="p">,</span> <span class="s">&#39;initial_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;payload&#39;</span><span class="p">,</span>
-         <span class="s">&#39;terminal_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;code&#39;</span><span class="p">,</span> <span class="s">&#39;message&#39;</span><span class="p">,</span> <span class="s">&#39;termination&#39;</span><span class="p">])):</span>
+         <span class="s">&#39;terminal_metadata&#39;</span><span class="p">,</span> <span class="s">&#39;code&#39;</span><span class="p">,</span> <span class="s">&#39;message&#39;</span><span class="p">,</span> <span class="s">&#39;termination&#39;</span><span class="p">,</span> <span class="s">&#39;protocol&#39;</span><span class="p">,))):</span>
   <span class="sd">&quot;&quot;&quot;A sum type for all values sent from a front to a back.</span>
   <span class="sd">&quot;&quot;&quot;A sum type for all values sent from a front to a back.</span>
 
 
 <span class="sd">  Attributes:</span>
 <span class="sd">  Attributes:</span>
@@ -211,6 +234,8 @@
 <span class="sd">    termination: A Termination value describing the end of the operation, or</span>
 <span class="sd">    termination: A Termination value describing the end of the operation, or</span>
 <span class="sd">      None if the operation has not yet terminated. If set, no further tickets</span>
 <span class="sd">      None if the operation has not yet terminated. If set, no further tickets</span>
 <span class="sd">      may be sent in the same direction.</span>
 <span class="sd">      may be sent in the same direction.</span>
+<span class="sd">    protocol: A Protocol value or None, with further semantics being a matter</span>
+<span class="sd">      between high-level application and underlying ticket transport.</span>
 <span class="sd">  &quot;&quot;&quot;</span>
 <span class="sd">  &quot;&quot;&quot;</span>
 
 
   <span class="nd">@enum.unique</span>
   <span class="nd">@enum.unique</span>
@@ -228,7 +253,7 @@
     <span class="n">COMPLETION</span> <span class="o">=</span> <span class="s">&#39;completion&#39;</span>
     <span class="n">COMPLETION</span> <span class="o">=</span> <span class="s">&#39;completion&#39;</span>
     <span class="n">CANCELLATION</span> <span class="o">=</span> <span class="s">&#39;cancellation&#39;</span>
     <span class="n">CANCELLATION</span> <span class="o">=</span> <span class="s">&#39;cancellation&#39;</span>
     <span class="n">EXPIRATION</span> <span class="o">=</span> <span class="s">&#39;expiration&#39;</span>
     <span class="n">EXPIRATION</span> <span class="o">=</span> <span class="s">&#39;expiration&#39;</span>
-    <span class="n">LOCAL_SHUTDOWN</span> <span class="o">=</span> <span class="s">&#39;local shutdown&#39;</span>
+    <span class="n">SHUTDOWN</span> <span class="o">=</span> <span class="s">&#39;shutdown&#39;</span>
     <span class="n">RECEPTION_FAILURE</span> <span class="o">=</span> <span class="s">&#39;reception failure&#39;</span>
     <span class="n">RECEPTION_FAILURE</span> <span class="o">=</span> <span class="s">&#39;reception failure&#39;</span>
     <span class="n">TRANSMISSION_FAILURE</span> <span class="o">=</span> <span class="s">&#39;transmission failure&#39;</span>
     <span class="n">TRANSMISSION_FAILURE</span> <span class="o">=</span> <span class="s">&#39;transmission failure&#39;</span>
     <span class="n">LOCAL_FAILURE</span> <span class="o">=</span> <span class="s">&#39;local failure&#39;</span>
     <span class="n">LOCAL_FAILURE</span> <span class="o">=</span> <span class="s">&#39;local failure&#39;</span>
@@ -283,7 +308,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../../../../../',
             URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 0 - 522
python/_modules/grpc/framework/interfaces/links/test_cases.html

@@ -1,522 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.interfaces.links.test_cases &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.interfaces.links.test_cases</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.interfaces.links.test_cases</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;Tests of the links interface of RPC Framework.&quot;&quot;&quot;</span>
-
-<span class="c"># unittest is referenced from specification in this module.</span>
-<span class="kn">import</span> <span class="nn">abc</span>
-<span class="kn">import</span> <span class="nn">unittest</span>  <span class="c"># pylint: disable=unused-import</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.common</span> <span class="kn">import</span> <span class="n">test_constants</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.links</span> <span class="kn">import</span> <span class="n">links</span>
-<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.links</span> <span class="kn">import</span> <span class="n">test_utilities</span>
-
-
-<div class="viewcode-block" id="at_least_n_payloads_received_predicate"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.at_least_n_payloads_received_predicate">[docs]</a><span class="k">def</span> <span class="nf">at_least_n_payloads_received_predicate</span><span class="p">(</span><span class="n">n</span><span class="p">):</span>
-  <span class="k">def</span> <span class="nf">predicate</span><span class="p">(</span><span class="n">ticket_sequence</span><span class="p">):</span>
-    <span class="n">payload_count</span> <span class="o">=</span> <span class="mi">0</span>
-    <span class="k">for</span> <span class="n">ticket</span> <span class="ow">in</span> <span class="n">ticket_sequence</span><span class="p">:</span>
-      <span class="k">if</span> <span class="n">ticket</span><span class="o">.</span><span class="n">payload</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="n">payload_count</span> <span class="o">+=</span> <span class="mi">1</span>
-        <span class="k">if</span> <span class="n">n</span> <span class="o">&lt;=</span> <span class="n">payload_count</span><span class="p">:</span>
-          <span class="k">return</span> <span class="bp">True</span>
-    <span class="k">else</span><span class="p">:</span>
-      <span class="k">return</span> <span class="bp">False</span>
-  <span class="k">return</span> <span class="n">predicate</span>
-
-</div>
-<div class="viewcode-block" id="terminated"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.terminated">[docs]</a><span class="k">def</span> <span class="nf">terminated</span><span class="p">(</span><span class="n">ticket_sequence</span><span class="p">):</span>
-  <span class="k">return</span> <span class="n">ticket_sequence</span> <span class="ow">and</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">termination</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span>
-</div>
-<span class="n">_TRANSMISSION_GROUP</span> <span class="o">=</span> <span class="s">&#39;test.Group&#39;</span>
-<span class="n">_TRANSMISSION_METHOD</span> <span class="o">=</span> <span class="s">&#39;TestMethod&#39;</span>
-
-
-<div class="viewcode-block" id="TransmissionTest"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest">[docs]</a><span class="k">class</span> <span class="nc">TransmissionTest</span><span class="p">(</span><span class="nb">object</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;Tests ticket transmission between two connected links.</span>
-
-<span class="sd">  This class must be mixed into a unittest.TestCase that implements the abstract</span>
-<span class="sd">  methods it provides.</span>
-<span class="sd">  &quot;&quot;&quot;</span>
-  <span class="n">__metaclass__</span> <span class="o">=</span> <span class="n">abc</span><span class="o">.</span><span class="n">ABCMeta</span>
-
-  <span class="c"># This is a unittest.TestCase mix-in.</span>
-  <span class="c"># pylint: disable=invalid-name</span>
-
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_transmitting_links"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_transmitting_links">[docs]</a>  <span class="k">def</span> <span class="nf">create_transmitting_links</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates two connected links for use in this test.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      Two links.Links, the first of which will be used on the invocation side</span>
-<span class="sd">        of RPCs and the second of which will be used on the service side of</span>
-<span class="sd">        RPCs.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.destroy_transmitting_links"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.destroy_transmitting_links">[docs]</a>  <span class="k">def</span> <span class="nf">destroy_transmitting_links</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">invocation_side_link</span><span class="p">,</span> <span class="n">service_side_link</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Destroys the two connected links created for this test.</span>
-
-
-<span class="sd">    Args:</span>
-<span class="sd">      invocation_side_link: The link used on the invocation side of RPCs in</span>
-<span class="sd">        this test.</span>
-<span class="sd">      service_side_link: The link used on the service side of RPCs in this</span>
-<span class="sd">        test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_invocation_initial_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_invocation_initial_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">create_invocation_initial_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates a value for use as invocation-side initial metadata.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A metadata value appropriate for use as invocation-side initial metadata</span>
-<span class="sd">        or None if invocation-side initial metadata transmission is not</span>
-<span class="sd">        supported by the links under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_invocation_terminal_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_invocation_terminal_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">create_invocation_terminal_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates a value for use as invocation-side terminal metadata.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A metadata value appropriate for use as invocation-side terminal</span>
-<span class="sd">        metadata or None if invocation-side terminal metadata transmission is</span>
-<span class="sd">        not supported by the links under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_service_initial_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_service_initial_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">create_service_initial_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates a value for use as service-side initial metadata.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A metadata value appropriate for use as service-side initial metadata or</span>
-<span class="sd">        None if service-side initial metadata transmission is not supported by</span>
-<span class="sd">        the links under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_service_terminal_metadata"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_service_terminal_metadata">[docs]</a>  <span class="k">def</span> <span class="nf">create_service_terminal_metadata</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates a value for use as service-side terminal metadata.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A metadata value appropriate for use as service-side terminal metadata or</span>
-<span class="sd">        None if service-side terminal metadata transmission is not supported by</span>
-<span class="sd">        the links under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_invocation_completion"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_invocation_completion">[docs]</a>  <span class="k">def</span> <span class="nf">create_invocation_completion</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates values for use as invocation-side code and message.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      An invocation-side code value and an invocation-side message value.</span>
-<span class="sd">        Either or both may be None if invocation-side code and/or</span>
-<span class="sd">        invocation-side message transmission is not supported by the links</span>
-<span class="sd">        under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.create_service_completion"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.create_service_completion">[docs]</a>  <span class="k">def</span> <span class="nf">create_service_completion</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Creates values for use as service-side code and message.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A service-side code value and a service-side message value. Either or</span>
-<span class="sd">        both may be None if service-side code and/or service-side message</span>
-<span class="sd">        transmission is not supported by the links under test.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-  <span class="nd">@abc.abstractmethod</span>
-<div class="viewcode-block" id="TransmissionTest.assertMetadataTransmitted"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.assertMetadataTransmitted">[docs]</a>  <span class="k">def</span> <span class="nf">assertMetadataTransmitted</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">original_metadata</span><span class="p">,</span> <span class="n">transmitted_metadata</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Asserts that transmitted_metadata contains original_metadata.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      original_metadata: A metadata object used in this test.</span>
-<span class="sd">      transmitted_metadata: A metadata object obtained after transmission</span>
-<span class="sd">        through the system under test.</span>
-
-<span class="sd">    Raises:</span>
-<span class="sd">      AssertionError: if the transmitted_metadata object does not contain</span>
-<span class="sd">        original_metadata.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">raise</span> <span class="ne">NotImplementedError</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.group_and_method"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.group_and_method">[docs]</a>  <span class="k">def</span> <span class="nf">group_and_method</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Returns the group and method used in this test case.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A pair of the group and method used in this test case.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="n">_TRANSMISSION_GROUP</span><span class="p">,</span> <span class="n">_TRANSMISSION_METHOD</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.serialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.serialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">request</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Serializes a request value used in this test case.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      request: A request value created by this test case.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A bytestring that is the serialization of the given request.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="n">request</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.deserialize_request"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.deserialize_request">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_request</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_request</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Deserializes a request value used in this test case.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      serialized_request: A bytestring that is the serialization of some request</span>
-<span class="sd">        used in this test case.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      The request value encoded by the given bytestring.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="n">serialized_request</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.serialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.serialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">serialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">response</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Serializes a response value used in this test case.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      response: A response value created by this test case.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      A bytestring that is the serialization of the given response.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="n">response</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.deserialize_response"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.deserialize_response">[docs]</a>  <span class="k">def</span> <span class="nf">deserialize_response</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">serialized_response</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Deserializes a response value used in this test case.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      serialized_response: A bytestring that is the serialization of some</span>
-<span class="sd">        response used in this test case.</span>
-
-<span class="sd">    Returns:</span>
-<span class="sd">      The response value encoded by the given bytestring.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">return</span> <span class="n">serialized_response</span>
-</div>
-  <span class="k">def</span> <span class="nf">_assert_is_valid_metadata_payload_sequence</span><span class="p">(</span>
-      <span class="bp">self</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">,</span> <span class="n">payloads</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">):</span>
-    <span class="n">initial_metadata_seen</span> <span class="o">=</span> <span class="bp">False</span>
-    <span class="n">seen_payloads</span> <span class="o">=</span> <span class="p">[]</span>
-    <span class="n">terminal_metadata_seen</span> <span class="o">=</span> <span class="bp">False</span>
-
-    <span class="k">for</span> <span class="n">ticket</span> <span class="ow">in</span> <span class="n">ticket_sequence</span><span class="p">:</span>
-      <span class="k">if</span> <span class="n">ticket</span><span class="o">.</span><span class="n">initial_metadata</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">initial_metadata_seen</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">seen_payloads</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">terminal_metadata_seen</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertMetadataTransmitted</span><span class="p">(</span><span class="n">initial_metadata</span><span class="p">,</span> <span class="n">ticket</span><span class="o">.</span><span class="n">initial_metadata</span><span class="p">)</span>
-        <span class="n">initial_metadata_seen</span> <span class="o">=</span> <span class="bp">True</span>
-
-      <span class="k">if</span> <span class="n">ticket</span><span class="o">.</span><span class="n">payload</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">terminal_metadata_seen</span><span class="p">)</span>
-        <span class="n">seen_payloads</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">ticket</span><span class="o">.</span><span class="n">payload</span><span class="p">)</span>
-
-      <span class="k">if</span> <span class="n">ticket</span><span class="o">.</span><span class="n">terminal_metadata</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertFalse</span><span class="p">(</span><span class="n">terminal_metadata_seen</span><span class="p">)</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">assertMetadataTransmitted</span><span class="p">(</span><span class="n">terminal_metadata</span><span class="p">,</span> <span class="n">ticket</span><span class="o">.</span><span class="n">terminal_metadata</span><span class="p">)</span>
-        <span class="n">terminal_metadata_seen</span> <span class="o">=</span> <span class="bp">True</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertSequenceEqual</span><span class="p">(</span><span class="n">payloads</span><span class="p">,</span> <span class="n">seen_payloads</span><span class="p">)</span>
-
-  <span class="k">def</span> <span class="nf">_assert_is_valid_invocation_sequence</span><span class="p">(</span>
-      <span class="bp">self</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">,</span> <span class="n">group</span><span class="p">,</span> <span class="n">method</span><span class="p">,</span> <span class="n">payloads</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">,</span>
-      <span class="n">terminal_metadata</span><span class="p">,</span> <span class="n">termination</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertLess</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">ticket_sequence</span><span class="p">))</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">group</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">group</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">method</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">method</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_assert_is_valid_metadata_payload_sequence</span><span class="p">(</span>
-        <span class="n">ticket_sequence</span><span class="p">,</span> <span class="n">payloads</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertIs</span><span class="p">(</span><span class="n">termination</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">termination</span><span class="p">)</span>
-
-  <span class="k">def</span> <span class="nf">_assert_is_valid_service_sequence</span><span class="p">(</span>
-      <span class="bp">self</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">,</span> <span class="n">payloads</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">,</span>
-      <span class="n">code</span><span class="p">,</span> <span class="n">message</span><span class="p">,</span> <span class="n">termination</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertLess</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">ticket_sequence</span><span class="p">))</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_assert_is_valid_metadata_payload_sequence</span><span class="p">(</span>
-        <span class="n">ticket_sequence</span><span class="p">,</span> <span class="n">payloads</span><span class="p">,</span> <span class="n">initial_metadata</span><span class="p">,</span> <span class="n">terminal_metadata</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">code</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">code</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertEqual</span><span class="p">(</span><span class="n">message</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">message</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">assertIs</span><span class="p">(</span><span class="n">termination</span><span class="p">,</span> <span class="n">ticket_sequence</span><span class="p">[</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span><span class="o">.</span><span class="n">termination</span><span class="p">)</span>
-
-<div class="viewcode-block" id="TransmissionTest.setUp"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.setUp">[docs]</a>  <span class="k">def</span> <span class="nf">setUp</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_invocation_link</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_service_link</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_transmitting_links</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_invocation_mate</span> <span class="o">=</span> <span class="n">test_utilities</span><span class="o">.</span><span class="n">RecordingLink</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_service_mate</span> <span class="o">=</span> <span class="n">test_utilities</span><span class="o">.</span><span class="n">RecordingLink</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_invocation_link</span><span class="o">.</span><span class="n">join_link</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_invocation_mate</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_service_link</span><span class="o">.</span><span class="n">join_link</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_service_mate</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.tearDown"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.tearDown">[docs]</a>  <span class="k">def</span> <span class="nf">tearDown</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">destroy_transmitting_links</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_invocation_link</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_service_link</span><span class="p">)</span>
-</div>
-<div class="viewcode-block" id="TransmissionTest.testSimplestRoundTrip"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_cases.TransmissionTest.testSimplestRoundTrip">[docs]</a>  <span class="k">def</span> <span class="nf">testSimplestRoundTrip</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Tests transmission of one ticket in each direction.&quot;&quot;&quot;</span>
-    <span class="n">invocation_operation_id</span> <span class="o">=</span> <span class="nb">object</span><span class="p">()</span>
-    <span class="n">invocation_payload</span> <span class="o">=</span> <span class="n">b</span><span class="s">&#39;</span><span class="se">\x07</span><span class="s">&#39;</span> <span class="o">*</span> <span class="mi">1023</span>
-    <span class="n">timeout</span> <span class="o">=</span> <span class="n">test_constants</span><span class="o">.</span><span class="n">LONG_TIMEOUT</span>
-    <span class="n">invocation_initial_metadata</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_invocation_initial_metadata</span><span class="p">()</span>
-    <span class="n">invocation_terminal_metadata</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_invocation_terminal_metadata</span><span class="p">()</span>
-    <span class="n">invocation_code</span><span class="p">,</span> <span class="n">invocation_message</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_invocation_completion</span><span class="p">()</span>
-    <span class="n">service_payload</span> <span class="o">=</span> <span class="n">b</span><span class="s">&#39;</span><span class="se">\x08</span><span class="s">&#39;</span> <span class="o">*</span> <span class="mi">1025</span>
-    <span class="n">service_initial_metadata</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_service_initial_metadata</span><span class="p">()</span>
-    <span class="n">service_terminal_metadata</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_service_terminal_metadata</span><span class="p">()</span>
-    <span class="n">service_code</span><span class="p">,</span> <span class="n">service_message</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_service_completion</span><span class="p">()</span>
-
-    <span class="n">original_invocation_ticket</span> <span class="o">=</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="p">(</span>
-        <span class="n">invocation_operation_id</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">_TRANSMISSION_GROUP</span><span class="p">,</span> <span class="n">_TRANSMISSION_METHOD</span><span class="p">,</span>
-        <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Subscription</span><span class="o">.</span><span class="n">FULL</span><span class="p">,</span> <span class="n">timeout</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">invocation_initial_metadata</span><span class="p">,</span>
-        <span class="n">invocation_payload</span><span class="p">,</span> <span class="n">invocation_terminal_metadata</span><span class="p">,</span> <span class="n">invocation_code</span><span class="p">,</span>
-        <span class="n">invocation_message</span><span class="p">,</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Termination</span><span class="o">.</span><span class="n">COMPLETION</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_invocation_link</span><span class="o">.</span><span class="n">accept_ticket</span><span class="p">(</span><span class="n">original_invocation_ticket</span><span class="p">)</span>
-
-    <span class="c"># TODO(nathaniel): This shouldn&#39;t be necessary. Detecting the end of the</span>
-    <span class="c"># invocation-side ticket sequence shouldn&#39;t require granting allowance for</span>
-    <span class="c"># another payload.</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_service_mate</span><span class="o">.</span><span class="n">block_until_tickets_satisfy</span><span class="p">(</span>
-        <span class="n">at_least_n_payloads_received_predicate</span><span class="p">(</span><span class="mi">1</span><span class="p">))</span>
-    <span class="n">service_operation_id</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_service_mate</span><span class="o">.</span><span class="n">tickets</span><span class="p">()[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">operation_id</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_service_link</span><span class="o">.</span><span class="n">accept_ticket</span><span class="p">(</span>
-        <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="p">(</span>
-            <span class="n">service_operation_id</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Subscription</span><span class="o">.</span><span class="n">FULL</span><span class="p">,</span>
-            <span class="bp">None</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">))</span>
-
-    <span class="bp">self</span><span class="o">.</span><span class="n">_service_mate</span><span class="o">.</span><span class="n">block_until_tickets_satisfy</span><span class="p">(</span><span class="n">terminated</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_assert_is_valid_invocation_sequence</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_service_mate</span><span class="o">.</span><span class="n">tickets</span><span class="p">(),</span> <span class="n">_TRANSMISSION_GROUP</span><span class="p">,</span> <span class="n">_TRANSMISSION_METHOD</span><span class="p">,</span>
-        <span class="p">(</span><span class="n">invocation_payload</span><span class="p">,),</span> <span class="n">invocation_initial_metadata</span><span class="p">,</span>
-        <span class="n">invocation_terminal_metadata</span><span class="p">,</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Termination</span><span class="o">.</span><span class="n">COMPLETION</span><span class="p">)</span>
-
-    <span class="n">original_service_ticket</span> <span class="o">=</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="p">(</span>
-        <span class="n">service_operation_id</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="bp">None</span><span class="p">,</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Subscription</span><span class="o">.</span><span class="n">FULL</span><span class="p">,</span>
-        <span class="n">timeout</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">service_initial_metadata</span><span class="p">,</span> <span class="n">service_payload</span><span class="p">,</span>
-        <span class="n">service_terminal_metadata</span><span class="p">,</span> <span class="n">service_code</span><span class="p">,</span> <span class="n">service_message</span><span class="p">,</span>
-        <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Termination</span><span class="o">.</span><span class="n">COMPLETION</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_service_link</span><span class="o">.</span><span class="n">accept_ticket</span><span class="p">(</span><span class="n">original_service_ticket</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_invocation_mate</span><span class="o">.</span><span class="n">block_until_tickets_satisfy</span><span class="p">(</span><span class="n">terminated</span><span class="p">)</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_assert_is_valid_service_sequence</span><span class="p">(</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_invocation_mate</span><span class="o">.</span><span class="n">tickets</span><span class="p">(),</span> <span class="p">(</span><span class="n">service_payload</span><span class="p">,),</span>
-        <span class="n">service_initial_metadata</span><span class="p">,</span> <span class="n">service_terminal_metadata</span><span class="p">,</span> <span class="n">service_code</span><span class="p">,</span>
-        <span class="n">service_message</span><span class="p">,</span> <span class="n">links</span><span class="o">.</span><span class="n">Ticket</span><span class="o">.</span><span class="n">Termination</span><span class="o">.</span><span class="n">COMPLETION</span><span class="p">)</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 0 - 255
python/_modules/grpc/framework/interfaces/links/test_utilities.html

@@ -1,255 +0,0 @@
-
-
-<!DOCTYPE html>
-<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
-<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
-<head>
-  <meta charset="utf-8">
-  
-  <meta name="viewport" content="width=device-width, initial-scale=1.0">
-  
-  <title>grpc.framework.interfaces.links.test_utilities &mdash; grpcio 0.10.0a0 documentation</title>
-  
-
-  
-  
-
-  
-
-  
-  
-    
-
-  
-
-  
-  
-    <link rel="stylesheet" href="../../../../../_static/css/theme.css" type="text/css" />
-  
-
-  
-
-  
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../../../../../index.html"/>
-        <link rel="up" title="Module code" href="../../../../index.html"/> 
-
-  
-  <script src="_static/js/modernizr.min.js"></script>
-
-</head>
-
-<body class="wy-body-for-nav" role="document">
-
-  <div class="wy-grid-for-nav">
-
-    
-    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
-      <div class="wy-side-nav-search">
-        
-
-        
-          <a href="../../../../../index.html" class="icon icon-home"> grpcio
-        
-
-        
-        </a>
-
-        
-<div role="search">
-  <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get">
-    <input type="text" name="q" placeholder="Search docs" />
-    <input type="hidden" name="check_keywords" value="yes" />
-    <input type="hidden" name="area" value="default" />
-  </form>
-</div>
-
-        
-      </div>
-
-      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
-        
-          
-          
-              <ul>
-<li class="toctree-l1"><a class="reference internal" href="../../../../../grpc.html">grpc package</a><ul>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#subpackages">Subpackages</a><ul>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#submodules">Submodules</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
-</ul>
-</li>
-<li class="toctree-l3"><a class="reference internal" href="../../../../../grpc.framework.html">grpc.framework package</a><ul>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#subpackages">Subpackages</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../../../../../grpc.framework.html#module-grpc.framework">Module contents</a></li>
-</ul>
-</li>
-</ul>
-</li>
-<li class="toctree-l2"><a class="reference internal" href="../../../../../grpc.html#module-grpc">Module contents</a></li>
-</ul>
-</li>
-</ul>
-
-          
-        
-      </div>
-      &nbsp;
-    </nav>
-
-    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
-
-      
-      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
-        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
-        <a href="../../../../../index.html">grpcio</a>
-      </nav>
-
-
-      
-      <div class="wy-nav-content">
-        <div class="rst-content">
-          <div role="navigation" aria-label="breadcrumbs navigation">
-  <ul class="wy-breadcrumbs">
-    <li><a href="../../../../../index.html">Docs</a> &raquo;</li>
-      
-          <li><a href="../../../../index.html">Module code</a> &raquo;</li>
-      
-    <li>grpc.framework.interfaces.links.test_utilities</li>
-      <li class="wy-breadcrumbs-aside">
-        
-          
-        
-      </li>
-  </ul>
-  <hr/>
-</div>
-          <div role="main" class="document">
-            
-  <h1>Source code for grpc.framework.interfaces.links.test_utilities</h1><div class="highlight"><pre>
-<span class="c"># Copyright 2015, Google Inc.</span>
-<span class="c"># All rights reserved.</span>
-<span class="c">#</span>
-<span class="c"># Redistribution and use in source and binary forms, with or without</span>
-<span class="c"># modification, are permitted provided that the following conditions are</span>
-<span class="c"># met:</span>
-<span class="c">#</span>
-<span class="c">#     * Redistributions of source code must retain the above copyright</span>
-<span class="c"># notice, this list of conditions and the following disclaimer.</span>
-<span class="c">#     * Redistributions in binary form must reproduce the above</span>
-<span class="c"># copyright notice, this list of conditions and the following disclaimer</span>
-<span class="c"># in the documentation and/or other materials provided with the</span>
-<span class="c"># distribution.</span>
-<span class="c">#     * Neither the name of Google Inc. nor the names of its</span>
-<span class="c"># contributors may be used to endorse or promote products derived from</span>
-<span class="c"># this software without specific prior written permission.</span>
-<span class="c">#</span>
-<span class="c"># THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span>
-<span class="c"># &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span>
-<span class="c"># A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span>
-<span class="c"># OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span>
-<span class="c"># SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span>
-<span class="c"># LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span>
-<span class="c"># DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span>
-<span class="c"># THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span>
-<span class="c"># (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span>
-<span class="c"># OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span>
-
-<span class="sd">&quot;&quot;&quot;State and behavior appropriate for use in tests.&quot;&quot;&quot;</span>
-
-<span class="kn">import</span> <span class="nn">threading</span>
-
-<span class="kn">from</span> <span class="nn">grpc.framework.interfaces.links</span> <span class="kn">import</span> <span class="n">links</span>
-
-
-<div class="viewcode-block" id="RecordingLink"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_utilities.RecordingLink">[docs]</a><span class="k">class</span> <span class="nc">RecordingLink</span><span class="p">(</span><span class="n">links</span><span class="o">.</span><span class="n">Link</span><span class="p">):</span>
-  <span class="sd">&quot;&quot;&quot;A Link that records every ticket passed to it.&quot;&quot;&quot;</span>
-
-  <span class="k">def</span> <span class="nf">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span> <span class="o">=</span> <span class="n">threading</span><span class="o">.</span><span class="n">Condition</span><span class="p">()</span>
-    <span class="bp">self</span><span class="o">.</span><span class="n">_tickets</span> <span class="o">=</span> <span class="p">[]</span>
-
-<div class="viewcode-block" id="RecordingLink.accept_ticket"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_utilities.RecordingLink.accept_ticket">[docs]</a>  <span class="k">def</span> <span class="nf">accept_ticket</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">ticket</span><span class="p">):</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_tickets</span><span class="o">.</span><span class="n">append</span><span class="p">(</span><span class="n">ticket</span><span class="p">)</span>
-      <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">notify_all</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="RecordingLink.join_link"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_utilities.RecordingLink.join_link">[docs]</a>  <span class="k">def</span> <span class="nf">join_link</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">link</span><span class="p">):</span>
-    <span class="k">pass</span>
-</div>
-<div class="viewcode-block" id="RecordingLink.block_until_tickets_satisfy"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_utilities.RecordingLink.block_until_tickets_satisfy">[docs]</a>  <span class="k">def</span> <span class="nf">block_until_tickets_satisfy</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">predicate</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Blocks until the received tickets satisfy the given predicate.</span>
-
-<span class="sd">    Args:</span>
-<span class="sd">      predicate: A callable that takes a sequence of tickets and returns a</span>
-<span class="sd">        boolean value.</span>
-<span class="sd">    &quot;&quot;&quot;</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">while</span> <span class="ow">not</span> <span class="n">predicate</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_tickets</span><span class="p">):</span>
-        <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="o">.</span><span class="n">wait</span><span class="p">()</span>
-</div>
-<div class="viewcode-block" id="RecordingLink.tickets"><a class="viewcode-back" href="../../../../../grpc.framework.interfaces.links.html#grpc.framework.interfaces.links.test_utilities.RecordingLink.tickets">[docs]</a>  <span class="k">def</span> <span class="nf">tickets</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-    <span class="sd">&quot;&quot;&quot;Returns a copy of the list of all tickets received by this Link.&quot;&quot;&quot;</span>
-    <span class="k">with</span> <span class="bp">self</span><span class="o">.</span><span class="n">_condition</span><span class="p">:</span>
-      <span class="k">return</span> <span class="nb">tuple</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">_tickets</span><span class="p">)</span></div></div>
-</pre></div>
-
-          </div>
-          <footer>
-  
-
-  <hr/>
-
-  <div role="contentinfo">
-    <p>
-        &copy; Copyright 2015, Author.
-    </p>
-  </div>
-  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
-
-</footer>
-
-        </div>
-      </div>
-
-    </section>
-
-  </div>
-  
-
-
-  
-
-    <script type="text/javascript">
-        var DOCUMENTATION_OPTIONS = {
-            URL_ROOT:'../../../../../',
-            VERSION:'0.10.0a0',
-            COLLAPSE_INDEX:false,
-            FILE_SUFFIX:'.html',
-            HAS_SOURCE:  true
-        };
-    </script>
-      <script type="text/javascript" src="../../../../../_static/jquery.js"></script>
-      <script type="text/javascript" src="../../../../../_static/underscore.js"></script>
-      <script type="text/javascript" src="../../../../../_static/doctools.js"></script>
-
-  
-
-  
-  
-    <script type="text/javascript" src="../../../../../_static/js/theme.js"></script>
-  
-
-  
-  
-  <script type="text/javascript">
-      jQuery(function () {
-          SphinxRtdTheme.StickyNav.enable();
-      });
-  </script>
-   
-
-</body>
-</html>

+ 21 - 29
python/_modules/index.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>Overview: module code &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>Overview: module code &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="../index.html"/> 
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="../index.html"/> 
 
 
   
   
   <script src="_static/js/modernizr.min.js"></script>
   <script src="_static/js/modernizr.min.js"></script>
@@ -72,10 +72,17 @@
               <ul>
               <ul>
 <li class="toctree-l1"><a class="reference internal" href="../grpc.html">grpc package</a><ul>
 <li class="toctree-l1"><a class="reference internal" href="../grpc.html">grpc package</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../grpc.html#subpackages">Subpackages</a><ul>
 <li class="toctree-l2"><a class="reference internal" href="../grpc.html#subpackages">Subpackages</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="../grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="../grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="../grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="../grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="../grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -125,42 +132,26 @@
           <div role="main" class="document">
           <div role="main" class="document">
             
             
   <h1>All modules for which code is available</h1>
   <h1>All modules for which code is available</h1>
-<ul><li><a href="grpc/early_adopter/implementations.html">grpc.early_adopter.implementations</a></li>
-<li><a href="grpc/early_adopter/implementations_test.html">grpc.early_adopter.implementations_test</a></li>
+<ul><li><a href="grpc/beta/implementations.html">grpc.beta.implementations</a></li>
+<li><a href="grpc/beta/interfaces.html">grpc.beta.interfaces</a></li>
+<li><a href="grpc/beta/utilities.html">grpc.beta.utilities</a></li>
+<li><a href="grpc/early_adopter/implementations.html">grpc.early_adopter.implementations</a></li>
 <li><a href="grpc/framework/alpha/exceptions.html">grpc.framework.alpha.exceptions</a></li>
 <li><a href="grpc/framework/alpha/exceptions.html">grpc.framework.alpha.exceptions</a></li>
 <li><a href="grpc/framework/alpha/interfaces.html">grpc.framework.alpha.interfaces</a></li>
 <li><a href="grpc/framework/alpha/interfaces.html">grpc.framework.alpha.interfaces</a></li>
 <li><a href="grpc/framework/alpha/utilities.html">grpc.framework.alpha.utilities</a></li>
 <li><a href="grpc/framework/alpha/utilities.html">grpc.framework.alpha.utilities</a></li>
 <li><a href="grpc/framework/base/exceptions.html">grpc.framework.base.exceptions</a></li>
 <li><a href="grpc/framework/base/exceptions.html">grpc.framework.base.exceptions</a></li>
 <li><a href="grpc/framework/base/implementations.html">grpc.framework.base.implementations</a></li>
 <li><a href="grpc/framework/base/implementations.html">grpc.framework.base.implementations</a></li>
-<li><a href="grpc/framework/base/implementations_test.html">grpc.framework.base.implementations_test</a></li>
 <li><a href="grpc/framework/base/in_memory.html">grpc.framework.base.in_memory</a></li>
 <li><a href="grpc/framework/base/in_memory.html">grpc.framework.base.in_memory</a></li>
 <li><a href="grpc/framework/base/interfaces.html">grpc.framework.base.interfaces</a></li>
 <li><a href="grpc/framework/base/interfaces.html">grpc.framework.base.interfaces</a></li>
-<li><a href="grpc/framework/base/interfaces_test_case.html">grpc.framework.base.interfaces_test_case</a></li>
 <li><a href="grpc/framework/base/util.html">grpc.framework.base.util</a></li>
 <li><a href="grpc/framework/base/util.html">grpc.framework.base.util</a></li>
 <li><a href="grpc/framework/common/cardinality.html">grpc.framework.common.cardinality</a></li>
 <li><a href="grpc/framework/common/cardinality.html">grpc.framework.common.cardinality</a></li>
 <li><a href="grpc/framework/common/style.html">grpc.framework.common.style</a></li>
 <li><a href="grpc/framework/common/style.html">grpc.framework.common.style</a></li>
-<li><a href="grpc/framework/common/test_control.html">grpc.framework.common.test_control</a></li>
-<li><a href="grpc/framework/common/test_coverage.html">grpc.framework.common.test_coverage</a></li>
-<li><a href="grpc/framework/face/blocking_invocation_inline_service_test.html">grpc.framework.face.blocking_invocation_inline_service_test</a></li>
+<li><a href="grpc/framework/core/implementations.html">grpc.framework.core.implementations</a></li>
+<li><a href="grpc/framework/crust/implementations.html">grpc.framework.crust.implementations</a></li>
 <li><a href="grpc/framework/face/demonstration.html">grpc.framework.face.demonstration</a></li>
 <li><a href="grpc/framework/face/demonstration.html">grpc.framework.face.demonstration</a></li>
-<li><a href="grpc/framework/face/event_invocation_synchronous_event_service_test.html">grpc.framework.face.event_invocation_synchronous_event_service_test</a></li>
 <li><a href="grpc/framework/face/exceptions.html">grpc.framework.face.exceptions</a></li>
 <li><a href="grpc/framework/face/exceptions.html">grpc.framework.face.exceptions</a></li>
-<li><a href="grpc/framework/face/future_invocation_asynchronous_event_service_test.html">grpc.framework.face.future_invocation_asynchronous_event_service_test</a></li>
 <li><a href="grpc/framework/face/implementations.html">grpc.framework.face.implementations</a></li>
 <li><a href="grpc/framework/face/implementations.html">grpc.framework.face.implementations</a></li>
 <li><a href="grpc/framework/face/interfaces.html">grpc.framework.face.interfaces</a></li>
 <li><a href="grpc/framework/face/interfaces.html">grpc.framework.face.interfaces</a></li>
-<li><a href="grpc/framework/face/testing/base_util.html">grpc.framework.face.testing.base_util</a></li>
-<li><a href="grpc/framework/face/testing/blocking_invocation_inline_service_test_case.html">grpc.framework.face.testing.blocking_invocation_inline_service_test_case</a></li>
-<li><a href="grpc/framework/face/testing/callback.html">grpc.framework.face.testing.callback</a></li>
-<li><a href="grpc/framework/face/testing/control.html">grpc.framework.face.testing.control</a></li>
-<li><a href="grpc/framework/face/testing/coverage.html">grpc.framework.face.testing.coverage</a></li>
-<li><a href="grpc/framework/face/testing/digest.html">grpc.framework.face.testing.digest</a></li>
-<li><a href="grpc/framework/face/testing/event_invocation_synchronous_event_service_test_case.html">grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case</a></li>
-<li><a href="grpc/framework/face/testing/future_invocation_asynchronous_event_service_test_case.html">grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case</a></li>
-<li><a href="grpc/framework/face/testing/interfaces.html">grpc.framework.face.testing.interfaces</a></li>
-<li><a href="grpc/framework/face/testing/serial.html">grpc.framework.face.testing.serial</a></li>
-<li><a href="grpc/framework/face/testing/service.html">grpc.framework.face.testing.service</a></li>
-<li><a href="grpc/framework/face/testing/stock_service.html">grpc.framework.face.testing.stock_service</a></li>
-<li><a href="grpc/framework/face/testing/test_case.html">grpc.framework.face.testing.test_case</a></li>
 <li><a href="grpc/framework/face/utilities.html">grpc.framework.face.utilities</a></li>
 <li><a href="grpc/framework/face/utilities.html">grpc.framework.face.utilities</a></li>
 <li><a href="grpc/framework/foundation/abandonment.html">grpc.framework.foundation.abandonment</a></li>
 <li><a href="grpc/framework/foundation/abandonment.html">grpc.framework.foundation.abandonment</a></li>
 <li><a href="grpc/framework/foundation/activated.html">grpc.framework.foundation.activated</a></li>
 <li><a href="grpc/framework/foundation/activated.html">grpc.framework.foundation.activated</a></li>
@@ -170,11 +161,12 @@
 <li><a href="grpc/framework/foundation/logging_pool.html">grpc.framework.foundation.logging_pool</a></li>
 <li><a href="grpc/framework/foundation/logging_pool.html">grpc.framework.foundation.logging_pool</a></li>
 <li><a href="grpc/framework/foundation/relay.html">grpc.framework.foundation.relay</a></li>
 <li><a href="grpc/framework/foundation/relay.html">grpc.framework.foundation.relay</a></li>
 <li><a href="grpc/framework/foundation/stream.html">grpc.framework.foundation.stream</a></li>
 <li><a href="grpc/framework/foundation/stream.html">grpc.framework.foundation.stream</a></li>
-<li><a href="grpc/framework/foundation/stream_testing.html">grpc.framework.foundation.stream_testing</a></li>
 <li><a href="grpc/framework/foundation/stream_util.html">grpc.framework.foundation.stream_util</a></li>
 <li><a href="grpc/framework/foundation/stream_util.html">grpc.framework.foundation.stream_util</a></li>
+<li><a href="grpc/framework/interfaces/base/base.html">grpc.framework.interfaces.base.base</a></li>
+<li><a href="grpc/framework/interfaces/base/utilities.html">grpc.framework.interfaces.base.utilities</a></li>
+<li><a href="grpc/framework/interfaces/face/face.html">grpc.framework.interfaces.face.face</a></li>
+<li><a href="grpc/framework/interfaces/face/utilities.html">grpc.framework.interfaces.face.utilities</a></li>
 <li><a href="grpc/framework/interfaces/links/links.html">grpc.framework.interfaces.links.links</a></li>
 <li><a href="grpc/framework/interfaces/links/links.html">grpc.framework.interfaces.links.links</a></li>
-<li><a href="grpc/framework/interfaces/links/test_cases.html">grpc.framework.interfaces.links.test_cases</a></li>
-<li><a href="grpc/framework/interfaces/links/test_utilities.html">grpc.framework.interfaces.links.test_utilities</a></li>
 </ul>
 </ul>
 
 
           </div>
           </div>
@@ -206,7 +198,7 @@
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'../',
             URL_ROOT:'../',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 38 - 0
python/_sources/grpc.beta.txt

@@ -0,0 +1,38 @@
+grpc.beta package
+=================
+
+Submodules
+----------
+
+grpc.beta.implementations module
+--------------------------------
+
+.. automodule:: grpc.beta.implementations
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+grpc.beta.interfaces module
+---------------------------
+
+.. automodule:: grpc.beta.interfaces
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+grpc.beta.utilities module
+--------------------------
+
+.. automodule:: grpc.beta.utilities
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+
+Module contents
+---------------
+
+.. automodule:: grpc.beta
+    :members:
+    :undoc-members:
+    :show-inheritance:

+ 0 - 8
python/_sources/grpc.early_adopter.txt

@@ -12,14 +12,6 @@ grpc.early_adopter.implementations module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.early_adopter.implementations_test module
-----------------------------------------------
-
-.. automodule:: grpc.early_adopter.implementations_test
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 
 
 Module contents
 Module contents
 ---------------
 ---------------

+ 0 - 16
python/_sources/grpc.framework.base.txt

@@ -20,14 +20,6 @@ grpc.framework.base.implementations module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.base.implementations_test module
------------------------------------------------
-
-.. automodule:: grpc.framework.base.implementations_test
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.base.in_memory module
 grpc.framework.base.in_memory module
 ------------------------------------
 ------------------------------------
 
 
@@ -44,14 +36,6 @@ grpc.framework.base.interfaces module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.base.interfaces_test_case module
------------------------------------------------
-
-.. automodule:: grpc.framework.base.interfaces_test_case
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.base.null module
 grpc.framework.base.null module
 -------------------------------
 -------------------------------
 
 

+ 0 - 24
python/_sources/grpc.framework.common.txt

@@ -20,30 +20,6 @@ grpc.framework.common.style module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.common.test_constants module
--------------------------------------------
-
-.. automodule:: grpc.framework.common.test_constants
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.common.test_control module
------------------------------------------
-
-.. automodule:: grpc.framework.common.test_control
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.common.test_coverage module
-------------------------------------------
-
-.. automodule:: grpc.framework.common.test_coverage
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 
 
 Module contents
 Module contents
 ---------------
 ---------------

+ 22 - 0
python/_sources/grpc.framework.core.txt

@@ -0,0 +1,22 @@
+grpc.framework.core package
+===========================
+
+Submodules
+----------
+
+grpc.framework.core.implementations module
+------------------------------------------
+
+.. automodule:: grpc.framework.core.implementations
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+
+Module contents
+---------------
+
+.. automodule:: grpc.framework.core
+    :members:
+    :undoc-members:
+    :show-inheritance:

+ 22 - 0
python/_sources/grpc.framework.crust.txt

@@ -0,0 +1,22 @@
+grpc.framework.crust package
+============================
+
+Submodules
+----------
+
+grpc.framework.crust.implementations module
+-------------------------------------------
+
+.. automodule:: grpc.framework.crust.implementations
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+
+Module contents
+---------------
+
+.. automodule:: grpc.framework.crust
+    :members:
+    :undoc-members:
+    :show-inheritance:

+ 0 - 118
python/_sources/grpc.framework.face.testing.txt

@@ -1,118 +0,0 @@
-grpc.framework.face.testing package
-===================================
-
-Submodules
-----------
-
-grpc.framework.face.testing.base_util module
---------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.base_util
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.blocking_invocation_inline_service_test_case module
--------------------------------------------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.blocking_invocation_inline_service_test_case
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.callback module
--------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.callback
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.control module
-------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.control
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.coverage module
--------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.coverage
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.digest module
------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.digest
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case module
----------------------------------------------------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.event_invocation_synchronous_event_service_test_case
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case module
------------------------------------------------------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.future_invocation_asynchronous_event_service_test_case
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.interfaces module
----------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.interfaces
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.serial module
------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.serial
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.service module
-------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.service
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.stock_service module
-------------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.stock_service
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.face.testing.test_case module
---------------------------------------------
-
-.. automodule:: grpc.framework.face.testing.test_case
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-
-Module contents
----------------
-
-.. automodule:: grpc.framework.face.testing
-    :members:
-    :undoc-members:
-    :show-inheritance:

+ 0 - 31
python/_sources/grpc.framework.face.txt

@@ -1,24 +1,9 @@
 grpc.framework.face package
 grpc.framework.face package
 ===========================
 ===========================
 
 
-Subpackages
------------
-
-.. toctree::
-
-    grpc.framework.face.testing
-
 Submodules
 Submodules
 ----------
 ----------
 
 
-grpc.framework.face.blocking_invocation_inline_service_test module
-------------------------------------------------------------------
-
-.. automodule:: grpc.framework.face.blocking_invocation_inline_service_test
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.face.demonstration module
 grpc.framework.face.demonstration module
 ----------------------------------------
 ----------------------------------------
 
 
@@ -27,14 +12,6 @@ grpc.framework.face.demonstration module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.face.event_invocation_synchronous_event_service_test module
---------------------------------------------------------------------------
-
-.. automodule:: grpc.framework.face.event_invocation_synchronous_event_service_test
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.face.exceptions module
 grpc.framework.face.exceptions module
 -------------------------------------
 -------------------------------------
 
 
@@ -43,14 +20,6 @@ grpc.framework.face.exceptions module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.face.future_invocation_asynchronous_event_service_test module
-----------------------------------------------------------------------------
-
-.. automodule:: grpc.framework.face.future_invocation_asynchronous_event_service_test
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.face.implementations module
 grpc.framework.face.implementations module
 ------------------------------------------
 ------------------------------------------
 
 

+ 0 - 8
python/_sources/grpc.framework.foundation.txt

@@ -68,14 +68,6 @@ grpc.framework.foundation.stream module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.foundation.stream_testing module
------------------------------------------------
-
-.. automodule:: grpc.framework.foundation.stream_testing
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.foundation.stream_util module
 grpc.framework.foundation.stream_util module
 --------------------------------------------
 --------------------------------------------
 
 

+ 30 - 0
python/_sources/grpc.framework.interfaces.base.txt

@@ -0,0 +1,30 @@
+grpc.framework.interfaces.base package
+======================================
+
+Submodules
+----------
+
+grpc.framework.interfaces.base.base module
+------------------------------------------
+
+.. automodule:: grpc.framework.interfaces.base.base
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+grpc.framework.interfaces.base.utilities module
+-----------------------------------------------
+
+.. automodule:: grpc.framework.interfaces.base.utilities
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+
+Module contents
+---------------
+
+.. automodule:: grpc.framework.interfaces.base
+    :members:
+    :undoc-members:
+    :show-inheritance:

+ 30 - 0
python/_sources/grpc.framework.interfaces.face.txt

@@ -0,0 +1,30 @@
+grpc.framework.interfaces.face package
+======================================
+
+Submodules
+----------
+
+grpc.framework.interfaces.face.face module
+------------------------------------------
+
+.. automodule:: grpc.framework.interfaces.face.face
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+grpc.framework.interfaces.face.utilities module
+-----------------------------------------------
+
+.. automodule:: grpc.framework.interfaces.face.utilities
+    :members:
+    :undoc-members:
+    :show-inheritance:
+
+
+Module contents
+---------------
+
+.. automodule:: grpc.framework.interfaces.face
+    :members:
+    :undoc-members:
+    :show-inheritance:

+ 0 - 16
python/_sources/grpc.framework.interfaces.links.txt

@@ -12,22 +12,6 @@ grpc.framework.interfaces.links.links module
     :undoc-members:
     :undoc-members:
     :show-inheritance:
     :show-inheritance:
 
 
-grpc.framework.interfaces.links.test_cases module
--------------------------------------------------
-
-.. automodule:: grpc.framework.interfaces.links.test_cases
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
-grpc.framework.interfaces.links.test_utilities module
------------------------------------------------------
-
-.. automodule:: grpc.framework.interfaces.links.test_utilities
-    :members:
-    :undoc-members:
-    :show-inheritance:
-
 grpc.framework.interfaces.links.utilities module
 grpc.framework.interfaces.links.utilities module
 ------------------------------------------------
 ------------------------------------------------
 
 

+ 2 - 0
python/_sources/grpc.framework.interfaces.txt

@@ -6,6 +6,8 @@ Subpackages
 
 
 .. toctree::
 .. toctree::
 
 
+    grpc.framework.interfaces.base
+    grpc.framework.interfaces.face
     grpc.framework.interfaces.links
     grpc.framework.interfaces.links
 
 
 Module contents
 Module contents

+ 2 - 0
python/_sources/grpc.framework.txt

@@ -9,6 +9,8 @@ Subpackages
     grpc.framework.alpha
     grpc.framework.alpha
     grpc.framework.base
     grpc.framework.base
     grpc.framework.common
     grpc.framework.common
+    grpc.framework.core
+    grpc.framework.crust
     grpc.framework.face
     grpc.framework.face
     grpc.framework.foundation
     grpc.framework.foundation
     grpc.framework.interfaces
     grpc.framework.interfaces

+ 1 - 0
python/_sources/grpc.txt

@@ -6,6 +6,7 @@ Subpackages
 
 
 .. toctree::
 .. toctree::
 
 
+    grpc.beta
     grpc.early_adopter
     grpc.early_adopter
     grpc.framework
     grpc.framework
 
 

+ 1 - 1
python/_sources/index.txt

@@ -1,5 +1,5 @@
 .. grpcio documentation master file, created by
 .. grpcio documentation master file, created by
-   sphinx-quickstart on Fri Jul 24 15:10:16 2015.
+   sphinx-quickstart on Thu Sep 10 08:56:51 2015.
    You can adapt this file completely to your liking, but it should at least
    You can adapt this file completely to your liking, but it should at least
    contain the root `toctree` directive.
    contain the root `toctree` directive.
 
 

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 294 - 307
python/genindex.html


+ 779 - 0
python/grpc.beta.html

@@ -0,0 +1,779 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.beta package &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="index.html"/>
+        <link rel="up" title="grpc package" href="grpc.html"/>
+        <link rel="next" title="grpc.early_adopter package" href="grpc.early_adopter.html"/>
+        <link rel="prev" title="grpc package" href="grpc.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul class="current">
+<li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
+<li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
+<li class="toctree-l3 current"><a class="current reference internal" href="">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="grpc.framework.html">grpc.framework package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="grpc.html">grpc package</a> &raquo;</li>
+      
+    <li>grpc.beta package</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+            <a href="_sources/grpc.beta.txt" rel="nofollow"> View page source</a>
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <div class="section" id="grpc-beta-package">
+<h1>grpc.beta package<a class="headerlink" href="#grpc-beta-package" title="Permalink to this headline">¶</a></h1>
+<div class="section" id="submodules">
+<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this headline">¶</a></h2>
+</div>
+<div class="section" id="module-grpc.beta.implementations">
+<span id="grpc-beta-implementations-module"></span><h2>grpc.beta.implementations module<a class="headerlink" href="#module-grpc.beta.implementations" title="Permalink to this headline">¶</a></h2>
+<p>Entry points into the Beta API of gRPC Python.</p>
+<dl class="class">
+<dt id="grpc.beta.implementations.Channel">
+<em class="property">class </em><code class="descclassname">grpc.beta.implementations.</code><code class="descname">Channel</code><span class="sig-paren">(</span><em>low_channel</em>, <em>intermediary_low_channel</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#Channel"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.Channel" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>A channel to a remote host through which RPCs may be conducted.</p>
+<p>Only the &#8220;subscribe&#8221; and &#8220;unsubscribe&#8221; methods are supported for application
+use. This class&#8217; instance constructor and all other attributes are
+unsupported.</p>
+<dl class="method">
+<dt id="grpc.beta.implementations.Channel.subscribe">
+<code class="descname">subscribe</code><span class="sig-paren">(</span><em>callback</em>, <em>try_to_connect=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#Channel.subscribe"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.Channel.subscribe" title="Permalink to this definition">¶</a></dt>
+<dd><p>Subscribes to this Channel&#8217;s connectivity.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>callback</strong> &#8211; A callable to be invoked and passed an
+interfaces.ChannelConnectivity identifying this Channel&#8217;s connectivity.
+The callable will be invoked immediately upon subscription and again for
+every change to this Channel&#8217;s connectivity thereafter until it is
+unsubscribed.</li>
+<li><strong>try_to_connect</strong> &#8211; A boolean indicating whether or not this Channel should
+attempt to connect if it is not already connected and ready to conduct
+RPCs.</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="method">
+<dt id="grpc.beta.implementations.Channel.unsubscribe">
+<code class="descname">unsubscribe</code><span class="sig-paren">(</span><em>callback</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#Channel.unsubscribe"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.Channel.unsubscribe" title="Permalink to this definition">¶</a></dt>
+<dd><p>Unsubscribes a callback from this Channel&#8217;s connectivity.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>callback</strong> &#8211; A callable previously registered with this Channel from having
+been passed to its &#8220;subscribe&#8221; method.</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.implementations.ClientCredentials">
+<em class="property">class </em><code class="descclassname">grpc.beta.implementations.</code><code class="descname">ClientCredentials</code><span class="sig-paren">(</span><em>low_credentials</em>, <em>intermediary_low_credentials</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#ClientCredentials"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.ClientCredentials" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>A value encapsulating the data required to create a secure Channel.</p>
+<p>This class and its instances have no supported interface - it exists to define
+the type of its instances and its instances exist to be passed to other
+functions.</p>
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.implementations.ServerCredentials">
+<em class="property">class </em><code class="descclassname">grpc.beta.implementations.</code><code class="descname">ServerCredentials</code><span class="sig-paren">(</span><em>low_credentials</em>, <em>intermediary_low_credentials</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#ServerCredentials"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.ServerCredentials" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>A value encapsulating the data required to open a secure port on a Server.</p>
+<p>This class and its instances have no supported interface - it exists to define
+the type of its instances and its instances exist to be passed to other
+functions.</p>
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.implementations.ServerOptions">
+<em class="property">class </em><code class="descclassname">grpc.beta.implementations.</code><code class="descname">ServerOptions</code><span class="sig-paren">(</span><em>multi_method_implementation</em>, <em>request_deserializers</em>, <em>response_serializers</em>, <em>thread_pool</em>, <em>thread_pool_size</em>, <em>default_timeout</em>, <em>maximum_timeout</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#ServerOptions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.ServerOptions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>A value encapsulating the various options for creation of a Server.</p>
+<p>This class and its instances have no supported interface - it exists to define
+the type of its instances and its instances exist to be passed to other
+functions.</p>
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.implementations.StubOptions">
+<em class="property">class </em><code class="descclassname">grpc.beta.implementations.</code><code class="descname">StubOptions</code><span class="sig-paren">(</span><em>host</em>, <em>request_serializers</em>, <em>response_deserializers</em>, <em>metadata_transformer</em>, <em>thread_pool</em>, <em>thread_pool_size</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#StubOptions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.StubOptions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>A value encapsulating the various options for creation of a Stub.</p>
+<p>This class and its instances have no supported interface - it exists to define
+the type of its instances and its instances exist to be passed to other
+functions.</p>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.dynamic_stub">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">dynamic_stub</code><span class="sig-paren">(</span><em>channel</em>, <em>service</em>, <em>cardinalities</em>, <em>options=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#dynamic_stub"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.dynamic_stub" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a face.DynamicStub with which RPCs can be invoked.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>channel</strong> &#8211; A Channel for the returned face.DynamicStub to use.</li>
+<li><strong>service</strong> &#8211; The package-qualified full name of the service.</li>
+<li><strong>cardinalities</strong> &#8211; A dictionary from RPC method name to cardinality.Cardinality
+value identifying the cardinality of the RPC method.</li>
+<li><strong>options</strong> &#8211; An optional StubOptions value further customizing the functionality
+of the returned face.DynamicStub.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A face.DynamicStub with which RPCs can be invoked.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.generic_stub">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">generic_stub</code><span class="sig-paren">(</span><em>channel</em>, <em>options=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#generic_stub"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.generic_stub" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a face.GenericStub on which RPCs can be made.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>channel</strong> &#8211; A Channel for use by the created stub.</li>
+<li><strong>options</strong> &#8211; A StubOptions customizing the created stub.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A face.GenericStub on which RPCs can be made.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.insecure_channel">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">insecure_channel</code><span class="sig-paren">(</span><em>host</em>, <em>port</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#insecure_channel"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.insecure_channel" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates an insecure Channel to a remote host.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>host</strong> &#8211; The name of the remote host to which to connect.</li>
+<li><strong>port</strong> &#8211; The port of the remote host to which to connect.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A Channel to the remote host through which RPCs may be conducted.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.secure_channel">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">secure_channel</code><span class="sig-paren">(</span><em>host</em>, <em>port</em>, <em>client_credentials</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#secure_channel"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.secure_channel" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a secure Channel to a remote host.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>host</strong> &#8211; The name of the remote host to which to connect.</li>
+<li><strong>port</strong> &#8211; The port of the remote host to which to connect.</li>
+<li><strong>client_credentials</strong> &#8211; A ClientCredentials.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A secure Channel to the remote host through which RPCs may be conducted.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.server">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">server</code><span class="sig-paren">(</span><em>service_implementations</em>, <em>options=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.server" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates an interfaces.Server with which RPCs can be serviced.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>service_implementations</strong> &#8211; A dictionary from service name-method name pair to
+face.MethodImplementation.</li>
+<li><strong>options</strong> &#8211; An optional ServerOptions value further customizing the
+functionality of the returned Server.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">An interfaces.Server with which RPCs can be serviced.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.server_options">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">server_options</code><span class="sig-paren">(</span><em>multi_method_implementation=None</em>, <em>request_deserializers=None</em>, <em>response_serializers=None</em>, <em>thread_pool=None</em>, <em>thread_pool_size=None</em>, <em>default_timeout=None</em>, <em>maximum_timeout=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#server_options"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.server_options" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a ServerOptions value to be passed at server creation.</p>
+<p>All parameters are optional and should always be passed by keyword.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>multi_method_implementation</strong> &#8211; A face.MultiMethodImplementation to be called
+to service an RPC if the server has no specific method implementation for
+the name of the RPC for which service was requested.</li>
+<li><strong>request_deserializers</strong> &#8211; A dictionary from service name-method name pair to
+request deserialization behavior.</li>
+<li><strong>response_serializers</strong> &#8211; A dictionary from service name-method name pair to
+response serialization behavior.</li>
+<li><strong>thread_pool</strong> &#8211; A thread pool to use in stubs.</li>
+<li><strong>thread_pool_size</strong> &#8211; The size of thread pool to create for use in stubs;
+ignored if thread_pool has been passed.</li>
+<li><strong>default_timeout</strong> &#8211; A duration in seconds to allow for RPC service when
+servicing RPCs that did not include a timeout value when invoked.</li>
+<li><strong>maximum_timeout</strong> &#8211; A duration in seconds to allow for RPC service when
+servicing RPCs no matter what timeout value was passed when the RPC was
+invoked.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A StubOptions value created from the passed parameters.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.ssl_client_credentials">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">ssl_client_credentials</code><span class="sig-paren">(</span><em>root_certificates</em>, <em>private_key</em>, <em>certificate_chain</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#ssl_client_credentials"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.ssl_client_credentials" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a ClientCredentials for use with an SSL-enabled Channel.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>root_certificates</strong> &#8211; The PEM-encoded root certificates or None to ask for
+them to be retrieved from a default location.</li>
+<li><strong>private_key</strong> &#8211; The PEM-encoded private key to use or None if no private key
+should be used.</li>
+<li><strong>certificate_chain</strong> &#8211; The PEM-encoded certificate chain to use or None if no
+certificate chain should be used.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A ClientCredentials for use with an SSL-enabled Channel.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.ssl_server_credentials">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">ssl_server_credentials</code><span class="sig-paren">(</span><em>private_key_certificate_chain_pairs</em>, <em>root_certificates=None</em>, <em>require_client_auth=False</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#ssl_server_credentials"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.ssl_server_credentials" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a ServerCredentials for use with an SSL-enabled Server.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>private_key_certificate_chain_pairs</strong> &#8211; A nonempty sequence each element of
+which is a pair the first element of which is a PEM-encoded private key
+and the second element of which is the corresponding PEM-encoded
+certificate chain.</li>
+<li><strong>root_certificates</strong> &#8211; PEM-encoded client root certificates to be used for
+verifying authenticated clients. If omitted, require_client_auth must also
+be omitted or be False.</li>
+<li><strong>require_client_auth</strong> &#8211; A boolean indicating whether or not to require clients
+to be authenticated. May only be True if root_certificates is not None.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A ServerCredentials for use with an SSL-enabled Server.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.implementations.stub_options">
+<code class="descclassname">grpc.beta.implementations.</code><code class="descname">stub_options</code><span class="sig-paren">(</span><em>host=None</em>, <em>request_serializers=None</em>, <em>response_deserializers=None</em>, <em>metadata_transformer=None</em>, <em>thread_pool=None</em>, <em>thread_pool_size=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/implementations.html#stub_options"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.implementations.stub_options" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a StubOptions value to be passed at stub creation.</p>
+<p>All parameters are optional and should always be passed by keyword.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>host</strong> &#8211; A host string to set on RPC calls.</li>
+<li><strong>request_serializers</strong> &#8211; A dictionary from service name-method name pair to
+request serialization behavior.</li>
+<li><strong>response_deserializers</strong> &#8211; A dictionary from service name-method name pair to
+response deserialization behavior.</li>
+<li><strong>metadata_transformer</strong> &#8211; A callable that given a metadata object produces
+another metadata object to be used in the underlying communication on the
+wire.</li>
+<li><strong>thread_pool</strong> &#8211; A thread pool to use in stubs.</li>
+<li><strong>thread_pool_size</strong> &#8211; The size of thread pool to create for use in stubs;
+ignored if thread_pool has been passed.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A StubOptions value created from the passed parameters.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</div>
+<div class="section" id="module-grpc.beta.interfaces">
+<span id="grpc-beta-interfaces-module"></span><h2>grpc.beta.interfaces module<a class="headerlink" href="#module-grpc.beta.interfaces" title="Permalink to this headline">¶</a></h2>
+<p>Constants and interfaces of the Beta API of gRPC Python.</p>
+<dl class="class">
+<dt id="grpc.beta.interfaces.ChannelConnectivity">
+<em class="property">class </em><code class="descclassname">grpc.beta.interfaces.</code><code class="descname">ChannelConnectivity</code><a class="reference internal" href="_modules/grpc/beta/interfaces.html#ChannelConnectivity"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.ChannelConnectivity" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">enum.Enum</span></code></p>
+<p>Mirrors grpc_connectivity_state in the gRPC Core.</p>
+<dl class="attribute">
+<dt id="grpc.beta.interfaces.ChannelConnectivity.IDLE">
+<code class="descname">IDLE</code><a class="headerlink" href="#grpc.beta.interfaces.ChannelConnectivity.IDLE" title="Permalink to this definition">¶</a></dt>
+<dd><p>The channel is idle.</p>
+</dd></dl>
+
+<dl class="attribute">
+<dt id="grpc.beta.interfaces.ChannelConnectivity.CONNECTING">
+<code class="descname">CONNECTING</code><a class="headerlink" href="#grpc.beta.interfaces.ChannelConnectivity.CONNECTING" title="Permalink to this definition">¶</a></dt>
+<dd><p>The channel is connecting.</p>
+</dd></dl>
+
+<dl class="attribute">
+<dt id="grpc.beta.interfaces.ChannelConnectivity.READY">
+<code class="descname">READY</code><a class="headerlink" href="#grpc.beta.interfaces.ChannelConnectivity.READY" title="Permalink to this definition">¶</a></dt>
+<dd><p>The channel is ready to conduct RPCs.</p>
+</dd></dl>
+
+<dl class="attribute">
+<dt id="grpc.beta.interfaces.ChannelConnectivity.TRANSIENT_FAILURE">
+<code class="descname">TRANSIENT_FAILURE</code><a class="headerlink" href="#grpc.beta.interfaces.ChannelConnectivity.TRANSIENT_FAILURE" title="Permalink to this definition">¶</a></dt>
+<dd><p>The channel has seen a failure from which it expects to
+recover.</p>
+</dd></dl>
+
+<dl class="attribute">
+<dt id="grpc.beta.interfaces.ChannelConnectivity.FATAL_FAILURE">
+<code class="descname">FATAL_FAILURE</code><a class="headerlink" href="#grpc.beta.interfaces.ChannelConnectivity.FATAL_FAILURE" title="Permalink to this definition">¶</a></dt>
+<dd><p>The channel has seen a failure from which it cannot recover.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.interfaces.GRPCCallOptions">
+<em class="property">class </em><code class="descclassname">grpc.beta.interfaces.</code><code class="descname">GRPCCallOptions</code><span class="sig-paren">(</span><em>disable_compression</em>, <em>subcall_of</em>, <em>credentials</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#GRPCCallOptions"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.GRPCCallOptions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>A value encapsulating gRPC-specific options passed on RPC invocation.</p>
+<p>This class and its instances have no supported interface - it exists to
+define the type of its instances and its instances exist to be passed to
+other functions.</p>
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.interfaces.GRPCInvocationContext">
+<em class="property">class </em><code class="descclassname">grpc.beta.interfaces.</code><code class="descname">GRPCInvocationContext</code><a class="reference internal" href="_modules/grpc/beta/interfaces.html#GRPCInvocationContext"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.GRPCInvocationContext" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>Exposes gRPC-specific options and behaviors to code invoking RPCs.</p>
+<dl class="method">
+<dt id="grpc.beta.interfaces.GRPCInvocationContext.disable_next_request_compression">
+<code class="descname">disable_next_request_compression</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#GRPCInvocationContext.disable_next_request_compression"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.GRPCInvocationContext.disable_next_request_compression" title="Permalink to this definition">¶</a></dt>
+<dd><p>Disables compression of the next request passed by the application.</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.interfaces.GRPCServicerContext">
+<em class="property">class </em><code class="descclassname">grpc.beta.interfaces.</code><code class="descname">GRPCServicerContext</code><a class="reference internal" href="_modules/grpc/beta/interfaces.html#GRPCServicerContext"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.GRPCServicerContext" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>Exposes gRPC-specific options and behaviors to code servicing RPCs.</p>
+<dl class="method">
+<dt id="grpc.beta.interfaces.GRPCServicerContext.disable_next_response_compression">
+<code class="descname">disable_next_response_compression</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#GRPCServicerContext.disable_next_response_compression"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.GRPCServicerContext.disable_next_response_compression" title="Permalink to this definition">¶</a></dt>
+<dd><p>Disables compression of the next response passed by the application.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="grpc.beta.interfaces.GRPCServicerContext.peer">
+<code class="descname">peer</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#GRPCServicerContext.peer"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.GRPCServicerContext.peer" title="Permalink to this definition">¶</a></dt>
+<dd><p>Identifies the peer that invoked the RPC being serviced.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">A string identifying the peer that invoked the RPC being serviced.</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.interfaces.Server">
+<em class="property">class </em><code class="descclassname">grpc.beta.interfaces.</code><code class="descname">Server</code><a class="reference internal" href="_modules/grpc/beta/interfaces.html#Server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.Server" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
+<p>Services RPCs.</p>
+<dl class="method">
+<dt id="grpc.beta.interfaces.Server.add_insecure_port">
+<code class="descname">add_insecure_port</code><span class="sig-paren">(</span><em>address</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#Server.add_insecure_port"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.Server.add_insecure_port" title="Permalink to this definition">¶</a></dt>
+<dd><p>Reserves a port for insecure RPC service once this Server becomes active.</p>
+<p>This method may only be called before calling this Server&#8217;s start method is
+called.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>address</strong> &#8211; The address for which to open a port.</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">An integer port on which RPCs will be serviced after this link has been
+started. This is typically the same number as the port number contained
+in the passed address, but will likely be different if the port number
+contained in the passed address was zero.</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="method">
+<dt id="grpc.beta.interfaces.Server.add_secure_port">
+<code class="descname">add_secure_port</code><span class="sig-paren">(</span><em>address</em>, <em>server_credentials</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#Server.add_secure_port"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.Server.add_secure_port" title="Permalink to this definition">¶</a></dt>
+<dd><p>Reserves a port for secure RPC service after this Server becomes active.</p>
+<p>This method may only be called before calling this Server&#8217;s start method is
+called.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>address</strong> &#8211; The address for which to open a port.</li>
+<li><strong>server_credentials</strong> &#8211; A ServerCredentials.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">An integer port on which RPCs will be serviced after this link has been
+started. This is typically the same number as the port number contained
+in the passed address, but will likely be different if the port number
+contained in the passed address was zero.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="method">
+<dt id="grpc.beta.interfaces.Server.start">
+<code class="descname">start</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#Server.start"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.Server.start" title="Permalink to this definition">¶</a></dt>
+<dd><p>Starts this Server&#8217;s service of RPCs.</p>
+<p>This method may only be called while the server is not serving RPCs (i.e. it
+is not idempotent).</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="grpc.beta.interfaces.Server.stop">
+<code class="descname">stop</code><span class="sig-paren">(</span><em>grace</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#Server.stop"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.Server.stop" title="Permalink to this definition">¶</a></dt>
+<dd><p>Stops this Server&#8217;s service of RPCs.</p>
+<p>All calls to this method immediately stop service of new RPCs. When existing
+RPCs are aborted is controlled by the grace period parameter passed to this
+method.</p>
+<p>This method may be called at any time and is idempotent. Passing a smaller
+grace value than has been passed in a previous call will have the effect of
+stopping the Server sooner. Passing a larger grace value than has been
+passed in a previous call will not have the effect of stopping the sooner
+later.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>grace</strong> &#8211; A duration of time in seconds to allow existing RPCs to complete
+before being aborted by this Server&#8217;s stopping. May be zero for
+immediate abortion of all in-progress RPCs.</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">A threading.Event that will be set when this Server has completely
+stopped. The returned event may not be set until after the full grace
+period (if some ongoing RPC continues for the full length of the period)
+of it may be set much sooner (such as if this Server had no RPCs underway
+at the time it was stopped or if all RPCs that it had underway completed
+very early in the grace period).</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="class">
+<dt id="grpc.beta.interfaces.StatusCode">
+<em class="property">class </em><code class="descclassname">grpc.beta.interfaces.</code><code class="descname">StatusCode</code><a class="reference internal" href="_modules/grpc/beta/interfaces.html#StatusCode"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.StatusCode" title="Permalink to this definition">¶</a></dt>
+<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">enum.Enum</span></code></p>
+<p>Mirrors grpc_status_code in the C core.</p>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.beta.interfaces.grpc_call_options">
+<code class="descclassname">grpc.beta.interfaces.</code><code class="descname">grpc_call_options</code><span class="sig-paren">(</span><em>disable_compression=False</em>, <em>credentials=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/interfaces.html#grpc_call_options"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.interfaces.grpc_call_options" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a GRPCCallOptions value to be passed at RPC invocation.</p>
+<p>All parameters are optional and should always be passed by keyword.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>disable_compression</strong> &#8211; A boolean indicating whether or not compression should
+be disabled for the request object of the RPC. Only valid for
+request-unary RPCs.</li>
+<li><strong>credentials</strong> &#8211; A ClientCredentials object to use for the invoked RPC.</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</div>
+<div class="section" id="module-grpc.beta.utilities">
+<span id="grpc-beta-utilities-module"></span><h2>grpc.beta.utilities module<a class="headerlink" href="#module-grpc.beta.utilities" title="Permalink to this headline">¶</a></h2>
+<p>Utilities for the gRPC Python Beta API.</p>
+<dl class="function">
+<dt id="grpc.beta.utilities.channel_ready_future">
+<code class="descclassname">grpc.beta.utilities.</code><code class="descname">channel_ready_future</code><span class="sig-paren">(</span><em>channel</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/beta/utilities.html#channel_ready_future"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.beta.utilities.channel_ready_future" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a future.Future tracking when an implementations.Channel is ready.</p>
+<p>Cancelling the returned future.Future does not tell the given
+implementations.Channel to abandon attempts it may have been making to
+connect; cancelling merely deactivates the return future.Future&#8217;s
+subscription to the given implementations.Channel&#8217;s connectivity.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>channel</strong> &#8211; An implementations.Channel.</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body">A future.Future that matures when the given Channel has connectivity
+interfaces.ChannelConnectivity.READY.</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</div>
+<div class="section" id="module-grpc.beta">
+<span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-grpc.beta" title="Permalink to this headline">¶</a></h2>
+</div>
+</div>
+
+
+          </div>
+          <footer>
+  
+    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
+      
+        <a href="grpc.early_adopter.html" class="btn btn-neutral float-right" title="grpc.early_adopter package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
+      
+      
+        <a href="grpc.html" class="btn btn-neutral" title="grpc package" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+      
+    </div>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'./',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="_static/jquery.js"></script>
+      <script type="text/javascript" src="_static/underscore.js"></script>
+      <script type="text/javascript" src="_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

+ 19 - 53
python/grpc.early_adopter.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.early_adopter package &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.early_adopter package &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,10 +30,10 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="index.html"/>
         <link rel="up" title="grpc package" href="grpc.html"/>
         <link rel="up" title="grpc package" href="grpc.html"/>
         <link rel="next" title="grpc.framework package" href="grpc.framework.html"/>
         <link rel="next" title="grpc.framework package" href="grpc.framework.html"/>
-        <link rel="prev" title="grpc package" href="grpc.html"/> 
+        <link rel="prev" title="grpc.beta package" href="grpc.beta.html"/> 
 
 
   
   
   <script src="_static/js/modernizr.min.js"></script>
   <script src="_static/js/modernizr.min.js"></script>
@@ -75,10 +75,17 @@
               <ul class="current">
               <ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3 current"><a class="current reference internal" href="">grpc.early_adopter package</a><ul>
 <li class="toctree-l3 current"><a class="current reference internal" href="">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -141,7 +148,7 @@
 <p>Entry points into GRPC.</p>
 <p>Entry points into GRPC.</p>
 <dl class="function">
 <dl class="function">
 <dt id="grpc.early_adopter.implementations.server">
 <dt id="grpc.early_adopter.implementations.server">
-<code class="descclassname">grpc.early_adopter.implementations.</code><code class="descname">server</code><span class="sig-paren">(</span><em>service_name</em>, <em>methods</em>, <em>port</em>, <em>private_key=None</em>, <em>certificate_chain=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations.html#server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations.server" title="Permalink to this definition">¶</a></dt>
+<code class="descclassname">grpc.early_adopter.implementations.</code><code class="descname">server</code><span class="sig-paren">(</span><em>service_name</em>, <em>methods</em>, <em>port</em>, <em>private_key=None</em>, <em>certificate_chain=None</em>, <em>thread_pool_size=8</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations.html#server"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations.server" title="Permalink to this definition">¶</a></dt>
 <dd><p>Constructs an interfaces.Server.</p>
 <dd><p>Constructs an interfaces.Server.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-name" />
@@ -158,6 +165,8 @@ automatically selected.</li>
 <li><strong>private_key</strong> &#8211; A pem-encoded private key, or None for an insecure server.</li>
 <li><strong>private_key</strong> &#8211; A pem-encoded private key, or None for an insecure server.</li>
 <li><strong>certificate_chain</strong> &#8211; A pem-encoded certificate chain, or None for an insecure
 <li><strong>certificate_chain</strong> &#8211; A pem-encoded certificate chain, or None for an insecure
 server.</li>
 server.</li>
+<li><strong>thread_pool_size</strong> &#8211; The maximum number of threads to allow in the backing
+thread pool.</li>
 </ul>
 </ul>
 </td>
 </td>
 </tr>
 </tr>
@@ -170,7 +179,7 @@ server.</li>
 
 
 <dl class="function">
 <dl class="function">
 <dt id="grpc.early_adopter.implementations.stub">
 <dt id="grpc.early_adopter.implementations.stub">
-<code class="descclassname">grpc.early_adopter.implementations.</code><code class="descname">stub</code><span class="sig-paren">(</span><em>service_name</em>, <em>methods</em>, <em>host</em>, <em>port</em>, <em>metadata_transformer=None</em>, <em>secure=False</em>, <em>root_certificates=None</em>, <em>private_key=None</em>, <em>certificate_chain=None</em>, <em>server_host_override=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations.html#stub"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations.stub" title="Permalink to this definition">¶</a></dt>
+<code class="descclassname">grpc.early_adopter.implementations.</code><code class="descname">stub</code><span class="sig-paren">(</span><em>service_name</em>, <em>methods</em>, <em>host</em>, <em>port</em>, <em>metadata_transformer=None</em>, <em>secure=False</em>, <em>root_certificates=None</em>, <em>private_key=None</em>, <em>certificate_chain=None</em>, <em>server_host_override=None</em>, <em>thread_pool_size=8</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations.html#stub"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations.stub" title="Permalink to this definition">¶</a></dt>
 <dd><p>Constructs an interfaces.Stub.</p>
 <dd><p>Constructs an interfaces.Stub.</p>
 <table class="docutils field-list" frame="void" rules="none">
 <table class="docutils field-list" frame="void" rules="none">
 <col class="field-name" />
 <col class="field-name" />
@@ -196,6 +205,8 @@ should be used.</li>
 certificate chain should be used.</li>
 certificate chain should be used.</li>
 <li><strong>server_host_override</strong> &#8211; (For testing only) the target name used for SSL
 <li><strong>server_host_override</strong> &#8211; (For testing only) the target name used for SSL
 host name checking.</li>
 host name checking.</li>
+<li><strong>thread_pool_size</strong> &#8211; The maximum number of threads to allow in the backing
+thread pool.</li>
 </ul>
 </ul>
 </td>
 </td>
 </tr>
 </tr>
@@ -206,51 +217,6 @@ host name checking.</li>
 </table>
 </table>
 </dd></dl>
 </dd></dl>
 
 
-</div>
-<div class="section" id="module-grpc.early_adopter.implementations_test">
-<span id="grpc-early-adopter-implementations-test-module"></span><h2>grpc.early_adopter.implementations_test module<a class="headerlink" href="#module-grpc.early_adopter.implementations_test" title="Permalink to this headline">¶</a></h2>
-<p>Test of the GRPC-backed ForeLink and RearLink.</p>
-<dl class="class">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest">
-<em class="property">class </em><code class="descclassname">grpc.early_adopter.implementations_test.</code><code class="descname">EarlyAdopterImplementationsTest</code><span class="sig-paren">(</span><em>methodName='runTest'</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">unittest.case.TestCase</span></code></p>
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.setUp">
-<code class="descname">setUp</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.setUp"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.setUp" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.tearDown">
-<code class="descname">tearDown</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.tearDown"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.tearDown" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testStreamStream">
-<code class="descname">testStreamStream</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.testStreamStream"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testStreamStream" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testStreamUnary">
-<code class="descname">testStreamUnary</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.testStreamUnary"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testStreamUnary" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUnaryStream">
-<code class="descname">testUnaryStream</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.testUnaryStream"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUnaryStream" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUnaryUnary">
-<code class="descname">testUnaryUnary</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.testUnaryUnary"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUnaryUnary" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUpAndDown">
-<code class="descname">testUpAndDown</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/early_adopter/implementations_test.html#EarlyAdopterImplementationsTest.testUpAndDown"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.early_adopter.implementations_test.EarlyAdopterImplementationsTest.testUpAndDown" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
 </div>
 </div>
 <div class="section" id="module-grpc.early_adopter">
 <div class="section" id="module-grpc.early_adopter">
 <span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-grpc.early_adopter" title="Permalink to this headline">¶</a></h2>
 <span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-grpc.early_adopter" title="Permalink to this headline">¶</a></h2>
@@ -266,7 +232,7 @@ host name checking.</li>
         <a href="grpc.framework.html" class="btn btn-neutral float-right" title="grpc.framework package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
         <a href="grpc.framework.html" class="btn btn-neutral float-right" title="grpc.framework package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
       
       
       
       
-        <a href="grpc.html" class="btn btn-neutral" title="grpc package" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+        <a href="grpc.beta.html" class="btn btn-neutral" title="grpc.beta package" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
       
       
     </div>
     </div>
   
   
@@ -296,7 +262,7 @@ host name checking.</li>
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'./',
             URL_ROOT:'./',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 4
python/grpc.framework.alpha.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.alpha package &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.alpha package &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="index.html"/>
         <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
         <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
         <link rel="next" title="grpc.framework.base package" href="grpc.framework.base.html"/>
         <link rel="next" title="grpc.framework.base package" href="grpc.framework.base.html"/>
         <link rel="prev" title="grpc.framework package" href="grpc.framework.html"/> 
         <link rel="prev" title="grpc.framework package" href="grpc.framework.html"/> 
@@ -75,10 +75,17 @@
               <ul class="current">
               <ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -878,7 +885,7 @@ method.</p>
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'./',
             URL_ROOT:'./',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 11 - 117
python/grpc.framework.base.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.base package &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.base package &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,7 +30,7 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="index.html"/>
         <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
         <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
         <link rel="next" title="grpc.framework.common package" href="grpc.framework.common.html"/>
         <link rel="next" title="grpc.framework.common package" href="grpc.framework.common.html"/>
         <link rel="prev" title="grpc.framework.alpha package" href="grpc.framework.alpha.html"/> 
         <link rel="prev" title="grpc.framework.alpha package" href="grpc.framework.alpha.html"/> 
@@ -75,10 +75,17 @@
               <ul class="current">
               <ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -207,26 +214,6 @@ for utility tasks.</li>
 </table>
 </table>
 </dd></dl>
 </dd></dl>
 
 
-</div>
-<div class="section" id="module-grpc.framework.base.implementations_test">
-<span id="grpc-framework-base-implementations-test-module"></span><h2>grpc.framework.base.implementations_test module<a class="headerlink" href="#module-grpc.framework.base.implementations_test" title="Permalink to this headline">¶</a></h2>
-<p>Tests for grpc.framework.base.implementations.</p>
-<dl class="class">
-<dt id="grpc.framework.base.implementations_test.ImplementationsTest">
-<em class="property">class </em><code class="descclassname">grpc.framework.base.implementations_test.</code><code class="descname">ImplementationsTest</code><span class="sig-paren">(</span><em>methodName='runTest'</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/implementations_test.html#ImplementationsTest"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.implementations_test.ImplementationsTest" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <a class="reference internal" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest" title="grpc.framework.base.interfaces_test_case.FrontAndBackTest"><code class="xref py py-class docutils literal"><span class="pre">grpc.framework.base.interfaces_test_case.FrontAndBackTest</span></code></a>, <code class="xref py py-class docutils literal"><span class="pre">unittest.case.TestCase</span></code></p>
-<dl class="method">
-<dt id="grpc.framework.base.implementations_test.ImplementationsTest.setUp">
-<code class="descname">setUp</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/implementations_test.html#ImplementationsTest.setUp"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.implementations_test.ImplementationsTest.setUp" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.implementations_test.ImplementationsTest.tearDown">
-<code class="descname">tearDown</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/implementations_test.html#ImplementationsTest.tearDown"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.implementations_test.ImplementationsTest.tearDown" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
 </div>
 </div>
 <div class="section" id="module-grpc.framework.base.in_memory">
 <div class="section" id="module-grpc.framework.base.in_memory">
 <span id="grpc-framework-base-in-memory-module"></span><h2>grpc.framework.base.in_memory module<a class="headerlink" href="#module-grpc.framework.base.in_memory" title="Permalink to this headline">¶</a></h2>
 <span id="grpc-framework-base-in-memory-module"></span><h2>grpc.framework.base.in_memory module<a class="headerlink" href="#module-grpc.framework.base.in_memory" title="Permalink to this headline">¶</a></h2>
@@ -726,99 +713,6 @@ longer is any reason to service the operation.</li>
 
 
 </dd></dl>
 </dd></dl>
 
 
-</div>
-<div class="section" id="module-grpc.framework.base.interfaces_test_case">
-<span id="grpc-framework-base-interfaces-test-case-module"></span><h2>grpc.framework.base.interfaces_test_case module<a class="headerlink" href="#module-grpc.framework.base.interfaces_test_case" title="Permalink to this headline">¶</a></h2>
-<p>Abstract tests against the interfaces of the base layer of RPC Framework.</p>
-<dl class="class">
-<dt id="grpc.framework.base.interfaces_test_case.AsynchronousEcho">
-<em class="property">class </em><code class="descclassname">grpc.framework.base.interfaces_test_case.</code><code class="descname">AsynchronousEcho</code><span class="sig-paren">(</span><em>output_consumer</em>, <em>pool</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#AsynchronousEcho"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.AsynchronousEcho" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <a class="reference internal" href="grpc.framework.foundation.html#grpc.framework.foundation.stream.Consumer" title="grpc.framework.foundation.stream.Consumer"><code class="xref py py-class docutils literal"><span class="pre">grpc.framework.foundation.stream.Consumer</span></code></a></p>
-<p>A stream.Consumer that echoes its input to another stream.Consumer.</p>
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.AsynchronousEcho.consume">
-<code class="descname">consume</code><span class="sig-paren">(</span><em>value</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#AsynchronousEcho.consume"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.AsynchronousEcho.consume" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.AsynchronousEcho.consume_and_terminate">
-<code class="descname">consume_and_terminate</code><span class="sig-paren">(</span><em>value</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#AsynchronousEcho.consume_and_terminate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.AsynchronousEcho.consume_and_terminate" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.AsynchronousEcho.terminate">
-<code class="descname">terminate</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#AsynchronousEcho.terminate"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.AsynchronousEcho.terminate" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="grpc.framework.base.interfaces_test_case.EasyServicedIngestor">
-<em class="property">class </em><code class="descclassname">grpc.framework.base.interfaces_test_case.</code><code class="descname">EasyServicedIngestor</code><span class="sig-paren">(</span><em>consumer</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#EasyServicedIngestor"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.EasyServicedIngestor" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <a class="reference internal" href="#grpc.framework.base.interfaces.ServicedIngestor" title="grpc.framework.base.interfaces.ServicedIngestor"><code class="xref py py-class docutils literal"><span class="pre">grpc.framework.base.interfaces.ServicedIngestor</span></code></a></p>
-<p>A trivial implementation of interfaces.ServicedIngestor.</p>
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.EasyServicedIngestor.consumer">
-<code class="descname">consumer</code><span class="sig-paren">(</span><em>operation_context</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#EasyServicedIngestor.consumer"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.EasyServicedIngestor.consumer" title="Permalink to this definition">¶</a></dt>
-<dd><p>See interfaces.ServicedIngestor.consumer for specification.</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="grpc.framework.base.interfaces_test_case.FrontAndBackTest">
-<em class="property">class </em><code class="descclassname">grpc.framework.base.interfaces_test_case.</code><code class="descname">FrontAndBackTest</code><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#FrontAndBackTest"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
-<p>A test suite usable against any joined Front and Back.</p>
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.FrontAndBackTest.testBidirectionalStreamingEcho">
-<code class="descname">testBidirectionalStreamingEcho</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#FrontAndBackTest.testBidirectionalStreamingEcho"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testBidirectionalStreamingEcho" title="Permalink to this definition">¶</a></dt>
-<dd><p>Tests sending multiple tickets each way.</p>
-</dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.FrontAndBackTest.testCancellation">
-<code class="descname">testCancellation</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#FrontAndBackTest.testCancellation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testCancellation" title="Permalink to this definition">¶</a></dt>
-<dd><p>Tests cancelling a long-lived operation.</p>
-</dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.FrontAndBackTest.testEntireEcho">
-<code class="descname">testEntireEcho</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#FrontAndBackTest.testEntireEcho"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testEntireEcho" title="Permalink to this definition">¶</a></dt>
-<dd><p>Tests a very simple one-ticket-each-way round-trip.</p>
-</dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.FrontAndBackTest.testExpiration">
-<code class="descname">testExpiration</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#FrontAndBackTest.testExpiration"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testExpiration" title="Permalink to this definition">¶</a></dt>
-<dd><p>Tests that operations time out.</p>
-</dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.FrontAndBackTest.testSimplestCall">
-<code class="descname">testSimplestCall</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#FrontAndBackTest.testSimplestCall"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.FrontAndBackTest.testSimplestCall" title="Permalink to this definition">¶</a></dt>
-<dd><p>Tests the absolute simplest call - a one-ticket fire-and-forget.</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="grpc.framework.base.interfaces_test_case.TestServicer">
-<em class="property">class </em><code class="descclassname">grpc.framework.base.interfaces_test_case.</code><code class="descname">TestServicer</code><span class="sig-paren">(</span><em>pool</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#TestServicer"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.TestServicer" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <a class="reference internal" href="#grpc.framework.base.interfaces.Servicer" title="grpc.framework.base.interfaces.Servicer"><code class="xref py py-class docutils literal"><span class="pre">grpc.framework.base.interfaces.Servicer</span></code></a></p>
-<p>An interfaces.Servicer with instrumented for testing.</p>
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.TestServicer.release">
-<code class="descname">release</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#TestServicer.release"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.TestServicer.release" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.base.interfaces_test_case.TestServicer.service">
-<code class="descname">service</code><span class="sig-paren">(</span><em>name</em>, <em>context</em>, <em>output_consumer</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/base/interfaces_test_case.html#TestServicer.service"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.base.interfaces_test_case.TestServicer.service" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
 </div>
 </div>
 <div class="section" id="module-grpc.framework.base.null">
 <div class="section" id="module-grpc.framework.base.null">
 <span id="grpc-framework-base-null-module"></span><h2>grpc.framework.base.null module<a class="headerlink" href="#module-grpc.framework.base.null" title="Permalink to this headline">¶</a></h2>
 <span id="grpc-framework-base-null-module"></span><h2>grpc.framework.base.null module<a class="headerlink" href="#module-grpc.framework.base.null" title="Permalink to this headline">¶</a></h2>
@@ -936,7 +830,7 @@ the operation.</td>
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'./',
             URL_ROOT:'./',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 13 - 161
python/grpc.framework.common.html

@@ -8,7 +8,7 @@
   
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
   
-  <title>grpc.framework.common package &mdash; grpcio 0.10.0a0 documentation</title>
+  <title>grpc.framework.common package &mdash; grpcio 0.11.0b0 documentation</title>
   
   
 
 
   
   
@@ -30,9 +30,9 @@
   
   
 
 
   
   
-    <link rel="top" title="grpcio 0.10.0a0 documentation" href="index.html"/>
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="index.html"/>
         <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
         <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
-        <link rel="next" title="grpc.framework.face package" href="grpc.framework.face.html"/>
+        <link rel="next" title="grpc.framework.core package" href="grpc.framework.core.html"/>
         <link rel="prev" title="grpc.framework.base package" href="grpc.framework.base.html"/> 
         <link rel="prev" title="grpc.framework.base package" href="grpc.framework.base.html"/> 
 
 
   
   
@@ -75,10 +75,17 @@
               <ul class="current">
               <ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
 <li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
 <li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
-<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations_test">grpc.early_adopter.implementations_test module</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 <li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
 </ul>
 </ul>
 </li>
 </li>
@@ -159,161 +166,6 @@
 <p>Describes the control flow style of RPC method implementation.</p>
 <p>Describes the control flow style of RPC method implementation.</p>
 </dd></dl>
 </dd></dl>
 
 
-</div>
-<div class="section" id="module-grpc.framework.common.test_constants">
-<span id="grpc-framework-common-test-constants-module"></span><h2>grpc.framework.common.test_constants module<a class="headerlink" href="#module-grpc.framework.common.test_constants" title="Permalink to this headline">¶</a></h2>
-<p>Constants shared among tests throughout RPC Framework.</p>
-</div>
-<div class="section" id="module-grpc.framework.common.test_control">
-<span id="grpc-framework-common-test-control-module"></span><h2>grpc.framework.common.test_control module<a class="headerlink" href="#module-grpc.framework.common.test_control" title="Permalink to this headline">¶</a></h2>
-<p>Code for instructing systems under test to block or fail.</p>
-<dl class="class">
-<dt id="grpc.framework.common.test_control.Control">
-<em class="property">class </em><code class="descclassname">grpc.framework.common.test_control.</code><code class="descname">Control</code><a class="reference internal" href="_modules/grpc/framework/common/test_control.html#Control"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_control.Control" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
-<p>An object that accepts program control from a system under test.</p>
-<p>Systems under test passed a Control should call its control() method
-frequently during execution. The control() method may block, raise an
-exception, or do nothing, all according to the enclosing test&#8217;s desire for
-the system under test to simulate hanging, failing, or functioning.</p>
-<dl class="method">
-<dt id="grpc.framework.common.test_control.Control.control">
-<code class="descname">control</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_control.html#Control.control"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_control.Control.control" title="Permalink to this definition">¶</a></dt>
-<dd><p>Potentially does anything.</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="grpc.framework.common.test_control.PauseFailControl">
-<em class="property">class </em><code class="descclassname">grpc.framework.common.test_control.</code><code class="descname">PauseFailControl</code><a class="reference internal" href="_modules/grpc/framework/common/test_control.html#PauseFailControl"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_control.PauseFailControl" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <a class="reference internal" href="#grpc.framework.common.test_control.Control" title="grpc.framework.common.test_control.Control"><code class="xref py py-class docutils literal"><span class="pre">grpc.framework.common.test_control.Control</span></code></a></p>
-<p>A Control that can be used to pause or fail code under control.</p>
-<dl class="method">
-<dt id="grpc.framework.common.test_control.PauseFailControl.control">
-<code class="descname">control</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_control.html#PauseFailControl.control"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_control.PauseFailControl.control" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_control.PauseFailControl.fail">
-<code class="descname">fail</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwds</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_control.html#PauseFailControl.fail"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_control.PauseFailControl.fail" title="Permalink to this definition">¶</a></dt>
-<dd><p>Fails code under control while controlling code is in context.</p>
-</dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_control.PauseFailControl.pause">
-<code class="descname">pause</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwds</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_control.html#PauseFailControl.pause"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_control.PauseFailControl.pause" title="Permalink to this definition">¶</a></dt>
-<dd><p>Pauses code under control while controlling code is in context.</p>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-grpc.framework.common.test_coverage">
-<span id="grpc-framework-common-test-coverage-module"></span><h2>grpc.framework.common.test_coverage module<a class="headerlink" href="#module-grpc.framework.common.test_coverage" title="Permalink to this headline">¶</a></h2>
-<p>Governs coverage for tests of RPCs throughout RPC Framework.</p>
-<dl class="class">
-<dt id="grpc.framework.common.test_coverage.Coverage">
-<em class="property">class </em><code class="descclassname">grpc.framework.common.test_coverage.</code><code class="descname">Coverage</code><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage" title="Permalink to this definition">¶</a></dt>
-<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">object</span></code></p>
-<p>Specification of test coverage.</p>
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testCancelledStreamRequestStreamResponse">
-<code class="descname">testCancelledStreamRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testCancelledStreamRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testCancelledStreamRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testCancelledStreamRequestUnaryResponse">
-<code class="descname">testCancelledStreamRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testCancelledStreamRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testCancelledStreamRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testCancelledUnaryRequestStreamResponse">
-<code class="descname">testCancelledUnaryRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testCancelledUnaryRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testCancelledUnaryRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testCancelledUnaryRequestUnaryResponse">
-<code class="descname">testCancelledUnaryRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testCancelledUnaryRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testCancelledUnaryRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testExpiredStreamRequestStreamResponse">
-<code class="descname">testExpiredStreamRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testExpiredStreamRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testExpiredStreamRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testExpiredStreamRequestUnaryResponse">
-<code class="descname">testExpiredStreamRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testExpiredStreamRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testExpiredStreamRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testExpiredUnaryRequestStreamResponse">
-<code class="descname">testExpiredUnaryRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testExpiredUnaryRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testExpiredUnaryRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testExpiredUnaryRequestUnaryResponse">
-<code class="descname">testExpiredUnaryRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testExpiredUnaryRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testExpiredUnaryRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testFailedStreamRequestStreamResponse">
-<code class="descname">testFailedStreamRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testFailedStreamRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testFailedStreamRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testFailedStreamRequestUnaryResponse">
-<code class="descname">testFailedStreamRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testFailedStreamRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testFailedStreamRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testFailedUnaryRequestStreamResponse">
-<code class="descname">testFailedUnaryRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testFailedUnaryRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testFailedUnaryRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testFailedUnaryRequestUnaryResponse">
-<code class="descname">testFailedUnaryRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testFailedUnaryRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testFailedUnaryRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testParallelInvocations">
-<code class="descname">testParallelInvocations</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testParallelInvocations"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testParallelInvocations" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testSequentialInvocations">
-<code class="descname">testSequentialInvocations</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testSequentialInvocations"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testSequentialInvocations" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testSuccessfulStreamRequestStreamResponse">
-<code class="descname">testSuccessfulStreamRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testSuccessfulStreamRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testSuccessfulStreamRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testSuccessfulStreamRequestUnaryResponse">
-<code class="descname">testSuccessfulStreamRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testSuccessfulStreamRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testSuccessfulStreamRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testSuccessfulUnaryRequestStreamResponse">
-<code class="descname">testSuccessfulUnaryRequestStreamResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testSuccessfulUnaryRequestStreamResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testSuccessfulUnaryRequestStreamResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testSuccessfulUnaryRequestUnaryResponse">
-<code class="descname">testSuccessfulUnaryRequestUnaryResponse</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testSuccessfulUnaryRequestUnaryResponse"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testSuccessfulUnaryRequestUnaryResponse" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="grpc.framework.common.test_coverage.Coverage.testWaitingForSomeButNotAllParallelInvocations">
-<code class="descname">testWaitingForSomeButNotAllParallelInvocations</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/common/test_coverage.html#Coverage.testWaitingForSomeButNotAllParallelInvocations"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.common.test_coverage.Coverage.testWaitingForSomeButNotAllParallelInvocations" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
 </div>
 </div>
 <div class="section" id="module-grpc.framework.common">
 <div class="section" id="module-grpc.framework.common">
 <span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-grpc.framework.common" title="Permalink to this headline">¶</a></h2>
 <span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-grpc.framework.common" title="Permalink to this headline">¶</a></h2>
@@ -326,7 +178,7 @@ the system under test to simulate hanging, failing, or functioning.</p>
   
   
     <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
     <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
       
       
-        <a href="grpc.framework.face.html" class="btn btn-neutral float-right" title="grpc.framework.face package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
+        <a href="grpc.framework.core.html" class="btn btn-neutral float-right" title="grpc.framework.core package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
       
       
       
       
         <a href="grpc.framework.base.html" class="btn btn-neutral" title="grpc.framework.base package" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
         <a href="grpc.framework.base.html" class="btn btn-neutral" title="grpc.framework.base package" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
@@ -359,7 +211,7 @@ the system under test to simulate hanging, failing, or functioning.</p>
     <script type="text/javascript">
     <script type="text/javascript">
         var DOCUMENTATION_OPTIONS = {
         var DOCUMENTATION_OPTIONS = {
             URL_ROOT:'./',
             URL_ROOT:'./',
-            VERSION:'0.10.0a0',
+            VERSION:'0.11.0b0',
             COLLAPSE_INDEX:false,
             COLLAPSE_INDEX:false,
             FILE_SUFFIX:'.html',
             FILE_SUFFIX:'.html',
             HAS_SOURCE:  true
             HAS_SOURCE:  true

+ 263 - 0
python/grpc.framework.core.html

@@ -0,0 +1,263 @@
+
+
+<!DOCTYPE html>
+<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
+<head>
+  <meta charset="utf-8">
+  
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+  
+  <title>grpc.framework.core package &mdash; grpcio 0.11.0b0 documentation</title>
+  
+
+  
+  
+
+  
+
+  
+  
+    
+
+  
+
+  
+  
+    <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
+  
+
+  
+
+  
+    <link rel="top" title="grpcio 0.11.0b0 documentation" href="index.html"/>
+        <link rel="up" title="grpc.framework package" href="grpc.framework.html"/>
+        <link rel="next" title="grpc.framework.crust package" href="grpc.framework.crust.html"/>
+        <link rel="prev" title="grpc.framework.common package" href="grpc.framework.common.html"/> 
+
+  
+  <script src="_static/js/modernizr.min.js"></script>
+
+</head>
+
+<body class="wy-body-for-nav" role="document">
+
+  <div class="wy-grid-for-nav">
+
+    
+    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
+      <div class="wy-side-nav-search">
+        
+
+        
+          <a href="index.html" class="icon icon-home"> grpcio
+        
+
+        
+        </a>
+
+        
+<div role="search">
+  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
+    <input type="text" name="q" placeholder="Search docs" />
+    <input type="hidden" name="check_keywords" value="yes" />
+    <input type="hidden" name="area" value="default" />
+  </form>
+</div>
+
+        
+      </div>
+
+      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
+        
+          
+          
+              <ul class="current">
+<li class="toctree-l1 current"><a class="reference internal" href="grpc.html">grpc package</a><ul class="current">
+<li class="toctree-l2 current"><a class="reference internal" href="grpc.html#subpackages">Subpackages</a><ul class="current">
+<li class="toctree-l3"><a class="reference internal" href="grpc.beta.html">grpc.beta package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.implementations">grpc.beta.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.interfaces">grpc.beta.interfaces module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta.utilities">grpc.beta.utilities module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.beta.html#module-grpc.beta">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal" href="grpc.early_adopter.html">grpc.early_adopter package</a><ul>
+<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#submodules">Submodules</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter.implementations">grpc.early_adopter.implementations module</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.early_adopter.html#module-grpc.early_adopter">Module contents</a></li>
+</ul>
+</li>
+<li class="toctree-l3 current"><a class="reference internal" href="grpc.framework.html">grpc.framework package</a><ul class="current">
+<li class="toctree-l4 current"><a class="reference internal" href="grpc.framework.html#subpackages">Subpackages</a></li>
+<li class="toctree-l4"><a class="reference internal" href="grpc.framework.html#module-grpc.framework">Module contents</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="grpc.html#module-grpc">Module contents</a></li>
+</ul>
+</li>
+</ul>
+
+          
+        
+      </div>
+      &nbsp;
+    </nav>
+
+    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
+
+      
+      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
+        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
+        <a href="index.html">grpcio</a>
+      </nav>
+
+
+      
+      <div class="wy-nav-content">
+        <div class="rst-content">
+          <div role="navigation" aria-label="breadcrumbs navigation">
+  <ul class="wy-breadcrumbs">
+    <li><a href="index.html">Docs</a> &raquo;</li>
+      
+          <li><a href="grpc.html">grpc package</a> &raquo;</li>
+      
+          <li><a href="grpc.framework.html">grpc.framework package</a> &raquo;</li>
+      
+    <li>grpc.framework.core package</li>
+      <li class="wy-breadcrumbs-aside">
+        
+          
+            <a href="_sources/grpc.framework.core.txt" rel="nofollow"> View page source</a>
+          
+        
+      </li>
+  </ul>
+  <hr/>
+</div>
+          <div role="main" class="document">
+            
+  <div class="section" id="grpc-framework-core-package">
+<h1>grpc.framework.core package<a class="headerlink" href="#grpc-framework-core-package" title="Permalink to this headline">¶</a></h1>
+<div class="section" id="submodules">
+<h2>Submodules<a class="headerlink" href="#submodules" title="Permalink to this headline">¶</a></h2>
+</div>
+<div class="section" id="module-grpc.framework.core.implementations">
+<span id="grpc-framework-core-implementations-module"></span><h2>grpc.framework.core.implementations module<a class="headerlink" href="#module-grpc.framework.core.implementations" title="Permalink to this headline">¶</a></h2>
+<p>Entry points into the ticket-exchange-based base layer implementation.</p>
+<dl class="function">
+<dt id="grpc.framework.core.implementations.invocation_end_link">
+<code class="descclassname">grpc.framework.core.implementations.</code><code class="descname">invocation_end_link</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/core/implementations.html#invocation_end_link"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.core.implementations.invocation_end_link" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a base.End-links.Link suitable for operation invocation.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Returns:</th><td class="field-body">An object that is both a base.End and a links.Link, that supports operation
+invocation, and that translates operation invocation into ticket exchange.</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="grpc.framework.core.implementations.service_end_link">
+<code class="descclassname">grpc.framework.core.implementations.</code><code class="descname">service_end_link</code><span class="sig-paren">(</span><em>servicer</em>, <em>default_timeout</em>, <em>maximum_timeout</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/grpc/framework/core/implementations.html#service_end_link"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#grpc.framework.core.implementations.service_end_link" title="Permalink to this definition">¶</a></dt>
+<dd><p>Creates a base.End-links.Link suitable for operation service.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
+<li><strong>servicer</strong> &#8211; A base.Servicer for servicing operations.</li>
+<li><strong>default_timeout</strong> &#8211; A length of time in seconds to be used as the default
+time alloted for a single operation.</li>
+<li><strong>maximum_timeout</strong> &#8211; A length of time in seconds to be used as the maximum
+time alloted for a single operation.</li>
+</ul>
+</td>
+</tr>
+<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">An object that is both a base.End and a links.Link and that services
+operations that arrive at it through ticket exchange.</p>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</div>
+<div class="section" id="module-grpc.framework.core">
+<span id="module-contents"></span><h2>Module contents<a class="headerlink" href="#module-grpc.framework.core" title="Permalink to this headline">¶</a></h2>
+</div>
+</div>
+
+
+          </div>
+          <footer>
+  
+    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
+      
+        <a href="grpc.framework.crust.html" class="btn btn-neutral float-right" title="grpc.framework.crust package" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
+      
+      
+        <a href="grpc.framework.common.html" class="btn btn-neutral" title="grpc.framework.common package" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+      
+    </div>
+  
+
+  <hr/>
+
+  <div role="contentinfo">
+    <p>
+        &copy; Copyright 2015, Author.
+    </p>
+  </div>
+  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
+
+</footer>
+
+        </div>
+      </div>
+
+    </section>
+
+  </div>
+  
+
+
+  
+
+    <script type="text/javascript">
+        var DOCUMENTATION_OPTIONS = {
+            URL_ROOT:'./',
+            VERSION:'0.11.0b0',
+            COLLAPSE_INDEX:false,
+            FILE_SUFFIX:'.html',
+            HAS_SOURCE:  true
+        };
+    </script>
+      <script type="text/javascript" src="_static/jquery.js"></script>
+      <script type="text/javascript" src="_static/underscore.js"></script>
+      <script type="text/javascript" src="_static/doctools.js"></script>
+
+  
+
+  
+  
+    <script type="text/javascript" src="_static/js/theme.js"></script>
+  
+
+  
+  
+  <script type="text/javascript">
+      jQuery(function () {
+          SphinxRtdTheme.StickyNav.enable();
+      });
+  </script>
+   
+
+</body>
+</html>

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است