14 #ifndef JINGLESESSION_H__
15 #define JINGLESESSION_H__
17 #include "stanzaextension.h"
19 #include "iqhandler.h"
20 #include "jingleplugin.h"
163 const std::string&
sid()
const {
return m_sid; }
170 const std::string&
text()
const {
return m_text; }
173 virtual const std::string& filterString()
const;
176 virtual Tag* tag()
const;
182 virtual Plugin* clone()
const;
219 const std::string&
sid()
const {
return m_sid; }
243 void addPlugin(
const Plugin* plugin ) {
if( plugin ) m_plugins.push_back( plugin ); }
258 virtual const std::string& filterString()
const;
267 virtual Tag* tag()
const;
288 const PluginList& plugins,
const std::string& sid );
302 const Plugin* plugin,
const std::string& sid );
366 bool contentAccept(
const Content* content );
374 bool contentAdd(
const Content* content );
382 bool contentAdd(
const PluginList& contents );
390 bool contentModify(
const Content* content );
398 bool contentReject(
const Content* content );
406 bool contentRemove(
const Content* content );
414 bool descriptionInfo(
const Plugin* info );
422 bool securityInfo(
const Plugin* info );
431 bool sessionAccept(
const Content* content );
439 bool sessionAccept(
const PluginList& plugins );
447 bool sessionInfo(
const Plugin* info );
455 bool sessionInitiate(
const Content* content );
465 bool sessionInitiate(
const PluginList& plugins );
482 bool transportAccept(
const Content* content );
490 bool transportInfo(
const Plugin* info );
498 bool transportReject(
const Content* content );
506 bool transportReplace(
const Content* content );
519 void setSID(
const std::string& sid ) { m_sid = sid; }
525 const std::string&
sid()
const {
return m_sid; }
528 virtual bool handleIq(
const IQ& iq );
531 virtual void handleIqID(
const IQ& iq,
int context );
This is the common base class for a Jabber/XMPP Client and a Jabber Component.
An abstraction of an IQ stanza.
A virtual interface which can be reimplemented to receive IQ stanzas.
An abstraction of a Jingle Content Type. This is part of Jingle (XEP-0166).
An abstraction of a Jingle plugin. This is part of Jingle (XEP-0166 et al.)
A Jingle session handler.
The SessionManager is responsible for creating and destroying Jingle sessions, as well as for delegat...
This is an abstraction of Jingle's (XEP-0166) <jingle> element as a StanzaExtension.
const std::string & sid() const
virtual StanzaExtension * newInstance(const Tag *tag) const
void addPlugin(const Plugin *plugin)
const JID & responder() const
Tag * embeddedTag() const
const PluginList & plugins() const
const JID & initiator() const
An abstraction of a Jingle (XEP-0166) session terminate reason.
@ UnsupportedApplications
const std::string & text() const
const std::string & sid() const
virtual Plugin * newInstance(const Tag *tag) const
This is an implementation of a Jingle Session (XEP-0166).
void setInitiator(const JID &initiator)
void setResponder(const JID &jid)
const std::string & sid() const
const JID & responder() const
void setHandler(SessionHandler *handler)
const JID & initiator() const
void setSID(const std::string &sid)
This class abstracts a stanza extension, which is usually an XML child element in a specific namespac...
This is an abstraction of an XML element.
std::list< const Plugin * > PluginList
The namespace for the gloox library.
const std::string EmptyString