<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "DTD/xhtml1-strict.dtd">
<html>
  

  <head>
    
    <title>pulsar.asyncio.Client</title>
    <meta name="generator" content="pydoctor 23.9.1"> 
        
    </meta>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1" />
    <link rel="stylesheet" type="text/css" href="apidocs.css" />
    <link rel="stylesheet" type="text/css" href="readthedocstheme.css" />
    <link rel="stylesheet" type="text/css" href="extra.css" />
</head>

  <body>

    

    <nav class="navbar navbar-default mainnavbar">
      
  
  <div class="container-fluid">


    <div class="navbar-header">
      
      <div class="navlinks">
        <span class="navbar-brand">
          pulsar/_pulsar <a href="index.html">API Documentation</a>
        </span>

        <a href="moduleIndex.html">
          Modules
        </a>

        <a href="classIndex.html">
          Classes
        </a>

        <a href="nameIndex.html">
          Names
        </a>

        <div id="search-box-container">
          <div class="input-group">
            <input id="search-box" type="search" name="search-query" placeholder="Search..." aria-label="Search" minlength="2" class="form-control" autocomplete="off" />
            
            <span class="input-group-btn">
              <a style="display: none;" class="btn btn-default" id="search-clear-button" title="Clear" onclick="clearSearch()"><img src="fonts/x-circle.svg" alt="Clear" /></a>
              <a class="btn btn-default" id="search-help-button" title="Help" onclick="toggleSearchHelpText()"><img src="fonts/info.svg" alt="Help" /></a>
            </span>
          </div>
        </div>

      </div>

    </div>

  </div>

    
        <!-- Side navigation -->
      <div class="sidebarcontainer">
        <nav class="sidebar">
  

  <div>

      <div class="thingTitle">
        <span>Class</span>
        <code class="thisobject"><a href="pulsar.asyncio.Client.html" class="internal-link" title="This class"><wbr></wbr>Client</a></code> 
      </div>
      
      <div>
        

        
         

        
        

        <div class="childrenKindTitle">Methods</div>
        <ul>
    
    <li class="">
        
        
        

        
            <div class="itemName"><code><a href="#__init__" class="internal-link" title="pulsar.asyncio.Client.__init__">__init__</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#close" class="internal-link" title="pulsar.asyncio.Client.close">close</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="#create_producer" class="internal-link" title="pulsar.asyncio.Client.create_producer">create<wbr></wbr>_producer</a></code>
            </div>
        

    </li>
</ul> 

        
         

        <div class="childrenKindTitle">Attributes</div>
        <ul>
    
    <li class="private">
        
        
        

        
            <div class="itemName"><code><a href="#_client" class="internal-link" title="pulsar.asyncio.Client._client">_client</a></code>
            </div>
        

    </li>
</ul> 

        
         
        
      </div>
  </div><div>

      <div class="thingTitle">
        <span>Module</span>
        <code><a href="pulsar.asyncio.html" class="internal-link" title="The parent of this class">asyncio</a></code> 
      </div>
      
      <div>
        

        
         

        <div class="childrenKindTitle">Classes</div>
        <ul>
    
    <li class=" thisobject">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.asyncio.Client.html" class="internal-link" title="pulsar.asyncio.Client"><wbr></wbr>Client</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.asyncio.Producer.html" class="internal-link" title="pulsar.asyncio.Producer"><wbr></wbr>Producer</a></code>
            </div>
        

    </li><li class="">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.asyncio.PulsarException.html" class="internal-link" title="pulsar.asyncio.PulsarException"><wbr></wbr>Pulsar<wbr></wbr>Exception</a></code>
            </div>
        

    </li>
</ul>

        <div class="childrenKindTitle">Functions</div>
        <ul>
    
    <li class="private">
        
        
        

        
            <div class="itemName"><code><a href="pulsar.asyncio.html#_set_future" class="internal-link" title="pulsar.asyncio._set_future">_set<wbr></wbr>_future</a></code>
            </div>
        

    </li>
</ul> 

        
         

        
         

        
         
        
      </div>
  </div>

