aboutsummaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2010-07-08 13:08:33 +0000
committerJeremy Lainé <jeremy.laine@m4x.org>2010-07-08 13:08:33 +0000
commit8a07e9025a1865bcdcaa652665dbc97deac1ec16 (patch)
tree81b526b69b6d13ef6ae73e1c9bba2b979bd7c07f /source
parentf24306761d73480962ce4604607f4abf19806742 (diff)
downloadqxmpp-8a07e9025a1865bcdcaa652665dbc97deac1ec16.tar.gz
use parseElementFromChild in all IQ classes
Diffstat (limited to 'source')
-rw-r--r--source/QXmppBind.cpp5
-rw-r--r--source/QXmppBind.h6
-rw-r--r--source/QXmppByteStreamIq.cpp6
-rw-r--r--source/QXmppByteStreamIq.h4
-rw-r--r--source/QXmppDiscoveryIq.cpp5
-rw-r--r--source/QXmppDiscoveryIq.h4
-rw-r--r--source/QXmppIbbIq.cpp18
-rw-r--r--source/QXmppIbbIq.h12
-rw-r--r--source/QXmppRosterIq.cpp5
-rw-r--r--source/QXmppRosterIq.h6
-rw-r--r--source/QXmppRpcIq.cpp28
-rw-r--r--source/QXmppRpcIq.h16
-rw-r--r--source/QXmppStreamInitiationIq.cpp6
-rw-r--r--source/QXmppStreamInitiationIq.h4
-rw-r--r--source/QXmppVCard.cpp6
-rw-r--r--source/QXmppVCard.h6
-rw-r--r--source/QXmppVersionIq.cpp5
-rw-r--r--source/QXmppVersionIq.h4
18 files changed, 61 insertions, 85 deletions
diff --git a/source/QXmppBind.cpp b/source/QXmppBind.cpp
index 38bb2131..43e08908 100644
--- a/source/QXmppBind.cpp
+++ b/source/QXmppBind.cpp
@@ -65,11 +65,8 @@ bool QXmppBind::isBind(const QDomElement &element)
return (bindElement.namespaceURI() == ns_bind);
}
-void QXmppBind::parse(const QDomElement &element)
+void QXmppBind::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
- setTypeFromStr(element.attribute("type"));
-
QDomElement bindElement = element.firstChildElement("bind");
m_jid = bindElement.firstChildElement("jid").text();
m_resource = bindElement.firstChildElement("resource").text();
diff --git a/source/QXmppBind.h b/source/QXmppBind.h
index ad938d9b..30f2fdb3 100644
--- a/source/QXmppBind.h
+++ b/source/QXmppBind.h
@@ -40,7 +40,6 @@ public:
void setResource(const QString&);
static bool isBind(const QDomElement &element);
- void parse(const QDomElement &element);
// deprecated accessors, use the form without "get" instead
// obsolete start
@@ -48,10 +47,13 @@ public:
QString Q_DECL_DEPRECATED getResource() const;
// obsolete end
+protected:
+ void parseElementFromChild(const QDomElement &element);
+ void toXmlElementFromChild(QXmlStreamWriter *writer) const;
+
private:
QString m_jid;
QString m_resource;
- void toXmlElementFromChild(QXmlStreamWriter *writer) const;
};
#endif // QXMPPBIND_H
diff --git a/source/QXmppByteStreamIq.cpp b/source/QXmppByteStreamIq.cpp
index 03af6130..28932c66 100644
--- a/source/QXmppByteStreamIq.cpp
+++ b/source/QXmppByteStreamIq.cpp
@@ -122,12 +122,8 @@ bool QXmppByteStreamIq::isByteStreamIq(const QDomElement &element)
return element.firstChildElement("query").namespaceURI() == ns_bytestreams;
}
-void QXmppByteStreamIq::parse(const QDomElement &element)
+void QXmppByteStreamIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement queryElement = element.firstChildElement("query");
m_sid = queryElement.attribute("sid");
const QString modeStr = queryElement.attribute("mode");
diff --git a/source/QXmppByteStreamIq.h b/source/QXmppByteStreamIq.h
index b9ee67da..ae178d82 100644
--- a/source/QXmppByteStreamIq.h
+++ b/source/QXmppByteStreamIq.h
@@ -78,7 +78,9 @@ public:
void setStreamHostUsed(const QString &jid);
static bool isByteStreamIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
diff --git a/source/QXmppDiscoveryIq.cpp b/source/QXmppDiscoveryIq.cpp
index 8cbe5b6e..a308161a 100644
--- a/source/QXmppDiscoveryIq.cpp
+++ b/source/QXmppDiscoveryIq.cpp
@@ -144,11 +144,8 @@ bool QXmppDiscoveryIq::isDiscoveryIq(const QDomElement &element)
queryElement.namespaceURI() == ns_disco_items);
}
-void QXmppDiscoveryIq::parse(const QDomElement &element)
+void QXmppDiscoveryIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
QDomElement queryElement = element.firstChildElement("query");
m_queryNode = queryElement.attribute("node");
if (queryElement.namespaceURI() == ns_disco_items)
diff --git a/source/QXmppDiscoveryIq.h b/source/QXmppDiscoveryIq.h
index c5af21a9..c1c8fd91 100644
--- a/source/QXmppDiscoveryIq.h
+++ b/source/QXmppDiscoveryIq.h
@@ -89,7 +89,9 @@ public:
void setQueryType(enum QueryType type);
static bool isDiscoveryIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
diff --git a/source/QXmppIbbIq.cpp b/source/QXmppIbbIq.cpp
index a85d0f54..60f0a38f 100644
--- a/source/QXmppIbbIq.cpp
+++ b/source/QXmppIbbIq.cpp
@@ -35,12 +35,8 @@ bool QXmppIbbOpenIq::isIbbOpenIq(const QDomElement &element)
return openElement.namespaceURI() == ns_ibb;
}
-void QXmppIbbOpenIq::parse(const QDomElement &element)
+void QXmppIbbOpenIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement openElement = element.firstChildElement("open");
m_sid = openElement.attribute( "sid" );
m_block_size = openElement.attribute( "block-size" ).toLong();
@@ -76,12 +72,8 @@ bool QXmppIbbCloseIq::isIbbCloseIq(const QDomElement &element)
return openElement.namespaceURI() == ns_ibb;
}
-void QXmppIbbCloseIq::parse(const QDomElement &element)
+void QXmppIbbCloseIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement openElement = element.firstChildElement("close");
m_sid = openElement.attribute( "sid" );
}
@@ -135,12 +127,8 @@ bool QXmppIbbDataIq::isIbbDataIq(const QDomElement &element)
return dataElement.namespaceURI() == ns_ibb;
}
-void QXmppIbbDataIq::parse(const QDomElement &element)
+void QXmppIbbDataIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement dataElement = element.firstChildElement("data");
m_sid = dataElement.attribute( "sid" );
m_seq = dataElement.attribute( "seq" ).toLong();
diff --git a/source/QXmppIbbIq.h b/source/QXmppIbbIq.h
index 33dc9e42..69945987 100644
--- a/source/QXmppIbbIq.h
+++ b/source/QXmppIbbIq.h
@@ -18,7 +18,9 @@ public:
void setSid( const QString &sid );
static bool isIbbOpenIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
@@ -35,7 +37,9 @@ public:
void setSid( const QString &sid );
static bool isIbbCloseIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
@@ -57,7 +61,9 @@ public:
void setPayload( const QByteArray &data );
static bool isIbbDataIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
diff --git a/source/QXmppRosterIq.cpp b/source/QXmppRosterIq.cpp
index d6105bdb..204a4ada 100644
--- a/source/QXmppRosterIq.cpp
+++ b/source/QXmppRosterIq.cpp
@@ -44,11 +44,8 @@ bool QXmppRosterIq::isRosterIq(const QDomElement &element)
return (element.firstChildElement("query").namespaceURI() == ns_roster);
}
-void QXmppRosterIq::parse(const QDomElement &element)
+void QXmppRosterIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
- setTypeFromStr(element.attribute("type"));
-
QDomElement itemElement = element.
firstChildElement("query").
firstChildElement("item");
diff --git a/source/QXmppRosterIq.h b/source/QXmppRosterIq.h
index 75cb8b1a..f81ce7c5 100644
--- a/source/QXmppRosterIq.h
+++ b/source/QXmppRosterIq.h
@@ -91,12 +91,14 @@ public:
QList<Item> items() const;
static bool isRosterIq(const QDomElement &element);
- void parse(const QDomElement &element);
- void toXmlElementFromChild(QXmlStreamWriter *writer) const;
// deprecated accessors, use the form without "get" instead
QList<Item> Q_DECL_DEPRECATED getItems() const;
+protected:
+ void parseElementFromChild(const QDomElement &element);
+ void toXmlElementFromChild(QXmlStreamWriter *writer) const;
+
private:
QList<Item> m_items;
};
diff --git a/source/QXmppRpcIq.cpp b/source/QXmppRpcIq.cpp
index 985fc562..7bc5ee7f 100644
--- a/source/QXmppRpcIq.cpp
+++ b/source/QXmppRpcIq.cpp
@@ -9,11 +9,6 @@ QXmppRpcErrorIq::QXmppRpcErrorIq() : QXmppIq( QXmppIq::Error )
}
-void QXmppRpcErrorIq::toXmlElementFromChild(QXmlStreamWriter *writer) const
-{
- m_query.toXmlElementFromChild(writer);
-}
-
void QXmppRpcErrorIq::setQuery(const QXmppRpcInvokeIq &query )
{
m_query = query;
@@ -34,11 +29,14 @@ bool QXmppRpcErrorIq::isRpcErrorIq(const QDomElement &element)
queryElement.namespaceURI() == ns_rpc;
}
-void QXmppRpcErrorIq::parse(const QDomElement &element)
+void QXmppRpcErrorIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
+ m_query.parseElementFromChild(element);
+}
- setTypeFromStr(element.attribute("type"));
+void QXmppRpcErrorIq::toXmlElementFromChild(QXmlStreamWriter *writer) const
+{
+ m_query.toXmlElementFromChild(writer);
}
QXmppRpcResponseIq::QXmppRpcResponseIq() : QXmppIq( QXmppIq::Result )
@@ -63,18 +61,13 @@ bool QXmppRpcResponseIq::isRpcResponseIq(const QDomElement &element)
type == "result";
}
-void QXmppRpcResponseIq::parse(const QDomElement &element)
+void QXmppRpcResponseIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement queryElement = element.firstChildElement("query");
QDomElement methodElement = queryElement.firstChildElement("methodResponse");
XMLRPC::ResponseMessage message( methodElement );
m_payload = message.value();
-
}
void QXmppRpcResponseIq::toXmlElementFromChild(QXmlStreamWriter *writer) const
@@ -126,12 +119,8 @@ bool QXmppRpcInvokeIq::isRpcInvokeIq(const QDomElement &element)
type == "set";
}
-void QXmppRpcInvokeIq::parse(const QDomElement &element)
+void QXmppRpcInvokeIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement queryElement = element.firstChildElement("query");
QDomElement methodElement = queryElement.firstChildElement("methodCall");
@@ -140,7 +129,6 @@ void QXmppRpcInvokeIq::parse(const QDomElement &element)
m_interface = message.method().split('.').value(0);
m_method = message.method().split('.').value(1);
m_payload = message.args();
-
}
void QXmppRpcInvokeIq::toXmlElementFromChild(QXmlStreamWriter *writer) const
diff --git a/source/QXmppRpcIq.h b/source/QXmppRpcIq.h
index 461fcb4a..9700a8b8 100644
--- a/source/QXmppRpcIq.h
+++ b/source/QXmppRpcIq.h
@@ -16,12 +16,13 @@ public:
void setPayload( const QVariant &payload );
static bool isRpcResponseIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
QVariant m_payload;
-
};
class QXmppRpcInvokeIq : public QXmppIq
@@ -39,7 +40,9 @@ public:
void setInterface( const QString &interface );
static bool isRpcInvokeIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
@@ -47,6 +50,7 @@ private:
QString m_method;
QString m_interface;
+ friend class QXmppRpcErrorIq;
};
class QXmppRpcErrorIq : public QXmppIq
@@ -54,11 +58,13 @@ class QXmppRpcErrorIq : public QXmppIq
public:
QXmppRpcErrorIq();
- void setQuery(const QXmppRpcInvokeIq &query );
+ void setQuery(const QXmppRpcInvokeIq &query);
QXmppRpcInvokeIq getQuery() const;
static bool isRpcErrorIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
diff --git a/source/QXmppStreamInitiationIq.cpp b/source/QXmppStreamInitiationIq.cpp
index c31536f6..848f7185 100644
--- a/source/QXmppStreamInitiationIq.cpp
+++ b/source/QXmppStreamInitiationIq.cpp
@@ -73,12 +73,8 @@ bool QXmppStreamInitiationIq::isStreamInitiationIq(const QDomElement &element)
return (siElement.namespaceURI() == ns_stream_initiation);
}
-void QXmppStreamInitiationIq::parse(const QDomElement &element)
+void QXmppStreamInitiationIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
-
- setTypeFromStr(element.attribute("type"));
-
QDomElement siElement = element.firstChildElement("si");
m_siId = siElement.attribute("id");
m_mimeType = siElement.attribute("mime-type");
diff --git a/source/QXmppStreamInitiationIq.h b/source/QXmppStreamInitiationIq.h
index 94b222fa..593f376c 100644
--- a/source/QXmppStreamInitiationIq.h
+++ b/source/QXmppStreamInitiationIq.h
@@ -52,7 +52,9 @@ public:
void setSiItems(const QXmppElementList &items);
static bool isStreamInitiationIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private:
diff --git a/source/QXmppVCard.cpp b/source/QXmppVCard.cpp
index 9efdf173..8f986c52 100644
--- a/source/QXmppVCard.cpp
+++ b/source/QXmppVCard.cpp
@@ -148,12 +148,8 @@ void QXmppVCard::setPhoto(const QImage& image)
}
#endif
-void QXmppVCard::parse(const QDomElement& nodeRecv)
+void QXmppVCard::parseElementFromChild(const QDomElement& nodeRecv)
{
- QXmppStanza::parse(nodeRecv);
-
- setTypeFromStr(nodeRecv.attribute("type"));
-
// vCard
QDomElement cardElement = nodeRecv.firstChildElement("vCard");
m_fullName = cardElement.firstChildElement("FN").text();
diff --git a/source/QXmppVCard.h b/source/QXmppVCard.h
index e59416dd..ad259854 100644
--- a/source/QXmppVCard.h
+++ b/source/QXmppVCard.h
@@ -46,8 +46,6 @@ public:
void setPhoto(const QByteArray&);
void setPhoto(const QImage&);
- void parse(const QDomElement&);
-
QString firstName() const;
QString fullName() const;
QString lastName() const;
@@ -66,9 +64,11 @@ public:
const QByteArray Q_DECL_DEPRECATED & getPhoto() const;
// obsolete end
-private:
+protected:
+ void parseElementFromChild(const QDomElement&);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
+private:
QString m_firstName;
QString m_fullName;
QString m_lastName;
diff --git a/source/QXmppVersionIq.cpp b/source/QXmppVersionIq.cpp
index 4c000fd1..16d9a957 100644
--- a/source/QXmppVersionIq.cpp
+++ b/source/QXmppVersionIq.cpp
@@ -63,11 +63,8 @@ bool QXmppVersionIq::isVersionIq(const QDomElement &element)
return queryElement.namespaceURI() == ns_version;
}
-void QXmppVersionIq::parse(const QDomElement &element)
+void QXmppVersionIq::parseElementFromChild(const QDomElement &element)
{
- QXmppStanza::parse(element);
- setTypeFromStr(element.attribute("type"));
-
QDomElement queryElement = element.firstChildElement("query");
m_name = element.firstChildElement("name").text();
m_os = element.firstChildElement("os").text();
diff --git a/source/QXmppVersionIq.h b/source/QXmppVersionIq.h
index 7f02d112..dfe5edcd 100644
--- a/source/QXmppVersionIq.h
+++ b/source/QXmppVersionIq.h
@@ -42,7 +42,9 @@ public:
void setVersion(const QString &version);
static bool isVersionIq(const QDomElement &element);
- void parse(const QDomElement &element);
+
+protected:
+ void parseElementFromChild(const QDomElement &element);
void toXmlElementFromChild(QXmlStreamWriter *writer) const;
private: