aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2010-10-29 16:03:46 +0000
committerJeremy Lainé <jeremy.laine@m4x.org>2010-10-29 16:03:46 +0000
commitff65bdcfe93d3285079f4509f82d5e24cef88e81 (patch)
tree2a11d29fe285d443d2a8f21e16da96acd0a9f847 /src
parent3256b370c24c00fa61b7e232c73deef9c1f71b11 (diff)
downloadqxmpp-ff65bdcfe93d3285079f4509f82d5e24cef88e81.tar.gz
QXmppEntityTimeIq::utc() should return a QDateTime, the user should not have to implement parsing / serialization
Diffstat (limited to 'src')
-rw-r--r--src/QXmppEntityTimeIq.cpp10
-rw-r--r--src/QXmppEntityTimeIq.h8
-rw-r--r--src/QXmppEntityTimeManager.cpp2
3 files changed, 11 insertions, 9 deletions
diff --git a/src/QXmppEntityTimeIq.cpp b/src/QXmppEntityTimeIq.cpp
index 56cc6f94..d86579aa 100644
--- a/src/QXmppEntityTimeIq.cpp
+++ b/src/QXmppEntityTimeIq.cpp
@@ -39,12 +39,12 @@ void QXmppEntityTimeIq::setTzo(const QString &tzo)
m_tzo = tzo;
}
-QString QXmppEntityTimeIq::utc() const
+QDateTime QXmppEntityTimeIq::utc() const
{
return m_utc;
}
-void QXmppEntityTimeIq::setUtc(const QString &utc)
+void QXmppEntityTimeIq::setUtc(const QDateTime &utc)
{
m_utc = utc;
}
@@ -59,7 +59,7 @@ void QXmppEntityTimeIq::parseElementFromChild(const QDomElement &element)
{
QDomElement timeElement = element.firstChildElement("time");
m_tzo = timeElement.firstChildElement("tzo").text();
- m_utc = timeElement.firstChildElement("utc").text();
+ m_utc = datetimeFromString(timeElement.firstChildElement("utc").text());
}
void QXmppEntityTimeIq::toXmlElementFromChild(QXmlStreamWriter *writer) const
@@ -70,8 +70,8 @@ void QXmppEntityTimeIq::toXmlElementFromChild(QXmlStreamWriter *writer) const
if(!m_tzo.isEmpty())
helperToXmlAddTextElement(writer, "tzo", m_tzo);
- if(!m_utc.isEmpty())
- helperToXmlAddTextElement(writer, "utc", m_utc);
+ if(m_utc.isValid())
+ helperToXmlAddTextElement(writer, "utc", datetimeToString(m_utc));
writer->writeEndElement();
}
diff --git a/src/QXmppEntityTimeIq.h b/src/QXmppEntityTimeIq.h
index a7b73d1d..35bb895a 100644
--- a/src/QXmppEntityTimeIq.h
+++ b/src/QXmppEntityTimeIq.h
@@ -25,6 +25,8 @@
#ifndef QXMPPENTITYTIMEIQ_H
#define QXMPPENTITYTIMEIQ_H
+#include <QDateTime>
+
#include "QXmppIq.h"
/// \ingroup Stanzas
@@ -35,8 +37,8 @@ public:
QString tzo() const;
void setTzo(const QString &tzo);
- QString utc() const;
- void setUtc(const QString &utc);
+ QDateTime utc() const;
+ void setUtc(const QDateTime &utc);
static bool isEntityTimeIq(const QDomElement &element);
@@ -48,7 +50,7 @@ protected:
private:
QString m_tzo;
- QString m_utc;
+ QDateTime m_utc;
};
#endif //QXMPPENTITYTIMEIQ_H
diff --git a/src/QXmppEntityTimeManager.cpp b/src/QXmppEntityTimeManager.cpp
index c69feb12..443229df 100644
--- a/src/QXmppEntityTimeManager.cpp
+++ b/src/QXmppEntityTimeManager.cpp
@@ -66,7 +66,7 @@ bool QXmppEntityTimeManager::handleStanza(const QDomElement &element)
QDateTime currentTime = QDateTime::currentDateTime();
QDateTime utc = currentTime.toUTC();
- responseIq.setUtc(datetimeToString(utc));
+ responseIq.setUtc(utc);
currentTime.setTimeSpec(Qt::UTC);
int tzo_sec = utc.secsTo(currentTime);