</nav>
        <!-- No sidebar toggle for read the docs theme, the sidebar is always
          visible when the screen is width enough.
        -->
      </div>

    </nav>
    
    <div class="container-fluid">

      <div id="main" class="">
        

        

        <div id="search-results-container" style="display: none;">
        
          <div id="search-buttons">
            <span class="label label-default" id="search-docstrings-button">
            <label class="checkbox-inline">
              <input type="checkbox" id="toggle-search-in-docstrings-checkbox" value="false" onclick="toggleSearchInDocstrings()">
                search in docstrings
              </input>
            </label>
            </span>
            
          </div>
          
          <noscript>
              <h1>Cannot search: JavaScript is not supported/enabled in your browser.</h1>
          </noscript>
  
          <div class="hint" id="search-help-box">
            <p class="rst-last">
        
              Search bar offers the following options:
              <ul>   
                  <li>
                    <strong>Term presence.</strong> The below example searches for documents that 
                      must contain “foo”, might contain “bar” and must not contain “baz”: <code>+foo bar -baz</code>
                  </li> 
  
                  <li>
                    <strong>Wildcards.</strong> The below example searches for documents with words beginning with “foo”: <code>foo*</code>
                  </li> 
  
                  <li>
                    <strong>Search in specific fields.</strong> The following search matches all objects 
                    in "twisted.mail" that matches “search”: <code>+qname:twisted.mail.* +search</code>
  
                    <p>
                      Possible fields: 'name', 'qname' (fully qualified name), 'docstring', and 'kind'.
                      Last two fields are only applicable if "search in docstrings" is enabled.
                    </p>
                  </li>
  
                  <li>
                    <strong>Fuzzy matches.</strong> The following search matches all documents 
                    that have a word within 1 edit distance of “foo”: <code>foo~1</code>
                  </li>
              </ul>
  
            </p>
          </div>
  
          <div id="search-status"> </div>
  
          <div class="warning" id="search-warn-box" style="display: none;">
            <p class="rst-last"><span id="search-warn"></span></p>
          </div>
  
          <table id="search-results">
            <!-- Filled dynamically by JS -->
          </table>
          
          <div style="margin-top: 8px;">
            <p>Results provided by <a href="https://lunrjs.com">Lunr.js</a></p>
          </div>
        </div>

        <div class="page-header">
          <h1 class="class"><code><code><a href="pulsar.html" class="internal-link">pulsar</a></code><wbr></wbr>.<code><a href="pulsar.asyncio.html" class="internal-link" title="pulsar.asyncio">asyncio</a></code><wbr></wbr>.<code><a href="pulsar.asyncio.Client.html" class="internal-link" title="pulsar.asyncio.Client">Client</a></code></code></h1>
          <div id="showPrivate">
            <button class="btn btn-link" onclick="togglePrivate()">Toggle Private API</button>
          </div>
        </div>

        <div class="categoryHeader">
          class documentation
        </div>

        <div class="extrasDocstring">
          <p class="class-signature"><code><span class="py-keyword">class</span> <span class="py-defname">Client</span>: <a href="https://github.com/apache/pulsar-client-python/tree/v3.5.0/pulsar/asyncio.py#L119" class="sourceLink">(source)</a></code></p><p>Constructor: <code><a href="#__init__" class="internal-link" title="pulsar.asyncio.Client.__init__">Client(service_url, **kwargs)</a></code></p>
          <p><a href="classIndex.html#pulsar.asyncio.Client">View In Hierarchy</a></p>
        </div>

        <div class="moduleDocstring">
          <div><p>The asynchronous version of <code><a href="pulsar.Client.html" class="internal-link">pulsar.Client</a></code>.</p></div>
        </div>

        <div id="splitTables">
          <table class="children sortable" id="id8">
  
  
  <tr class="method">
    
    <td>Method</td>
    <td><code><a href="#__init__" class="internal-link" title="pulsar.asyncio.Client.__init__">__init__</a></code></td>
    <td>See <code><a href="pulsar.Client.html#__init__" class="internal-link">pulsar.Client.__init__</a></code></td>
  </tr><tr class="method">
    
    <td>Async Method</td>
    <td><code><a href="#close" class="internal-link" title="pulsar.asyncio.Client.close">close</a></code></td>
    <td>Close the client and all the associated producers and consumers</td>
  </tr><tr class="method">
    
    <td>Async Method</td>
    <td><code><a href="#create_producer" class="internal-link" title="pulsar.asyncio.Client.create_producer">create<wbr></wbr>_producer</a></code></td>
    <td>Create a new producer on a given topic</td>
  </tr><tr class="instancevariable private">
    
    <td>Instance Variable</td>
    <td><code><a href="#_client" class="internal-link" title="pulsar.asyncio.Client._client">_client</a></code></td>
    <td><span class="undocumented">Undocumented</span></td>
  </tr>
