From 4bb18146d12ad2af36ec4e609a010f86be05730a Mon Sep 17 00:00:00 2001 From: Manjeet Dahiya Date: Sun, 14 Jun 2009 10:58:36 +0000 Subject: add --- source/QXmppIq.cpp | 130 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 source/QXmppIq.cpp (limited to 'source/QXmppIq.cpp') diff --git a/source/QXmppIq.cpp b/source/QXmppIq.cpp new file mode 100644 index 00000000..622139e2 --- /dev/null +++ b/source/QXmppIq.cpp @@ -0,0 +1,130 @@ +/* + * Copyright (C) 2008-2009 Manjeet Dahiya + * + * Author: + * Manjeet Dahiya + * + * Source: + * http://code.google.com/p/qxmpp + * + * This file is a part of QXmpp library. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + */ + + +#include "utils.h" +#include "QXmppIq.h" + +#include + +QXmppIq::QXmppIq(QXmppIq::Type type) + : QXmppStanza(), m_type(type) +{ + generateAndSetNextId(); +} + +QXmppIq::QXmppIq(const QString& type) + : QXmppStanza() +{ + generateAndSetNextId(); + setTypeFromStr(type); +} + +QXmppIq::~QXmppIq() +{ + +} + +QXmppIq::Type QXmppIq::getType() const +{ + return m_type; +} + +void QXmppIq::setType(QXmppIq::Type type) +{ + m_type = type; +} + +QByteArray QXmppIq::toXml() const +{ + QString data; + QTextStream stream(&data); + + stream << ""; + stream << toXmlElementFromChild(); + stream << getError().toXml(); + stream << ""; + + return data.toAscii(); +} + +QByteArray QXmppIq::toXmlElementFromChild() const +{ + return ""; +} + +QString QXmppIq::getTypeStr() const +{ + switch(getType()) + { + case QXmppIq::Error: + return "error"; + case QXmppIq::Get: + return "get"; + case QXmppIq::Set: + return "set"; + case QXmppIq::Result: + return "result"; + default: + qWarning("QXmppIq::getTypeStr() invalid type %d", (int)getType()); + return ""; + } +} + +void QXmppIq::setTypeFromStr(const QString& str) +{ + if(str == "error") + { + setType(QXmppIq::Error); + return; + } + else if(str == "get") + { + setType(QXmppIq::Get); + return; + } + else if(str == "set") + { + setType(QXmppIq::Set); + return; + } + else if(str == "result") + { + setType(QXmppIq::Result); + return; + } + else + { + setType(static_cast(-1)); + qWarning("QXmppIq::setTypeFromStr() invalid input string type: %s", qPrintable(str)); + return; + } +} -- cgit v1.2.3