gloox
1.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
src
stanzaextension.h
1
/*
2
Copyright (c) 2006-2009 by Jakob Schroeter <js@camaya.net>
3
This file is part of the gloox library. http://camaya.net/gloox
4
5
This software is distributed under a license. The full license
6
agreement can be found in the file LICENSE in this distribution.
7
This software may not be copied, modified, sold or distributed
8
other than expressed in the named license agreement.
9
10
This software is distributed without any warranty.
11
*/
12
13
14
#ifndef STANZAEXTENSION_H__
15
#define STANZAEXTENSION_H__
16
17
#include "macros.h"
18
19
#include <string>
20
21
namespace
gloox
22
{
23
24
class
Tag;
25
29
enum
StanzaExtensionType
30
{
31
ExtNone
,
32
ExtVCardUpdate
,
34
ExtOOB
,
36
ExtGPGSigned
,
38
ExtGPGEncrypted
,
40
ExtReceipt
,
42
ExtDelay
,
44
ExtAMP
,
46
ExtError
,
47
ExtCaps
,
49
ExtChatState
,
50
ExtMessageEvent
,
51
ExtDataForm
,
52
ExtNickname
,
53
ExtResourceBind
,
54
ExtSessionCreation
,
55
ExtVersion
,
57
ExtXHtmlIM
,
59
ExtDiscoInfo
,
60
ExtDiscoItems
,
61
ExtAdhocCommand
,
62
ExtPrivateXML
,
63
ExtRoster
,
64
ExtFeatureNeg
,
66
ExtIBB
,
67
ExtNonSaslAuth
,
68
ExtMUC
,
69
ExtMUCOwner
,
70
ExtMUCAdmin
,
71
ExtMUCUser
,
72
ExtMUCUnique
,
73
ExtPing
,
74
ExtSearch
,
75
ExtRegistration
,
76
ExtJingle
,
77
ExtVCard
,
78
ExtPrivacy
,
79
ExtLastActivity
,
80
ExtFlexOffline
,
81
ExtSI
,
82
ExtS5BQuery
,
83
ExtPubSub
,
84
ExtPubSubOwner
,
85
ExtPubSubEvent
,
87
ExtSHIM
,
88
ExtAttention
,
89
ExtUser
92
};
93
177
class
GLOOX_API
StanzaExtension
178
{
179
public
:
185
StanzaExtension
(
int
type ) : m_valid( false ), m_extensionType( type ) {}
186
190
virtual
~StanzaExtension
() {}
191
198
virtual
const
std::string& filterString()
const
= 0;
199
211
virtual
StanzaExtension
* newInstance(
const
Tag
* tag )
const
= 0;
212
217
virtual
Tag
* tag()
const
= 0;
218
223
virtual
StanzaExtension
* clone()
const
= 0;
224
229
int
extensionType
()
const
{
return
m_extensionType; }
230
231
protected
:
232
bool
m_valid;
233
234
private
:
235
int
m_extensionType;
236
237
};
238
239
}
240
241
#endif // STANZAEXTENSION_H__
gloox::ExtJingle
Definition:
stanzaextension.h:76
gloox::ExtNickname
Definition:
stanzaextension.h:52
gloox::ExtReceipt
Definition:
stanzaextension.h:40
gloox::ExtSHIM
Definition:
stanzaextension.h:87
gloox::ExtPing
Definition:
stanzaextension.h:73
gloox::ExtPubSubOwner
Definition:
stanzaextension.h:84
gloox::ExtMUCUnique
Definition:
stanzaextension.h:72
gloox::ExtAttention
Definition:
stanzaextension.h:88
gloox::ExtMUCUser
Definition:
stanzaextension.h:71
gloox::ExtNone
Definition:
stanzaextension.h:31
gloox::ExtGPGSigned
Definition:
stanzaextension.h:36
gloox::ExtDiscoInfo
Definition:
stanzaextension.h:59
gloox::ExtMUC
Definition:
stanzaextension.h:68
gloox::ExtSearch
Definition:
stanzaextension.h:74
gloox::ExtDelay
Definition:
stanzaextension.h:42
gloox::ExtDataForm
Definition:
stanzaextension.h:51
gloox::ExtPubSub
Definition:
stanzaextension.h:83
gloox::ExtLastActivity
Definition:
stanzaextension.h:79
gloox::ExtMessageEvent
Definition:
stanzaextension.h:50
gloox::StanzaExtension::extensionType
int extensionType() const
Definition:
stanzaextension.h:229
gloox::ExtRoster
Definition:
stanzaextension.h:63
gloox::ExtCaps
Definition:
stanzaextension.h:47
gloox::ExtVCardUpdate
Definition:
stanzaextension.h:32
gloox::ExtOOB
Definition:
stanzaextension.h:34
gloox::ExtSI
Definition:
stanzaextension.h:81
gloox::ExtXHtmlIM
Definition:
stanzaextension.h:57
gloox::StanzaExtension
This class abstracts a stanza extension, which is usually an element in a specific namespace...
Definition:
stanzaextension.h:177
gloox::ExtVersion
Definition:
stanzaextension.h:55
gloox::ExtFeatureNeg
Definition:
stanzaextension.h:64
gloox::StanzaExtension::StanzaExtension
StanzaExtension(int type)
Definition:
stanzaextension.h:185
gloox::ExtVCard
Definition:
stanzaextension.h:77
gloox::ExtAdhocCommand
Definition:
stanzaextension.h:61
gloox::ExtIBB
Definition:
stanzaextension.h:66
gloox::ExtFlexOffline
Definition:
stanzaextension.h:80
gloox::ExtMUCOwner
Definition:
stanzaextension.h:69
gloox::ExtError
Definition:
stanzaextension.h:46
gloox::StanzaExtension::~StanzaExtension
virtual ~StanzaExtension()
Definition:
stanzaextension.h:190
gloox::ExtPrivateXML
Definition:
stanzaextension.h:62
gloox::ExtDiscoItems
Definition:
stanzaextension.h:60
gloox::ExtMUCAdmin
Definition:
stanzaextension.h:70
gloox::ExtS5BQuery
Definition:
stanzaextension.h:82
gloox::ExtResourceBind
Definition:
stanzaextension.h:53
gloox::ExtChatState
Definition:
stanzaextension.h:49
gloox::ExtGPGEncrypted
Definition:
stanzaextension.h:38
gloox::ExtRegistration
Definition:
stanzaextension.h:75
gloox::ExtSessionCreation
Definition:
stanzaextension.h:54
gloox::ExtUser
Definition:
stanzaextension.h:89
gloox::ExtPubSubEvent
Definition:
stanzaextension.h:85
gloox::ExtAMP
Definition:
stanzaextension.h:44
gloox::Tag
This is an abstraction of an XML element.
Definition:
tag.h:46
gloox::ExtPrivacy
Definition:
stanzaextension.h:78
gloox::StanzaExtensionType
StanzaExtensionType
Definition:
stanzaextension.h:29
gloox::ExtNonSaslAuth
Definition:
stanzaextension.h:67
Generated on Thu Jan 16 2014 17:40:22 for gloox by
1.8.6