aboutsummaryrefslogtreecommitdiff
path: root/source/QXmppUtils.cpp
diff options
context:
space:
mode:
authorManjeet Dahiya <manjeetdahiya@gmail.com>2009-09-05 10:03:22 +0000
committerManjeet Dahiya <manjeetdahiya@gmail.com>2009-09-05 10:03:22 +0000
commit2cad23d883dd5958362381367b859d45665e9f81 (patch)
tree89ece8bf52f4fcdbbd9619116ef49e1d70d2178b /source/QXmppUtils.cpp
parent2d3aee65a5d59f87dcfd05b73cde6456bf504582 (diff)
downloadqxmpp-2cad23d883dd5958362381367b859d45665e9f81.tar.gz
utils to QXmppUtils
Diffstat (limited to 'source/QXmppUtils.cpp')
-rw-r--r--source/QXmppUtils.cpp86
1 files changed, 86 insertions, 0 deletions
diff --git a/source/QXmppUtils.cpp b/source/QXmppUtils.cpp
new file mode 100644
index 00000000..493d1266
--- /dev/null
+++ b/source/QXmppUtils.cpp
@@ -0,0 +1,86 @@
+/*
+ * 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 "QXmppUtils.h"
+#include "QXmppLogger.h"
+#include <QString>
+#include <QTextStream>
+#include <QByteArray>
+
+QString jidToResource(const QString& jid)
+{
+ return jid.mid(jid.indexOf(QChar('/'))+1);
+}
+
+QString jidToBareJid(const QString& jid)
+{
+ return jid.left(jid.indexOf(QChar('/')));
+}
+
+void helperToXmlAddAttribute(QTextStream& stream, const QString& name, const QString& value)
+{
+ if(!value.isEmpty())
+ stream << " " << name <<"='" << value << "'";
+}
+
+void helperToXmlAddElement(QTextStream& stream, const QString& name, int value)
+{
+ stream << "<" << name << ">" << value << "</" << name << ">";
+}
+
+void helperToXmlAddElement(QTextStream& stream, const QString& name, const QString& value)
+{
+ if(!value.isEmpty())
+ stream << "<" << name << ">" << value << "</" << name << ">";
+}
+
+void log(const QString& str)
+{
+ QXmppLogger::getLogger()->log(str);
+}
+
+void log(const QByteArray& str)
+{
+ QXmppLogger::getLogger()->log(str);
+}
+
+QString escapeString(const QString& str)
+{
+ QString strOut = str;
+ strOut.replace(QChar('&'), "&amp;");
+ strOut.replace(QChar('<'), "&lt;");
+ strOut.replace(QChar('>'), "&gt;");
+ strOut.replace(QChar('"'), "&quot;");
+ return strOut;
+}
+
+QString unescapeString(const QString& str)
+{
+ QString strOut = str;
+ strOut.replace("&lt;", QChar('<'));
+ strOut.replace("&gt;", QChar('>'));
+ strOut.replace("&quot;", QChar('"'));
+ strOut.replace("&amp;", QChar('&'));
+ return strOut;
+}