<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
  Class: Qpid::Proton::Container
  
    &mdash; Qpid Proton Ruby API
  
</title>

  <link rel="stylesheet" href="../../css/style.css" type="text/css" />

  <link rel="stylesheet" href="../../css/common.css" type="text/css" />

<script type="text/javascript">
  pathId = "Qpid::Proton::Container";
  relpath = '../../';
</script>


  <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>

  <script type="text/javascript" charset="utf-8" src="../../js/app.js"></script>


  </head>
  <body>
    <div class="nav_wrap">
      <iframe id="nav" src="../../class_list.html?1"></iframe>
      <div id="resizer"></div>
    </div>

    <div id="main" tabindex="-1">
      <div id="header">
        <div id="menu">
  
    <a href="../../_index.html">Index (C)</a> &raquo;
    <span class='title'><span class='object_link'><a href="../../Qpid.html" title="Qpid (module)">Qpid</a></span></span> &raquo; <span class='title'><span class='object_link'><a href="../Proton.html" title="Qpid::Proton (module)">Proton</a></span></span>
     &raquo; 
    <span class="title">Container</span>
  
</div>

        <div id="search">
  
    <a class="full_list_link" id="class_list_link"
        href="../../class_list.html">

        <svg width="24" height="24">
          <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
          <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
          <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
        </svg>
    </a>
  
</div>
        <div class="clear"></div>
      </div>

      <div id="content"><h1>Class: Qpid::Proton::Container
  
  
  
</h1>
<div class="box_info">
  
  <dl>
    <dt>Inherits:</dt>
    <dd>
      <span class="inheritName">Object</span>
      
        <ul class="fullTree">
          <li>Object</li>
          
            <li class="next">Qpid::Proton::Container</li>
          
        </ul>
        <a href="#" class="inheritanceTree">show all</a>
      
    </dd>
  </dl>
  

  
  
  
  
  

  

  
  <dl>
    <dt>Defined in:</dt>
    <dd>lib/core/container.rb</dd>
  </dl>
  
</div>

<h2>Overview</h2><div class="docstring">
  <div class="discussion">
    
<p>An AMQP container manages a set of <span class='object_link'><a href="Listener.html" title="Qpid::Proton::Listener (class)">Listener</a></span>s and <span class='object_link'><a href="Connection.html" title="Qpid::Proton::Connection (class)">Connection</a></span>s which contain #Sender and #Receiver links to transfer messages.  Usually, each AMQP client or server process has a single container for all of its connections and links.</p>

<p>One or more threads can call <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span>, events generated by all the listeners and connections will be dispatched in the <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> threads.</p>


  </div>
</div>
<div class="tags">
  

</div><div id="subclasses">
  <h2>Direct Known Subclasses</h2>
  <p class="children"><span class='object_link'><a href="Reactor/Container.html" title="Qpid::Proton::Reactor::Container (class)">Reactor::Container</a></span></p>
</div>
<h2>Defined Under Namespace</h2>
<p class="children">
  
    
  
    
      <strong class="classes">Classes:</strong> <span class='object_link'><a href="Container/ConnectionTask.html" title="Qpid::Proton::Container::ConnectionTask (class)">ConnectionTask</a></span>, <span class='object_link'><a href="Container/ListenTask.html" title="Qpid::Proton::Container::ListenTask (class)">ListenTask</a></span>, <span class='object_link'><a href="Container/SelectWaker.html" title="Qpid::Proton::Container::SelectWaker (class)">SelectWaker</a></span>, <span class='object_link'><a href="Container/StoppedError.html" title="Qpid::Proton::Container::StoppedError (class)">StoppedError</a></span>
    
  
</p>




  <h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
  <ul class="summary">
    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#auto_stop-instance_method" title="#auto_stop (instance method)">#<strong>auto_stop</strong>  &#x21d2; Bool </a>
    

    
  </span>
  
  
  
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Auto-stop flag.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#handler-instance_method" title="#handler (instance method)">#<strong>handler</strong>  &#x21d2; MessagingHandler </a>
    

    
  </span>
  
  
  
    
      <span class="note title readonly">readonly</span>
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>The container-wide handler.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#id-instance_method" title="#id (instance method)">#<strong>id</strong>  &#x21d2; String </a>
    

    
  </span>
  
  
  
    
      <span class="note title readonly">readonly</span>
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Unique identifier for this container.</p>
</div></span>
  
</li>

    
      <li class="public ">
  <span class="summary_signature">
    
      <a href="#stopped-instance_method" title="#stopped (instance method)">#<strong>stopped</strong>  &#x21d2; Bool </a>
    

    
  </span>
  
  
  
    
    
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>True if the container has been stopped and can no longer be used.</p>
</div></span>
  
