twisted.protocols.xmlstream.Authenticator.html   [plain text]


<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>twisted.protocols.xmlstream.Authenticator</title>
  <link rel="stylesheet" href="epydoc.css" type="text/css"></link>
</head>
<body bgcolor="white" text="black" link="blue" vlink="#204080"
      alink="#204080">

<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="twisted.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          <a class="navbar" target="_top" href="http://twistedmatrix.com/">Twisted&nbsp;1.3.0rc1</a>
      </p></th></tr></table>
    </th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <font size="-1"><b class="breadcrumbs">
        <a href="twisted.html">Package&nbsp;twisted</a> ::
        <a href="twisted.protocols.html">Package&nbsp;protocols</a> ::
        <a href="twisted.protocols.xmlstream.html">Module&nbsp;xmlstream</a> ::
        Class&nbsp;Authenticator
      </b></font></br>
    </td>
    <td><table cellpadding="0" cellspacing="0">
      <tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a>&nbsp;|&nbsp;<a href="twisted.protocols.xmlstream.Authenticator.html" target="_top">no&nbsp;frames</a>]</font></td></tr>
    </table></td>
</tr></table>

<!-- =========== START OF CLASS DESCRIPTION =========== -->
<h2 class="class">Class Authenticator</h2>

<dl><dt><b>Known Subclasses:</b></dt>
<dd>
    <a href="twisted.protocols.xmlstream.ConnectAuthenticator.html"><code>ConnectAuthenticator</code></a>,
    <a href="twisted.protocols.jabber.component.ListenComponentAuthenticator.html"><code>ListenComponentAuthenticator</code></a></dd></dl>

<hr/>

<p>Base class for business logic of authenticating an XmlStream</p>
<p>Subclass this object to enable an XmlStream to authenticate to 
different types of stream hosts (such as clients, components, etc.).</p>
Rules:
<ol start="1">
  <li>
    The Authenticator MUST dispatch a <a 
    href="twisted.protocols.xmlstream.html#STREAM_AUTHD_EVENT" 
    class="link"><code>STREAM_AUTHD_EVENT</code></a> when the stream has 
    been completely authenticated.
  </li>
  <li>
    The Authenticator SHOULD reset all state information when <a 
    href="twisted.protocols.xmlstream.Authenticator.html#associateWithStream" 
    class="link"><code>associateWithStream</code></a> is called.
  </li>
  <li>
    The Authenticator SHOULD override <a 
    href="twisted.protocols.xmlstream.Authenticator.html#streamStarted" 
    class="link"><code>streamStarted</code></a>, and start authentication 
    there.
  </li>
</ol>
<hr/>


<!-- =========== START OF METHOD SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Method Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="__init__"></a><span class="summary-sig"><span class="summary-sig-name">__init__</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>streamHost</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.protocols.xmlstream.Authenticator.html#associateWithStream" class="summary-sig-name"><code>associateWithStream</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>xmlstream</span>)</span></code>
<br />
Called by the XmlStreamFactory when a connection has been made to the 
requested peer, and an XmlStream object has been instantiated.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.protocols.xmlstream.Authenticator.html#connectionMade" class="summary-sig-name"><code>connectionMade</code></a>(<span class=summary-sig-arg>self</span>)</span></code>
<br />
Called by the XmlStream when the underlying socket connection is in 
place.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.protocols.xmlstream.Authenticator.html#streamStarted" class="summary-sig-name"><code>streamStarted</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>rootelem</span>)</span></code>
<br />
Called by the XmlStream when it has received a root element from the 
connected peer.</td></tr>
</table><br />


<!-- =========== START OF INSTANCE VARIABLE SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Instance Variable Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>str</code></font></td>
<td><b><a href="twisted.protocols.xmlstream.Authenticator.html#streamHost"><code>streamHost</code></a></b>: Target host for this stream (used as the 'to' attribute)</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>XmlStream</code></font></td>
<td><b><a href="twisted.protocols.xmlstream.Authenticator.html#xmlstream"><code>xmlstream</code></a></b>: The XmlStream that needs authentication</td></tr>
</table><br />


