Capabilities Class Reference

This is an implementation of XEP-0115 (Entity Capabilities). More...

#include <capabilities.h>

Inherits gloox::StanzaExtension, and gloox::DiscoNodeHandler.

List of all members.

Public Member Functions

 Capabilities (Disco *disco)
 Capabilities (const Tag *tag=0)
virtual ~Capabilities ()
const std::string & node () const
void setNode (const std::string &node)
const std::string ver () const
virtual const std::string & filterString () const
virtual StanzaExtensionnewInstance (const Tag *tag) const
virtual Tagtag () const
virtual StanzaExtensionclone () const
virtual StringList handleDiscoNodeFeatures (const JID &from, const std::string &node)
virtual Disco::IdentityList handleDiscoNodeIdentities (const JID &from, const std::string &node)
virtual Disco::ItemList handleDiscoNodeItems (const JID &from, const JID &to, const std::string &node=EmptyString)

Detailed Description

This is an implementation of XEP-0115 (Entity Capabilities).

XEP Version: 1.5-15

Author:
Jakob Schroeter <js@camaya.net>
Since:
1.0

Definition at line 36 of file capabilities.h.


Constructor & Destructor Documentation

Capabilities ( Disco disco  ) 

Constructs a new object and fills it according to the parameters.

Parameters:
disco The current Client's Disco object.

Definition at line 22 of file capabilities.cpp.

Capabilities ( const Tag tag = 0  ) 

Constructs a new object from the given Tag.

Parameters:
tag The Tag to parse.

Definition at line 30 of file capabilities.cpp.

~Capabilities (  )  [virtual]

Virtual Destructor.

Definition at line 43 of file capabilities.cpp.


Member Function Documentation

virtual StanzaExtension* clone (  )  const [inline, virtual]

Returns an identical copy of the current StanzaExtension.

Returns:
An identical copy of the current StanzaExtension.

Implements StanzaExtension.

Definition at line 88 of file capabilities.h.

const std::string & filterString (  )  const [virtual]

Returns an XPath expression that describes a path to child elements of a stanza that an extension handles.

Returns:
The extension's filter string.

Implements StanzaExtension.

Definition at line 139 of file capabilities.cpp.

StringList handleDiscoNodeFeatures ( const JID from,
const std::string &  node 
) [virtual]

In addition to handleDiscoNodeIdentities, this function is used to gather more information on a specific node. It is called when a disco::info query arrives with a node attribute that matches the one registered for this handler.

Parameters:
from The sender of the request.
node The node this handler is supposed to handle.
Returns:
A list of features supported by this node.

Implements DiscoNodeHandler.

Definition at line 158 of file capabilities.cpp.

Disco::IdentityList handleDiscoNodeIdentities ( const JID from,
const std::string &  node 
) [virtual]

In addition to handleDiscoNodeFeatures, this function is used to gather more information on a specific node. It is called when a disco::info query arrives with a node attribute that matches the one registered for this handler.

Parameters:
from The sender of the request.
node The node this handler is supposed to handle.
Returns:
A list of identities for the given node. The caller will own the identities.

Implements DiscoNodeHandler.

Definition at line 163 of file capabilities.cpp.

Disco::ItemList handleDiscoNodeItems ( const JID from,
const JID to,
const std::string &  node = EmptyString 
) [virtual]

This function is used to gather more information on a specific node. It is called when a disco::items query arrives with a node attribute that matches the one registered for this handler. If node is empty, items for the root node (no node) shall be returned.

Parameters:
from The sender of the request.
to The receiving JID (useful for transports).
node The node this handler is supposed to handle.
Returns:
A list of items supported by this node.

Implements DiscoNodeHandler.

Definition at line 175 of file capabilities.cpp.

virtual StanzaExtension* newInstance ( const Tag tag  )  const [inline, virtual]

Returns a new Instance of the derived type. Usually, for a derived class FooExtension, the implementation of this function looks like:

 StanzaExtension* FooExtension::newInstance( const Tag* tag ) const
 {
   return new FooExtension( tag );
 }
Returns:
The derived extension's new instance.

Implements StanzaExtension.

Definition at line 79 of file capabilities.h.

const std::string& node (  )  const [inline]

Returns the client's identifying node.

Returns:
The node.

Definition at line 61 of file capabilities.h.

void setNode ( const std::string &  node  )  [inline]

Sets the client's identifying node.

Parameters:
node The node.

Definition at line 67 of file capabilities.h.

Tag * tag (  )  const [virtual]

Returns a Tag representation of the extension.

Returns:
A Tag representation of the extension.

Implements StanzaExtension.

Definition at line 145 of file capabilities.cpp.

const std::string ver (  )  const

Returns the client's identifying ver string.

Returns:
The ver string.

Definition at line 49 of file capabilities.cpp.


The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2