</table>
          

            
        </div>

        <div id="childList">
          <div class="basemethod">
  
  
  <a name="pulsar.asyncio.Client.__init__">
    
  </a>
  <a name="__init__">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">def</span> <span class="py-defname">__init__</span><span class="function-signature">(self, service_url, **kwargs)</span>:
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.5.0/pulsar/asyncio.py#L124">
      
      (source)
    </a>
    <a class="headerLink" href="#__init__" title="pulsar.asyncio.Client.__init__">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>See <code><a href="pulsar.Client.html#__init__" class="internal-link">pulsar.Client.__init__</a></code></p></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.asyncio.Client.close">
    
  </a>
  <a name="close">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">async def</span> <span class="py-defname">close</span><span class="function-signature">(self)</span>:
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.5.0/pulsar/asyncio.py#L154">
      
      (source)
    </a>
    <a class="headerLink" href="#close" title="pulsar.asyncio.Client.close">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Close the client and all the associated producers and consumers</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Raises</td></tr><tr><td class="fieldArgContainer"><code><a href="pulsar.asyncio.PulsarException.html" class="internal-link" title="pulsar.asyncio.PulsarException">PulsarException</a></code></td><td></td></tr></table></div>
  </div>
</div><div class="basemethod">
  
  
  <a name="pulsar.asyncio.Client.create_producer">
    
  </a>
  <a name="create_producer">
    
  </a>
  <div class="functionHeader">
    
    
    <span class="py-keyword">async def</span> <span class="py-defname">create_producer</span><span class="function-signature">(self, topic: <code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code>) -&gt; <code><a href="pulsar.asyncio.Producer.html" class="internal-link" title="pulsar.asyncio.Producer">Producer</a></code></span>:
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.5.0/pulsar/asyncio.py#L130">
      
      (source)
    </a>
    <a class="headerLink" href="#create_producer" title="pulsar.asyncio.Client.create_producer">
      
      
      ¶
    </a>
  </div>
  <div class="docstring functionBody">
    
    <div><p>Create a new producer on a given topic</p><table class="fieldTable"><tr class="fieldStart"><td class="fieldName" colspan="2">Parameters</td></tr><tr><td class="fieldArgContainer"><span class="fieldArg">topic:</span><code><a href="https://docs.python.org/3/library/stdtypes.html#str" class="intersphinx-link">str</a></code></td><td class="fieldArgDesc">The topic name</td></tr><tr class="fieldStart"><td class="fieldName" colspan="2">Returns</td></tr><tr><td class="fieldArgContainer"><code><a href="pulsar.asyncio.Producer.html" class="internal-link" title="pulsar.asyncio.Producer">Producer</a></code></td><td class="fieldArgDesc">The producer created</td></tr><tr class="fieldStart"><td class="fieldName" colspan="2">Raises</td></tr><tr><td class="fieldArgContainer"><code><a href="pulsar.asyncio.PulsarException.html" class="internal-link" title="pulsar.asyncio.PulsarException">PulsarException</a></code></td><td></td></tr></table></div>
  </div>
</div><div class="baseinstancevariable private">
  
  
  <a name="pulsar.asyncio.Client._client">
    
  </a>
  <a name="_client">
    
  </a>
  <div class="functionHeader">
    
    <span class="py-defname">_client</span>: <code><a href="_pulsar.Client.html" class="internal-link" title="_pulsar.Client">_pulsar.Client</a></code> =
    <a class="sourceLink" href="https://github.com/apache/pulsar-client-python/tree/v3.5.0/pulsar/asyncio.py#L128">
      
      (source)
    </a>
    <a class="headerLink" href="#_client" title="pulsar.asyncio.Client._client">
      
      
      ¶
    </a>
  </div>
  <div class="functionBody">
    
    <div><p class="undocumented">Undocumented</p></div>
    
  </div>
</div>
        </div>
      
      </div>
    </div>

    <footer class="navbar navbar-default">
    <hr />
    
    
    <div class="container">
      <a href="index.html">API Documentation</a> for pulsar/_pulsar,
    generated by <a href="https://github.com/twisted/pydoctor/">pydoctor</a>
      23.9.1 at 2024-04-18 11:08:03.
    </div>
    
    <script src="ajax.js" type="text/javascript"></script>
    <script src="searchlib.js" type="text/javascript"></script>
    <script src="search.js" type="text/javascript"></script>
  
  </footer>
  
    <script src="pydoctor.js" type="text/javascript"></script>

  </body>
</html>