<!-- =========== START OF CLASS VARIABLE SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Class Variable Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>str</code></font></td>
<td><b><a href="twisted.protocols.xmlstream.Authenticator.html#namespace"><code>namespace</code></a></b>: Default namespace for the XmlStream</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>int</code></font></td>
<td><b><a href="twisted.protocols.xmlstream.Authenticator.html#version"><code>version</code></a></b>: Version attribute for XmlStream.</td></tr>
</table><br />


<!-- =========== START OF METHOD DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Method Details</th></tr>
</table>

<a name="associateWithStream"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">associateWithStream</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>xmlstream</span>)</span>
  </h3>
  <p>Called by the XmlStreamFactory when a connection has been made to 
  the requested peer, and an XmlStream object has been instantiated.</p>
  The default implementation just saves a handle to the new 
  XmlStream.
  <dl><dt></dt><dd>
    <dl><dt><b>Parameters:</b></dt>
      <dd><code><b>xmlstream</b></code> -
         The XmlStream that will be passing events to this 
        Authenticator.
        <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        (type=<code>XmlStream</code>)</i>
      </dd>
    </dl>
  </dd></dl>
</td></tr></table>

<a name="connectionMade"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">connectionMade</span>(<span class=sig-arg>self</span>)</span>
  </h3>
  <p>Called by the XmlStream when the underlying socket connection is in 
  place. This allows the Authenticator to send an initial root element, 
  if it's connecting, or wait for an inbound root from the peer if it's 
  accepting the connection</p>
  Subclasses can use self.xmlstream.send() with the provided xmlstream 
  parameter to send any initial data to the peer
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="streamStarted"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">streamStarted</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>rootelem</span>)</span>
  </h3>
  Called by the XmlStream when it has received a root element from the 
  connected peer.
  <dl><dt></dt><dd>
    <dl><dt><b>Parameters:</b></dt>
      <dd><code><b>rootelem</b></code> -
         The root element of the XmlStream received from the 
        streamHost
        <br /><i>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        (type=<code>Element</code>)</i>
      </dd>
    </dl>
  </dd></dl>
</td></tr></table>
<br />


<!-- =========== START OF INSTANCE VARIABLE DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Instance Variable Details</th></tr>
</table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="streamHost"></a>
<h3>streamHost</h3>
Target host for this stream (used as the 'to' attribute)
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>str</code>

      </dd>
    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="xmlstream"></a>
<h3>xmlstream</h3>
The XmlStream that needs authentication
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>XmlStream</code>

      </dd>
    </dl>
  </dd>
</dl></td></tr></table>
<br />


<!-- =========== START OF CLASS VARIABLE DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Class Variable Details</th></tr>
</table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="namespace"></a>
<h3>namespace</h3>
Default namespace for the XmlStream
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>str</code>

      </dd>
<span title="'invalid'">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
<span class="variable-quote">'</span>invalid<span class="variable-quote">'</span>                                                              </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="version"></a>
<h3>version</h3>
Version attribute for XmlStream. 0.0 will cause the XmlStream to not 
include a <code>version</code> attribute in the header.
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>int</code>

      </dd>
<span title="0.0">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
0.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<br />


<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="twisted.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          <a class="navbar" target="_top" href="http://twistedmatrix.com/">Twisted&nbsp;1.3.0rc1</a>
      </p></th></tr></table>
    </th>
  </tr>
</table>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
    <td align="left"><font size="-2">Generated by Epydoc 2.0 on Sat May 15 20:08:42 2004</font></td>
    <td align="right"><a href="http://epydoc.sourceforge.net"
                      ><font size="-2">http://epydoc.sf.net</font></a></td>
  </tr>
</table>
</body>
</html>