32 #include <QSharedData>
38 #include <QXmlStreamWriter>
40 #include "QXmppElement.h"
42 class QXmppExtendedAddressPrivate;
59 QString description()
const;
60 void setDescription(
const QString &description);
63 void setJid(
const QString &jid);
66 void setType(
const QString &type);
68 bool isDelivered()
const;
69 void setDelivered(
bool);
74 void parse(
const QDomElement &element);
75 void toXml(QXmlStreamWriter *writer)
const;
79 QSharedDataPointer<QXmppExtendedAddressPrivate> d;
82 class QXmppStanzaPrivate;
93 class QXMPP_EXPORT Error
109 FeatureNotImplemented,
119 RecipientUnavailable,
121 RegistrationRequired,
122 RemoteServerNotFound,
126 SubscriptionRequired,
132 Error(Type type, Condition cond,
const QString& text=
"");
133 Error(
const QString& type,
const QString& cond,
const QString& text=
"");
136 void setCode(
int code);
138 QString text()
const;
139 void setText(
const QString& text);
141 Condition condition()
const;
142 void setCondition(Condition cond);
144 void setType(Type type);
148 void parse(
const QDomElement &element);
149 void toXml(QXmlStreamWriter *writer)
const;
153 QString getConditionStr()
const;
154 void setConditionFromStr(
const QString& cond);
156 QString getTypeStr()
const;
157 void setTypeFromStr(
const QString& type);
161 Condition m_condition;
165 QXmppStanza(
const QString& from = QString(),
const QString& to = QString());
172 void setTo(
const QString&);
174 QString from()
const;
175 void setFrom(
const QString&);
178 void setId(
const QString&);
180 QString lang()
const;
181 void setLang(
const QString&);
183 QXmppStanza::Error error()
const;
184 void setError(
const QXmppStanza::Error& error);
186 QXmppElementList extensions()
const;
187 void setExtensions(
const QXmppElementList &elements);
189 QList<QXmppExtendedAddress> extendedAddresses()
const;
190 void setExtendedAddresses(
const QList<QXmppExtendedAddress> &extendedAddresses);
193 virtual void parse(
const QDomElement &element);
194 virtual void toXml(QXmlStreamWriter *writer)
const = 0;
197 void extensionsToXml(QXmlStreamWriter *writer)
const;
198 void generateAndSetNextId();
202 QSharedDataPointer<QXmppStanzaPrivate> d;
203 static uint s_uniqeIdNo;
206 #endif // QXMPPSTANZA_H