Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > eeacaa4eb55fa544d622989e42fc27b1 > files > 256

libyate-devel-2.0.0-2mdv2009.1.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Yate: JGEngine Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespaceTelEngine.html">TelEngine</a>::<a class="el" href="classTelEngine_1_1JGEngine.html">JGEngine</a>
  </div>
</div>
<div class="contents">
<h1>JGEngine Class Reference</h1><!-- doxytag: class="TelEngine::JGEngine" --><!-- doxytag: inherits="TelEngine::JBService,TelEngine::JBThreadList" -->A Jingle engine.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="yatejingle_8h-source.html">yatejingle.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for JGEngine:</div>
<div class="dynsection">

<p><center><img src="classTelEngine_1_1JGEngine.png" usemap="#JGEngine_map" border="0" alt=""></center>
<map name="JGEngine_map">
<area href="classTelEngine_1_1JBService.html" alt="JBService" shape="rect" coords="103,56,196,80">
<area href="classTelEngine_1_1JBThreadList.html" alt="JBThreadList" shape="rect" coords="206,56,299,80">
<area href="classTelEngine_1_1DebugEnabler.html" alt="DebugEnabler" shape="rect" coords="0,0,93,24">
<area href="classTelEngine_1_1Mutex.html" alt="Mutex" shape="rect" coords="103,0,196,24">
<area href="classTelEngine_1_1GenObject.html" alt="GenObject" shape="rect" coords="206,0,299,24">
</map>
</div>

<p>
<a href="classTelEngine_1_1JGEngine-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#379575ff3cabfc4c436350ddd7bb505d">JGEngine</a> (<a class="el" href="classTelEngine_1_1JBEngine.html">JBEngine</a> *engine, const <a class="el" href="classTelEngine_1_1NamedList.html">NamedList</a> *params, int prio=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#b3df919760eab8edf554414af3894921">~JGEngine</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">u_int64_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#eb263837b83d9b611cc6aea658437802">stanzaTimeout</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#c391e1e7a016b4064486b5994fc1fed7">initialize</a> (const <a class="el" href="classTelEngine_1_1NamedList.html">NamedList</a> &amp;params)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTelEngine_1_1JGEvent.html">JGEvent</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#7583d3fc2c4bbcb67e841df18ed3d7ff">getEvent</a> (u_int64_t time)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classTelEngine_1_1JGSession.html">JGSession</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#2a8c5fd02b5d46af7dc48bc2a4e4beba">call</a> (const <a class="el" href="classTelEngine_1_1String.html">String</a> &amp;callerName, const <a class="el" href="classTelEngine_1_1String.html">String</a> &amp;remoteJID, <a class="el" href="classTelEngine_1_1XMLElement.html">XMLElement</a> *media, <a class="el" href="classTelEngine_1_1XMLElement.html">XMLElement</a> *transport, const char *msg=0)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#f4edda34aa25274494cbed2704741120">defProcessEvent</a> (<a class="el" href="classTelEngine_1_1JGEvent.html">JGEvent</a> *event)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#95532bffd1e8f32aa58725812e73fd35">processEvent</a> (<a class="el" href="classTelEngine_1_1JGEvent.html">JGEvent</a> *event)</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classTelEngine_1_1JGEngine.html#eb76442d8fb651cb95647bf4a0e7fb28">accept</a> (<a class="el" href="classTelEngine_1_1JBEvent.html">JBEvent</a> *event, bool &amp;processed, bool &amp;insert)</td></tr>

<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0b292114c6d25e1e8deda6cc4d9e55a6"></a><!-- doxytag: member="TelEngine::JGEngine::JGSession" ref="0b292114c6d25e1e8deda6cc4d9e55a6" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><b>JGSession</b></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A Jingle engine. 
<p>
This class holds a Jingle service for the Jabber engine. Handle jingle stanzas, stanza write fail events and stream termination events <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="379575ff3cabfc4c436350ddd7bb505d"></a><!-- doxytag: member="TelEngine::JGEngine::JGEngine" ref="379575ff3cabfc4c436350ddd7bb505d" args="(JBEngine *engine, const NamedList *params, int prio=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classTelEngine_1_1JGEngine.html">JGEngine</a>           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classTelEngine_1_1JBEngine.html">JBEngine</a> *&nbsp;</td>
          <td class="paramname"> <em>engine</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classTelEngine_1_1NamedList.html">NamedList</a> *&nbsp;</td>
          <td class="paramname"> <em>params</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>prio</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Constructor. Constructs a Jingle service <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>engine</em>&nbsp;</td><td>The Jabber engine </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>params</em>&nbsp;</td><td>Service's parameters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>prio</em>&nbsp;</td><td>The priority of this service </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="b3df919760eab8edf554414af3894921"></a><!-- doxytag: member="TelEngine::JGEngine::~JGEngine" ref="b3df919760eab8edf554414af3894921" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual ~<a class="el" href="classTelEngine_1_1JGEngine.html">JGEngine</a>           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor. Terminates all active sessions 
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="eb76442d8fb651cb95647bf4a0e7fb28"></a><!-- doxytag: member="TelEngine::JGEngine::accept" ref="eb76442d8fb651cb95647bf4a0e7fb28" args="(JBEvent *event, bool &amp;processed, bool &amp;insert)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool accept           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classTelEngine_1_1JBEvent.html">JBEvent</a> *&nbsp;</td>
          <td class="paramname"> <em>event</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool &amp;&nbsp;</td>
          <td class="paramname"> <em>processed</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool &amp;&nbsp;</td>
          <td class="paramname"> <em>insert</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Accept an event from the Jabber engine <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>event</em>&nbsp;</td><td>The event to accept </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>processed</em>&nbsp;</td><td>Set to true on exit to signal that the event was already processed </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>insert</em>&nbsp;</td><td>Set to true if accepted to insert on top of the event queue </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>False if not accepted, let the engine try another service </dd></dl>

<p>Reimplemented from <a class="el" href="classTelEngine_1_1JBService.html#eb76442d8fb651cb95647bf4a0e7fb28">JBService</a>.</p>

</div>
</div><p>
<a class="anchor" name="2a8c5fd02b5d46af7dc48bc2a4e4beba"></a><!-- doxytag: member="TelEngine::JGEngine::call" ref="2a8c5fd02b5d46af7dc48bc2a4e4beba" args="(const String &amp;callerName, const String &amp;remoteJID, XMLElement *media, XMLElement *transport, const char *msg=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classTelEngine_1_1JGSession.html">JGSession</a>* call           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classTelEngine_1_1String.html">String</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>callerName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classTelEngine_1_1String.html">String</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>remoteJID</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classTelEngine_1_1XMLElement.html">XMLElement</a> *&nbsp;</td>
          <td class="paramname"> <em>media</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classTelEngine_1_1XMLElement.html">XMLElement</a> *&nbsp;</td>
          <td class="paramname"> <em>transport</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>msg</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Make an outgoing call. 'media' and 'transport' will be invalid on exit. Don't delete them <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>callerName</em>&nbsp;</td><td>The local peer's username </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>remoteJID</em>&nbsp;</td><td>The remote peer's JID </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>media</em>&nbsp;</td><td>A valid 'description' XML element </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>transport</em>&nbsp;</td><td>A valid 'transport' XML element </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>msg</em>&nbsp;</td><td>Optional message to send before call </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Valid <a class="el" href="classTelEngine_1_1JGSession.html" title="A Jingle session.">JGSession</a> pointer (referenced) on success </dd></dl>

</div>
</div><p>
<a class="anchor" name="f4edda34aa25274494cbed2704741120"></a><!-- doxytag: member="TelEngine::JGEngine::defProcessEvent" ref="f4edda34aa25274494cbed2704741120" args="(JGEvent *event)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void defProcessEvent           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classTelEngine_1_1JGEvent.html">JGEvent</a> *&nbsp;</td>
          <td class="paramname"> <em>event</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Default event processor. Delete event. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>event</em>&nbsp;</td><td>The event to process </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="7583d3fc2c4bbcb67e841df18ed3d7ff"></a><!-- doxytag: member="TelEngine::JGEngine::getEvent" ref="7583d3fc2c4bbcb67e841df18ed3d7ff" args="(u_int64_t time)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classTelEngine_1_1JGEvent.html">JGEvent</a>* getEvent           </td>
          <td>(</td>
          <td class="paramtype">u_int64_t&nbsp;</td>
          <td class="paramname"> <em>time</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Call <a class="el" href="classTelEngine_1_1JGEngine.html#7583d3fc2c4bbcb67e841df18ed3d7ff">getEvent()</a> for each session list until an event is generated or the end is reached This method is thread safe <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>time</em>&nbsp;</td><td>Current time in miliseconds </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The first generated event </dd></dl>

</div>
</div><p>
<a class="anchor" name="c391e1e7a016b4064486b5994fc1fed7"></a><!-- doxytag: member="TelEngine::JGEngine::initialize" ref="c391e1e7a016b4064486b5994fc1fed7" args="(const NamedList &amp;params)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void initialize           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classTelEngine_1_1NamedList.html">NamedList</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>params</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize this service <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>params</em>&nbsp;</td><td>Service's parameters </td></tr>
  </table>
</dl>

<p>Reimplemented from <a class="el" href="classTelEngine_1_1JBService.html#c391e1e7a016b4064486b5994fc1fed7">JBService</a>.</p>

</div>
</div><p>
<a class="anchor" name="95532bffd1e8f32aa58725812e73fd35"></a><!-- doxytag: member="TelEngine::JGEngine::processEvent" ref="95532bffd1e8f32aa58725812e73fd35" args="(JGEvent *event)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void processEvent           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classTelEngine_1_1JGEvent.html">JGEvent</a> *&nbsp;</td>
          <td class="paramname"> <em>event</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Process events from the sessions. Default action: Delete event. Descendants must override this method to process generated events <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>event</em>&nbsp;</td><td>The event to process </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="eb263837b83d9b611cc6aea658437802"></a><!-- doxytag: member="TelEngine::JGEngine::stanzaTimeout" ref="eb263837b83d9b611cc6aea658437802" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u_int64_t stanzaTimeout           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the timeout interval of a sent stanza <dl class="return" compact><dt><b>Returns:</b></dt><dd>The timeout interval of a sent stanza </dd></dl>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="yatejingle_8h-source.html">yatejingle.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Dec 7 21:36:13 2008 for Yate by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.7.1 </small></address>
</body>
</html>