</li>

    
  </ul>




  
    <h2>
      Instance Method Summary
      <small><a href="#" class="summary_toggle">collapse</a></small>
    </h2>

    <ul class="summary">
      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#connect-instance_method" title="#connect (instance method)">#<strong>connect</strong>(url, opts = nil)  &#x21d2; Connection </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Open an AMQP connection.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#connect_io-instance_method" title="#connect_io (instance method)">#<strong>connect_io</strong>(io, opts = nil)  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Open an AMQP protocol connection on an existing IO object.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong>(*args)  &#x21d2; Container </a>
    

    
  </span>
  
  
    <span class="note title constructor">constructor</span>
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Create a new Container.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#inspect-instance_method" title="#inspect (instance method)">#<strong>inspect</strong>  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#listen-instance_method" title="#listen (instance method)">#<strong>listen</strong>(url, handler = Listener::Handler.new)  &#x21d2; Listener </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Listen for incoming AMQP connections.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#listen_io-instance_method" title="#listen_io (instance method)">#<strong>listen_io</strong>(io, handler = Listener::Handler.new)  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Listen for incoming AMQP connections on an existing server socket.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#run-instance_method" title="#run (instance method)">#<strong>run</strong>  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Run the container: wait for IO activity, dispatch events to handlers.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#running-instance_method" title="#running (instance method)">#<strong>running</strong>  &#x21d2; Bool </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Number of threads in <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span>.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#stop-instance_method" title="#stop (instance method)">#<strong>stop</strong>(error = nil, panic = nil)  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Stop the container.</p>
</div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#to_s-instance_method" title="#to_s (instance method)">#<strong>to_s</strong>  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'></div></span>
  
</li>

      
        <li class="public ">
  <span class="summary_signature">
    
      <a href="#work_queue-instance_method" title="#work_queue (instance method)">#<strong>work_queue</strong>  </a>
    

    
  </span>
  
  
  
  
  
  
  

  
    <span class="summary_desc"><div class='inline'>
<p>Get the <span class='object_link'><a href="WorkQueue.html" title="Qpid::Proton::WorkQueue (class)">WorkQueue</a></span> that can be used to schedule code to be run by the container.</p>
</div></span>
  
</li>

      
    </ul>
  


  
  
  
  
  
  <div id="constructor_details" class="method_details_list">
  <h2>Constructor Details</h2>
  
    <div class="method_details first">
  <h3 class="signature first" id="initialize-instance_method">
  
    
      <span class="overload">#<strong>initialize</strong>(id = nil)  &#x21d2; <tt><span class='object_link'><a href="" title="Qpid::Proton::Container (class)">Container</a></span></tt> </span>
    
      <span class="overload">#<strong>initialize</strong>(handler = nil, id = nil)  &#x21d2; <tt><span class='object_link'><a href="" title="Qpid::Proton::Container (class)">Container</a></span></tt> </span>
    
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Create a new Container</p>


  </div>
</div>
<div class="tags">
  
  <p class="tag_title">Overloads:</p>
  <ul class="overload">
    
      
      <li class="overload_item">
        <span class="signature">#<strong>initialize</strong>(id = nil)  &#x21d2; <tt><span class='object_link'><a href="" title="Qpid::Proton::Container (class)">Container</a></span></tt> </span>
        <div class="docstring">
  <div class="discussion">
    

  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>id</span>
      
      
        <span class='type'>(<tt>String</tt>, <tt>Symbol</tt>)</span>
      
      
        <em class="default">(defaults to: <tt>nil</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>A unique ID for this container, use random UUID if nil.</p>
</div>
      
    </li>
  
</ul>


</div>
      </li>
    
      
      <li class="overload_item">
        <span class="signature">#<strong>initialize</strong>(handler = nil, id = nil)  &#x21d2; <tt><span class='object_link'><a href="" title="Qpid::Proton::Container (class)">Container</a></span></tt> </span>
        <div class="docstring">
  <div class="discussion">
    

  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>id</span>
      
      
        <span class='type'>(<tt>String</tt>, <tt>Symbol</tt>)</span>
      
      
        <em class="default">(defaults to: <tt>nil</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>A unique ID for this container, use random UUID if nil.</p>
</div>
      
    </li>
  
    <li>
      
        <span class='name'>handler</span>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span></tt>)</span>
      
      
        <em class="default">(defaults to: <tt>nil</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>Optional default handler for connections that do not have their own handler (see <span class='object_link'><a href="#connect-instance_method" title="Qpid::Proton::Container#connect (method)">#connect</a></span> and <span class='object_link'><a href="#listen-instance_method" title="Qpid::Proton::Container#listen (method)">#listen</a></span>)</p>

<p><strong>Note</strong>: For multi-threaded code, it is recommended to use a separate handler instance for each connection, as a shared handler may be called concurrently.</p>
</div>
      
    </li>
  
</ul>


</div>
      </li>
    
  </ul>


</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 55</span>

<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='op'>*</span><span class='id identifier rubyid_args'>args</span><span class='rparen'>)</span>
  <span class='ivar'>@handler</span><span class='comma'>,</span> <span class='ivar'>@id</span> <span class='op'>=</span> <span class='kw'>nil</span>
  <span class='kw'>case</span> <span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
  <span class='kw'>when</span> <span class='int'>2</span> <span class='kw'>then</span> <span class='ivar'>@handler</span><span class='comma'>,</span> <span class='ivar'>@id</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span>
  <span class='kw'>when</span> <span class='int'>1</span> <span class='kw'>then</span>
    <span class='ivar'>@id</span> <span class='op'>=</span> <span class='const'>String</span><span class='period'>.</span><span class='id identifier rubyid_try_convert'>try_convert</span><span class='lparen'>(</span><span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='lparen'>(</span><span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span> <span class='kw'>if</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Symbol</span><span class='rparen'>)</span>
    <span class='ivar'>@handler</span> <span class='op'>=</span> <span class='id identifier rubyid_args'>args</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span> <span class='kw'>unless</span> <span class='ivar'>@id</span>
  <span class='kw'>when</span> <span class='int'>0</span> <span class='kw'>then</span>
  <span class='kw'>else</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="ArgumentError.html" title="Qpid::Proton::ArgumentError (class)">ArgumentError</a></span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>wrong number of arguments (given </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_args'>args</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>, expected 0..2</span><span class='tstring_end'>&quot;</span></span>
  <span class='kw'>end</span>  <span class='comment'># Use an empty messaging adapter to give default behaviour if there&#39;s no global handler.
</span>
  <span class='ivar'>@adapter</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Handler.html" title="Qpid::Proton::Handler (module)">Handler</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Handler/Adapter.html" title="Qpid::Proton::Handler::Adapter (class)">Adapter</a></span></span><span class='period'>.</span><span class='id identifier rubyid_adapt'><span class='object_link'><a href="Handler/Adapter.html#adapt-class_method" title="Qpid::Proton::Handler::Adapter.adapt (method)">adapt</a></span></span><span class='lparen'>(</span><span class='ivar'>@handler</span><span class='rparen'>)</span> <span class='op'>||</span> <span class='const'><span class='object_link'><a href="Handler.html" title="Qpid::Proton::Handler (module)">Handler</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Handler/MessagingAdapter.html" title="Qpid::Proton::Handler::MessagingAdapter (class)">MessagingAdapter</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Handler/Adapter.html#initialize-instance_method" title="Qpid::Proton::Handler::Adapter#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='kw'>nil</span><span class='rparen'>)</span>
  <span class='ivar'>@id</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='ivar'>@id</span> <span class='op'>||</span> <span class='const'>SecureRandom</span><span class='period'>.</span><span class='id identifier rubyid_uuid'>uuid</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_freeze'>freeze</span>

  <span class='comment'># Threading and implementation notes: see comment on #run_one
</span>  <span class='ivar'>@work</span> <span class='op'>=</span> <span class='const'>Queue</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
  <span class='ivar'>@work</span> <span class='op'>&lt;&lt;</span> <span class='symbol'>:start</span>
  <span class='ivar'>@work</span> <span class='op'>&lt;&lt;</span> <span class='symbol'>:select</span>
  <span class='ivar'>@wake</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Container/SelectWaker.html" title="Qpid::Proton::Container::SelectWaker (class)">SelectWaker</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Container/SelectWaker.html#initialize-instance_method" title="Qpid::Proton::Container::SelectWaker#initialize (method)">new</a></span></span>   <span class='comment'># Wakes #run thread in IO.select
</span>  <span class='ivar'>@auto_stop</span> <span class='op'>=</span> <span class='kw'>true</span>         <span class='comment'># Stop when @active drops to 0
</span>  <span class='ivar'>@work_queue</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="WorkQueue.html" title="Qpid::Proton::WorkQueue (class)">WorkQueue</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span>  <span class='comment'># work scheduled by other threads for :select context
</span>
  <span class='comment'># Following instance variables protected by lock
</span>  <span class='ivar'>@lock</span> <span class='op'>=</span> <span class='const'>Mutex</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
  <span class='ivar'>@active</span> <span class='op'>=</span> <span class='int'>0</span>               <span class='comment'># All active tasks, in @selectable, @work or being processed
</span>  <span class='ivar'>@selectable</span> <span class='op'>=</span> <span class='const'>Set</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>     <span class='comment'># Tasks ready to block in IO.select
</span>  <span class='ivar'>@running</span> <span class='op'>=</span> <span class='int'>0</span>              <span class='comment'># Count of #run threads
</span>  <span class='ivar'>@stopped</span> <span class='op'>=</span> <span class='kw'>false</span>          <span class='comment'># #stop called
</span>  <span class='ivar'>@stop_err</span> <span class='op'>=</span> <span class='kw'>nil</span>           <span class='comment'># Optional error to pass to tasks, from #stop
</span>  <span class='ivar'>@panic</span> <span class='op'>=</span> <span class='kw'>nil</span>              <span class='comment'># Exception caught in a run thread, to be raised by all run threads
</span><span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
  
</div>

  <div id="instance_attr_details" class="attr_details">
    <h2>Instance Attribute Details</h2>
    
      
      <span id="auto_stop=-instance_method"></span>
      <div class="method_details first">
  <h3 class="signature first" id="auto_stop-instance_method">
  
    #<strong>auto_stop</strong>  &#x21d2; <tt>Bool</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Auto-stop flag.</p>

<p>True (the default) means that the container will stop automatically, as if <span class='object_link'><a href="#stop-instance_method" title="Qpid::Proton::Container#stop (method)">#stop</a></span> had been called, when the last listener or connection closes.</p>

<p>False means <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> will not return unless <span class='object_link'><a href="#stop-instance_method" title="Qpid::Proton::Container#stop (method)">#stop</a></span> is called.</p>


  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt>Bool</tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>auto-stop state</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


104
105
106</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 104</span>

<span class='kw'>def</span> <span class='id identifier rubyid_auto_stop'>auto_stop</span>
  <span class='ivar'>@auto_stop</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id=""></span>
      <div class="method_details ">
  <h3 class="signature " id="handler-instance_method">
  
    #<strong>handler</strong>  &#x21d2; <tt><span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span></tt>  <span class="extras">(readonly)</span>
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns The container-wide handler.</p>


  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span></tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>The container-wide handler</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


88
89
90</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 88</span>

<span class='kw'>def</span> <span class='id identifier rubyid_handler'>handler</span>
  <span class='ivar'>@handler</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id=""></span>
      <div class="method_details ">
  <h3 class="signature " id="id-instance_method">
  
    #<strong>id</strong>  &#x21d2; <tt>String</tt>  <span class="extras">(readonly)</span>
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Returns unique identifier for this container.</p>


  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt>String</tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>unique identifier for this container</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


91
92
93</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 91</span>

<span class='kw'>def</span> <span class='id identifier rubyid_id'>id</span>
  <span class='ivar'>@id</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      
      <span id="stopped=-instance_method"></span>
      <div class="method_details ">
  <h3 class="signature " id="stopped-instance_method">
  
    #<strong>stopped</strong>  &#x21d2; <tt>Bool</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>True if the container has been stopped and can no longer be used.</p>


  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt>Bool</tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>stopped state</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


108
109
110</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 108</span>

<span class='kw'>def</span> <span class='id identifier rubyid_stopped'>stopped</span>
  <span class='ivar'>@stopped</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
  </div>


  <div id="instance_method_details" class="method_details_list">
    <h2>Instance Method Details</h2>

    
      <div class="method_details first">
  <h3 class="signature first" id="connect-instance_method">
  
    #<strong>connect</strong>(url, opts = nil)  &#x21d2; <tt><span class='object_link'><a href="Connection.html" title="Qpid::Proton::Connection (class)">Connection</a></span></tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Open an AMQP connection.</p>

<p>url.scheme must be “amqp” or “amqps”, url.scheme.nil? is treated as “amqp” url.user, url.password are used as defaults if <a href=":user">opts</a>, <a href=":password">opts</a> are nil</p>


  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>url</span>
      
      
        <span class='type'>(<tt>String</tt>, <tt><span class='object_link'>URI</span></tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>Open a TCPSocket to url.host, url.port.</p>
</div>
      
    </li>
  
</ul>

  
    
    
    
    
    <p class="tag_title">Options Hash (<tt>opts</tt>):</p>
    <ul class="option">
      
        <li>
          <span class="name">:handler</span>
          <span class="type">(<tt><span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span></tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>handler for events related to this connection.</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:user</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>User name for authentication</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:password</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Authentication secret</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:virtual_host</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Virtual host name</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:container_id</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
              &mdash; default:
              <tt>provided by {Container}</tt>
            
          </span>
          
            &mdash; <div class='inline'>
<p>override advertised container-id</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:properties</span>
          <span class="type">(<tt><span class='object_link'>Hash</span>&lt;Symbol=&gt;Object&gt;</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Application-defined properties</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:offered_capabilities</span>
          <span class="type">(<tt><span class='object_link'>Array</span>&lt;Symbol&gt;</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Extensions the endpoint supports</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:desired_capabilities</span>
          <span class="type">(<tt><span class='object_link'>Array</span>&lt;Symbol&gt;</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Extensions the endpoint can use</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:idle_timeout</span>
          <span class="type">(<tt>Numeric</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Seconds before closing an idle connection</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:max_sessions</span>
          <span class="type">(<tt>Integer</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Limit the number of active sessions</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:max_frame_size</span>
          <span class="type">(<tt>Integer</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Limit the size of AMQP frames</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:sasl_enabled</span>
          <span class="type">(<tt>Boolean</tt>)</span>
          <span class="default">
            
              &mdash; default:
              <tt>false</tt>
            
          </span>
          
            &mdash; <div class='inline'>
<p>Enable or disable SASL.</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:sasl_allow_insecure_mechs</span>
          <span class="type">(<tt>Boolean</tt>)</span>
          <span class="default">
            
              &mdash; default:
              <tt>false</tt>
            
          </span>
          
            &mdash; <div class='inline'>
<p>Allow mechanisms that send secrets in cleartext</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:sasl_allowed_mechs</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Specify the SASL mechanisms allowed for this connection.  The value is a space-separated list of mechanism names. The mechanisms allowed by default are determined by your SASL library and system configuration, with two exceptions: GSSAPI and GSS-SPNEGO are disabled by default.  To enable them, you must explicitly add them using this option. Clients must set the allowed mechanisms before the the outgoing connection is attempted.  Servers must set them before the listening connection is setup.</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:ssl_domain</span>
          <span class="type">(<tt><span class='object_link'><a href="SSLDomain.html" title="Qpid::Proton::SSLDomain (class)">SSLDomain</a></span></tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>SSL configuration domain.</p>
</div>
          
        </li>
      
    </ul>
  

<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="Connection.html" title="Qpid::Proton::Connection (class)">Connection</a></span></tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>The new AMQP connection</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


121
122
123
124
125
126
127
128
129
130
131</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 121</span>

<span class='kw'>def</span> <span class='id identifier rubyid_connect'>connect</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_not_stopped'>not_stopped</span>
  <span class='id identifier rubyid_url'>url</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Qpid.html" title="Qpid (module)">Qpid</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Proton.html" title="Qpid::Proton (module)">Proton</a></span></span><span class='op'>::</span><span class='id identifier rubyid_uri'><span class='object_link'><a href="../Proton.html#uri-class_method" title="Qpid::Proton.uri (method)">uri</a></span></span> <span class='id identifier rubyid_url'>url</span>
  <span class='id identifier rubyid_opts'>opts</span> <span class='op'>||=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
  <span class='kw'>if</span> <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_user'>user</span> <span class='op'>||</span>  <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_password'>password</span>
    <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:user</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_user'>user</span>
    <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:password</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_password'>password</span>
  <span class='kw'>end</span>
  <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:ssl_domain</span><span class='rbracket'>]</span> <span class='op'>||=</span> <span class='const'><span class='object_link'><a href="SSLDomain.html" title="Qpid::Proton::SSLDomain (class)">SSLDomain</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'><span class='object_link'><a href="SSLDomain.html" title="Qpid::Proton::SSLDomain (class)">SSLDomain</a></span></span><span class='op'>::</span><span class='const'>MODE_CLIENT</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_scheme'>scheme</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>amqps</span><span class='tstring_end'>&quot;</span></span>
  <span class='id identifier rubyid_connect_io'>connect_io</span><span class='lparen'>(</span><span class='const'>TCPSocket</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_host'>host</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_port'>port</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="connect_io-instance_method">
  
    #<strong>connect_io</strong>(io, opts = nil)  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Open an AMQP protocol connection on an existing IO object</p>


  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>io</span>
      
      
        <span class='type'>(<tt>IO</tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>An existing IO object, e.g. a TCPSocket</p>
</div>
      
    </li>
  
</ul>

  
    
    
    
    
    <p class="tag_title">Options Hash (<tt>opts</tt>):</p>
    <ul class="option">
      
        <li>
          <span class="name">:handler</span>
          <span class="type">(<tt><span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span></tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>handler for events related to this connection.</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:user</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>User name for authentication</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:password</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Authentication secret</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:virtual_host</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Virtual host name</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:container_id</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
              &mdash; default:
              <tt>provided by {Container}</tt>
            
          </span>
          
            &mdash; <div class='inline'>
<p>override advertised container-id</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:properties</span>
          <span class="type">(<tt><span class='object_link'>Hash</span>&lt;Symbol=&gt;Object&gt;</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Application-defined properties</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:offered_capabilities</span>
          <span class="type">(<tt><span class='object_link'>Array</span>&lt;Symbol&gt;</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Extensions the endpoint supports</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:desired_capabilities</span>
          <span class="type">(<tt><span class='object_link'>Array</span>&lt;Symbol&gt;</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Extensions the endpoint can use</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:idle_timeout</span>
          <span class="type">(<tt>Numeric</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Seconds before closing an idle connection</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:max_sessions</span>
          <span class="type">(<tt>Integer</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Limit the number of active sessions</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:max_frame_size</span>
          <span class="type">(<tt>Integer</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Limit the size of AMQP frames</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:sasl_enabled</span>
          <span class="type">(<tt>Boolean</tt>)</span>
          <span class="default">
            
              &mdash; default:
              <tt>false</tt>
            
          </span>
          
            &mdash; <div class='inline'>
<p>Enable or disable SASL.</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:sasl_allow_insecure_mechs</span>
          <span class="type">(<tt>Boolean</tt>)</span>
          <span class="default">
            
              &mdash; default:
              <tt>false</tt>
            
          </span>
          
            &mdash; <div class='inline'>
<p>Allow mechanisms that send secrets in cleartext</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:sasl_allowed_mechs</span>
          <span class="type">(<tt>String</tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>Specify the SASL mechanisms allowed for this connection.  The value is a space-separated list of mechanism names. The mechanisms allowed by default are determined by your SASL library and system configuration, with two exceptions: GSSAPI and GSS-SPNEGO are disabled by default.  To enable them, you must explicitly add them using this option. Clients must set the allowed mechanisms before the the outgoing connection is attempted.  Servers must set them before the listening connection is setup.</p>
</div>
          
        </li>
      
        <li>
          <span class="name">:ssl_domain</span>
          <span class="type">(<tt><span class='object_link'><a href="SSLDomain.html" title="Qpid::Proton::SSLDomain (class)">SSLDomain</a></span></tt>)</span>
          <span class="default">
            
          </span>
          
            &mdash; <div class='inline'>
<p>SSL configuration domain.</p>
</div>
          
        </li>
      
    </ul>
  


</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


136
137
138
139
140
141
142</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 136</span>

<span class='kw'>def</span> <span class='id identifier rubyid_connect_io'>connect_io</span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_not_stopped'>not_stopped</span>
  <span class='id identifier rubyid_cd'>cd</span> <span class='op'>=</span> <span class='id identifier rubyid_connection_driver'>connection_driver</span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_opts'>opts</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_cd'>cd</span><span class='period'>.</span><span class='id identifier rubyid_connection'>connection</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='id identifier rubyid_cd'>cd</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_cd'>cd</span><span class='period'>.</span><span class='id identifier rubyid_connection'>connection</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="inspect-instance_method">
  
    #<strong>inspect</strong>  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    

  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


94</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 94</span>

<span class='kw'>def</span> <span class='id identifier rubyid_inspect'>inspect</span><span class='lparen'>(</span><span class='rparen'>)</span> <span class='id identifier rubyid_to_s'>to_s</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="listen-instance_method">
  
    #<strong>listen</strong>(url, handler = Listener::Handler.new)  &#x21d2; <tt><span class='object_link'><a href="Listener.html" title="Qpid::Proton::Listener (class)">Listener</a></span></tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Listen for incoming AMQP connections</p>

<p>with events for this listener and can generate a new set of options for each one.</p>


  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>url</span>
      
      
        <span class='type'>(<tt>String</tt>, <tt><span class='object_link'>URI</span></tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>Listen on host:port of the AMQP URL</p>
</div>
      
    </li>
  
    <li>
      
        <span class='name'>handler</span>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="Listener/Handler.html" title="Qpid::Proton::Listener::Handler (class)">Listener::Handler</a></span></tt>)</span>
      
      
        <em class="default">(defaults to: <tt>Listener::Handler.new</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>A <span class='object_link'><a href="Listener/Handler.html" title="Qpid::Proton::Listener::Handler (class)">Listener::Handler</a></span> object that will be called</p>
</div>
      
    </li>
  
</ul>

<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="Listener.html" title="Qpid::Proton::Listener (class)">Listener</a></span></tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>The AMQP listener.</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


151
152
153
154
155
156</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 151</span>

<span class='kw'>def</span> <span class='id identifier rubyid_listen'>listen</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='comma'>,</span> <span class='id identifier rubyid_handler'>handler</span><span class='op'>=</span><span class='const'>Listener</span><span class='op'>::</span><span class='const'>Handler</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_not_stopped'>not_stopped</span>
  <span class='id identifier rubyid_url'>url</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="../../Qpid.html" title="Qpid (module)">Qpid</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="../Proton.html" title="Qpid::Proton (module)">Proton</a></span></span><span class='op'>::</span><span class='id identifier rubyid_uri'><span class='object_link'><a href="../Proton.html#uri-class_method" title="Qpid::Proton.uri (method)">uri</a></span></span> <span class='id identifier rubyid_url'>url</span>  <span class='comment'># TODO aconway 2017-11-01: amqps, SSL
</span>
  <span class='id identifier rubyid_listen_io'>listen_io</span><span class='lparen'>(</span><span class='const'>TCPServer</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_host'>host</span><span class='comma'>,</span> <span class='id identifier rubyid_url'>url</span><span class='period'>.</span><span class='id identifier rubyid_port'>port</span><span class='rparen'>)</span><span class='comma'>,</span> <span class='id identifier rubyid_handler'>handler</span><span class='rparen'>)</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="listen_io-instance_method">
  
    #<strong>listen_io</strong>(io, handler = Listener::Handler.new)  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Listen for incoming AMQP connections on an existing server socket.</p>


  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>io</span>
      
      
        <span class='type'></span>
      
      
      
        &mdash;
        <div class='inline'>
<p>A server socket, for example a TCPServer</p>
</div>
      
    </li>
  
    <li>
      
        <span class='name'>handler</span>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="Listener/Handler.html" title="Qpid::Proton::Listener::Handler (class)">Listener::Handler</a></span></tt>)</span>
      
      
        <em class="default">(defaults to: <tt>Listener::Handler.new</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>Handler for events from this listener</p>
</div>
      
    </li>
  
</ul>


</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


162
163
164
165
166
167</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 162</span>

<span class='kw'>def</span> <span class='id identifier rubyid_listen_io'>listen_io</span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_handler'>handler</span><span class='op'>=</span><span class='const'>Listener</span><span class='op'>::</span><span class='const'>Handler</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_not_stopped'>not_stopped</span>
  <span class='id identifier rubyid_l'>l</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Container/ListenTask.html" title="Qpid::Proton::Container::ListenTask (class)">ListenTask</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'><span class='object_link'><a href="Container/ListenTask.html#initialize-instance_method" title="Qpid::Proton::Container::ListenTask#initialize (method)">new</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_io'>io</span><span class='comma'>,</span> <span class='id identifier rubyid_handler'>handler</span><span class='comma'>,</span> <span class='kw'>self</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_add'>add</span><span class='lparen'>(</span><span class='id identifier rubyid_l'>l</span><span class='rparen'>)</span>
  <span class='id identifier rubyid_l'>l</span><span class='period'>.</span><span class='id identifier rubyid_listener'>listener</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="run-instance_method">
  
    #<strong>run</strong>  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    <p class="note returns_void">This method returns an undefined value.</p>
<p>Run the container: wait for IO activity, dispatch events to handlers.</p>

<p><strong>Multi-threaading</strong> : More than one thread can call <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> concurrently, the container will use all <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> threads as a thread pool. Calls to <span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span> or <span class='object_link'><a href="Listener/Handler.html" title="Qpid::Proton::Listener::Handler (class)">Listener::Handler</a></span> methods are serialized for each connection or listener. See <span class='object_link'><a href="WorkQueue.html" title="Qpid::Proton::WorkQueue (class)">WorkQueue</a></span> for coordinating with other threads.</p>

<p><strong>Exceptions</strong>: If any handler method raises an exception it will stop the container, and the exception will be raised by all calls to <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span>. For single threaded code this is often desirable. Multi-threaded server applications should normally rescue exceptions in the handler and deal with them in another way: logging, closing the connection with an error condition, signalling another thread etc.</p>


  </div>
</div>
<div class="tags">
  
<p class="tag_title">Raises:</p>
<ul class="raise">
  
    <li>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="Container/StoppedError.html" title="Qpid::Proton::Container::StoppedError (class)">StoppedError</a></span></tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>If the container has already been stopped when <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> was called.</p>
</div>
      
    </li>
  
    <li>
      
      
        <span class='type'>(<tt>Exception</tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p>If any <span class='object_link'><a href="MessagingHandler.html" title="Qpid::Proton::MessagingHandler (class)">MessagingHandler</a></span> or <span class='object_link'><a href="Listener/Handler.html" title="Qpid::Proton::Listener::Handler (class)">Listener::Handler</a></span> managed by the container raises an exception, that exception will be raised by <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span></p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 191</span>

<span class='kw'>def</span> <span class='id identifier rubyid_run'>run</span>
  <span class='ivar'>@lock</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
    <span class='ivar'>@running</span> <span class='op'>+=</span> <span class='int'>1</span>        <span class='comment'># Note: ensure clause below will decrement @running
</span>    <span class='id identifier rubyid_raise'>raise</span> <span class='const'><span class='object_link'><a href="Container/StoppedError.html" title="Qpid::Proton::Container::StoppedError (class)">StoppedError</a></span></span> <span class='kw'>if</span> <span class='ivar'>@stopped</span>
  <span class='kw'>end</span>
  <span class='kw'>while</span> <span class='id identifier rubyid_task'>task</span> <span class='op'>=</span> <span class='ivar'>@work</span><span class='period'>.</span><span class='id identifier rubyid_pop'>pop</span>
    <span class='id identifier rubyid_run_one'>run_one</span><span class='lparen'>(</span><span class='id identifier rubyid_task'>task</span><span class='comma'>,</span> <span class='const'>Time</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='rparen'>)</span>
  <span class='kw'>end</span>
  <span class='ivar'>@lock</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='lbrace'>{</span> <span class='id identifier rubyid_raise'>raise</span> <span class='ivar'>@panic</span> <span class='kw'>if</span> <span class='ivar'>@panic</span> <span class='rbrace'>}</span>
<span class='kw'>ensure</span>
  <span class='ivar'>@lock</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
    <span class='kw'>if</span> <span class='lparen'>(</span><span class='ivar'>@running</span> <span class='op'>-=</span> <span class='int'>1</span><span class='rparen'>)</span> <span class='op'>&gt;</span> <span class='int'>0</span>
      <span class='id identifier rubyid_work_wake'>work_wake</span> <span class='kw'>nil</span>         <span class='comment'># Signal the next thread
</span>    <span class='kw'>else</span>
      <span class='comment'># This is the last thread, no need to do maybe_panic around this final handler call.
</span>      <span class='ivar'>@adapter</span><span class='period'>.</span><span class='id identifier rubyid_on_container_stop'>on_container_stop</span><span class='lparen'>(</span><span class='kw'>self</span><span class='rparen'>)</span> <span class='kw'>if</span> <span class='ivar'>@adapter</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span> <span class='symbol'>:on_container_stop</span>
    <span class='kw'>end</span>
  <span class='kw'>end</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="running-instance_method">
  
    #<strong>running</strong>  &#x21d2; <tt>Bool</tt> 
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Number of threads in <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span></p>


  </div>
</div>
<div class="tags">
  
<p class="tag_title">Returns:</p>
<ul class="return">
  
    <li>
      
      
        <span class='type'>(<tt>Bool</tt>)</span>
      
      
      
        &mdash;
        <div class='inline'>
<p><span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> thread count</p>
</div>
      
    </li>
  
</ul>

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


112</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 112</span>

<span class='kw'>def</span> <span class='id identifier rubyid_running'>running</span><span class='lparen'>(</span><span class='rparen'>)</span> <span class='ivar'>@lock</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='lbrace'>{</span> <span class='ivar'>@running</span> <span class='rbrace'>}</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="stop-instance_method">
  
    #<strong>stop</strong>(error = nil, panic = nil)  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Stop the container.</p>

<p>Close all listeners and abort all connections without doing AMQP protocol close.</p>

<p><span class='object_link'><a href="#stop-instance_method" title="Qpid::Proton::Container#stop (method)">#stop</a></span> returns immediately, calls to <span class='object_link'><a href="#run-instance_method" title="Qpid::Proton::Container#run (method)">#run</a></span> will return when all activity is finished.</p>

<p>The container can no longer be used, using a stopped container raises <span class='object_link'><a href="Container/StoppedError.html" title="Qpid::Proton::Container::StoppedError (class)">StoppedError</a></span>.  Create a new container if you want to resume activity.</p>


  </div>
</div>
<div class="tags">
  <p class="tag_title">Parameters:</p>
<ul class="param">
  
    <li>
      
        <span class='name'>error</span>
      
      
        <span class='type'>(<tt><span class='object_link'><a href="Condition.html" title="Qpid::Proton::Condition (class)">Condition</a></span></tt>)</span>
      
      
        <em class="default">(defaults to: <tt>nil</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>Optional error condition passed to <span class='object_link'>MessagingHandler#on_transport_error</span> for each connection and Listener::Handler::on_error for each listener.</p>
</div>
      
    </li>
  
    <li>
      
        <span class='name'>panic</span>
      
      
        <span class='type'>(<tt>Exception</tt>)</span>
      
      
        <em class="default">(defaults to: <tt>nil</tt>)</em>
      
      
        &mdash;
        <div class='inline'>
<p>Optional exception to raise from all calls to run()</p>
</div>
      
    </li>
  
</ul>


</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


227
228
229
230
231
232
233
234
235
236
237
238
239
240</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 227</span>

<span class='kw'>def</span> <span class='id identifier rubyid_stop'>stop</span><span class='lparen'>(</span><span class='id identifier rubyid_error'>error</span><span class='op'>=</span><span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_panic'>panic</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
  <span class='ivar'>@lock</span><span class='period'>.</span><span class='id identifier rubyid_synchronize'>synchronize</span> <span class='kw'>do</span>
    <span class='kw'>return</span> <span class='kw'>if</span> <span class='ivar'>@stopped</span>
    <span class='ivar'>@stop_err</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Condition.html" title="Qpid::Proton::Condition (class)">Condition</a></span></span><span class='period'>.</span><span class='id identifier rubyid_convert'><span class='object_link'><a href="Condition.html#convert-class_method" title="Qpid::Proton::Condition.convert (method)">convert</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_error'>error</span><span class='rparen'>)</span>
    <span class='ivar'>@panic</span> <span class='op'>=</span> <span class='id identifier rubyid_panic'>panic</span>
    <span class='ivar'>@stopped</span> <span class='op'>=</span> <span class='kw'>true</span>
    <span class='id identifier rubyid_check_stop_lh'>check_stop_lh</span>    <span class='comment'># NOTE: @stopped =&gt;
</span>    <span class='comment'># - no new run threads can join
</span>    <span class='comment'># - no more select calls after next wakeup
</span>    <span class='comment'># - once @active == 0, all threads will be stopped with nil
</span>
  <span class='kw'>end</span>
  <span class='id identifier rubyid_wake'>wake</span>
<span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="to_s-instance_method">
  
    #<strong>to_s</strong>  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    

  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


93</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 93</span>

<span class='kw'>def</span> <span class='id identifier rubyid_to_s'>to_s</span><span class='lparen'>(</span><span class='rparen'>)</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>#&lt;</span><span class='embexpr_beg'>#{</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='embexpr_end'>}</span><span class='tstring_content'> id=</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_id'>id</span><span class='period'>.</span><span class='id identifier rubyid_inspect'>inspect</span><span class='embexpr_end'>}</span><span class='tstring_content'>&gt;</span><span class='tstring_end'>&quot;</span></span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
      <div class="method_details ">
  <h3 class="signature " id="work_queue-instance_method">
  
    #<strong>work_queue</strong>  
  

  

  
</h3><div class="docstring">
  <div class="discussion">
    
<p>Get the <span class='object_link'><a href="WorkQueue.html" title="Qpid::Proton::WorkQueue (class)">WorkQueue</a></span> that can be used to schedule code to be run by the container.</p>

<p>Note: to run code that affects a <span class='object_link'><a href="Connection.html" title="Qpid::Proton::Connection (class)">Qpid::Proton::Connection</a></span> or it&#39;s associated objects, use <span class='object_link'><a href="Connection.html#work_queue-instance_method" title="Qpid::Proton::Connection#work_queue (method)">Qpid::Proton::Connection#work_queue</a></span></p>


  </div>
</div>
<div class="tags">
  

</div><table class="source_code">
  <tr>
    <td>
      <pre class="lines">


246</pre>
    </td>
    <td>
      <pre class="code"><span class="info file"># File 'lib/core/container.rb', line 246</span>

<span class='kw'>def</span> <span class='id identifier rubyid_work_queue'>work_queue</span><span class='lparen'>(</span><span class='rparen'>)</span> <span class='ivar'>@work_queue</span><span class='semicolon'>;</span> <span class='kw'>end</span></pre>
    </td>
  </tr>
</table>
</div>
    
  </div>

</div>

      <div id="footer">
  Generated on Tue Apr 13 13:43:58 2021 by
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
  0.9.24 (ruby-2.7.2).
</div>

    </div>
  </body>
</html>