gloox
1.0.1
Main Page
Related Pages
Namespaces
Classes
Files
File List
src
gpgsigned.cpp
1
/*
2
Copyright (c) 2006-2012 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
#include "gpgsigned.h"
15
#include "tag.h"
16
17
namespace
gloox
18
{
19
20
GPGSigned::GPGSigned
(
const
std::string& signature )
21
:
StanzaExtension
(
ExtGPGSigned
),
22
m_signature( signature ), m_valid( true )
23
{
24
if
( m_signature.empty() )
25
m_valid =
false
;
26
}
27
28
GPGSigned::GPGSigned
(
const
Tag
* tag )
29
:
StanzaExtension
(
ExtGPGSigned
),
30
m_valid( false )
31
{
32
if
( tag && tag->
name
() ==
"x"
&& tag->
hasAttribute
(
XMLNS
,
XMLNS_X_GPGSIGNED
) )
33
{
34
m_valid =
true
;
35
m_signature = tag->
cdata
();
36
}
37
}
38
39
GPGSigned::~GPGSigned
()
40
{
41
}
42
43
const
std::string&
GPGSigned::filterString
()
const
44
{
45
static
const
std::string filter =
46
"/presence/x[@xmlns='"
+
XMLNS_X_GPGSIGNED
+
"']"
47
"|/message/x[@xmlns='"
+
XMLNS_X_GPGSIGNED
+
"']"
;
48
return
filter;
49
}
50
51
Tag
*
GPGSigned::tag
()
const
52
{
53
if
( !m_valid )
54
return
0;
55
56
Tag
* x =
new
Tag
(
"x"
, m_signature );
57
x->
addAttribute
(
XMLNS
,
XMLNS_X_GPGSIGNED
);
58
59
return
x;
60
}
61
62
}
Generated on Sun Jun 30 2013 14:37:36 for gloox by
1.8.1.2