aboutsummaryrefslogtreecommitdiff
path: root/examples/example_7_archiveHandling/xmppClient.cpp
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2012-09-14 14:39:54 +0200
committerJeremy Lainé <jeremy.laine@m4x.org>2012-09-14 14:39:54 +0200
commitfc1b469d3ef6f218ac270cb3abf7133442ff1a2f (patch)
tree70416705f5fa9bb65a6c3f99a326773d04d8e606 /examples/example_7_archiveHandling/xmppClient.cpp
parent575a9d9d860f5417b0173ff6dc3ed41cfef0bbaf (diff)
downloadqxmpp-fc1b469d3ef6f218ac270cb3abf7133442ff1a2f.tar.gz
fix example
Diffstat (limited to 'examples/example_7_archiveHandling/xmppClient.cpp')
-rw-r--r--examples/example_7_archiveHandling/xmppClient.cpp144
1 files changed, 0 insertions, 144 deletions
diff --git a/examples/example_7_archiveHandling/xmppClient.cpp b/examples/example_7_archiveHandling/xmppClient.cpp
deleted file mode 100644
index bc54b990..00000000
--- a/examples/example_7_archiveHandling/xmppClient.cpp
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Copyright (C) 2008-2012 The QXmpp developers
- *
- * Author:
- * Jeremy Lainé
- *
- * 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 <QDateTime>
-
-#include "QXmppArchiveIq.h"
-#include "QXmppArchiveManager.h"
-
-#include "xmppClient.h"
-
-static void logStart(const QString &msg)
-{
- qDebug("example_7_archiveHandling : %s", qPrintable(msg));
-}
-
-static void logEnd(const QString &msg)
-{
- qDebug(" => %s", qPrintable(msg));
-}
-
-xmppClient::xmppClient(QObject *parent)
- : QXmppClient(parent)
- , m_collectionCount(-1)
- , m_pageDirection(PageForwards)
- , m_pageSize(10)
-{
- bool check;
- Q_UNUSED(check);
-
- // add archive manager
- archiveManager = new QXmppArchiveManager;
- addExtension(archiveManager);
-
- // connect signals
- check = connect(this, SIGNAL(connected()),
- this, SLOT(clientConnected()));
- Q_ASSERT(check);
-
- check = connect(archiveManager, SIGNAL(archiveChatReceived(QXmppArchiveChat, QXmppResultSetReply)),
- SLOT(archiveChatReceived(QXmppArchiveChat, QXmppResultSetReply)));
- Q_ASSERT(check);
-
- check = connect(archiveManager, SIGNAL(archiveListReceived(QList<QXmppArchiveChat>, QXmppResultSetReply)),
- SLOT(archiveListReceived(QList<QXmppArchiveChat>, QXmppResultSetReply)));
- Q_ASSERT(check);
-
- // set limits
- m_startDate = QDateTime::currentDateTime().addDays(-21);
- m_endDate = QDateTime::currentDateTime();
-}
-
-xmppClient::~xmppClient()
-{
-
-}
-
-void xmppClient::setPageDirection(PageDirection direction)
-{
- m_pageDirection = direction;
-}
-
-void xmppClient::setPageSize(int size)
-{
- m_pageSize = size;
-}
-
-void xmppClient::clientConnected()
-{
- logEnd("connected");
-
- // we want 0 results, i.e. only result-set management information (count)
- logStart("fetching collection count");
- QXmppResultSetQuery rsmQuery;
- rsmQuery.setMax(0);
- archiveManager->listCollections("", m_startDate, m_endDate, rsmQuery);
-}
-
-void xmppClient::archiveListReceived(const QList<QXmppArchiveChat> &chats, const QXmppResultSetReply &rsmReply)
-{
- if (m_collectionCount < 0) {
- logEnd(QString::number(rsmReply.count()) + " items");
- m_collectionCount = rsmReply.count();
-
- // fetch first page
- logStart("fetching collection first page");
- QXmppResultSetQuery rsmQuery;
- rsmQuery.setMax(m_pageSize);
- if (m_pageDirection == PageBackwards)
- rsmQuery.setBefore("");
- archiveManager->listCollections("", m_startDate, m_endDate, rsmQuery);
- } else if (!chats.size()) {
- logEnd("no items");
- } else {
- logEnd(QString("items %1 to %2 of %3").arg(QString::number(rsmReply.index()), QString::number(rsmReply.index() + chats.size() - 1), QString::number(rsmReply.count())));
- foreach (const QXmppArchiveChat &chat, chats) {
- qDebug("chat start %s", qPrintable(chat.start().toString()));
- // NOTE: to actually retrieve conversations, uncomment this
- //archiveManager->retrieveCollection(chat.with(), chat.start());
- }
- if (!rsmReply.isNull()) {
- // fetch next page
- QXmppResultSetQuery rsmQuery;
- rsmQuery.setMax(m_pageSize);
- if (m_pageDirection == PageBackwards) {
- logStart("fetching collection previous page");
- rsmQuery.setBefore(rsmReply.first());
- } else {
- logStart("fetching collection next page");
- rsmQuery.setAfter(rsmReply.last());
- }
- archiveManager->listCollections("", m_startDate, m_endDate, rsmQuery);
- }
- }
-}
-
-void xmppClient::archiveChatReceived(const QXmppArchiveChat &chat, const QXmppResultSetReply &rsmReply)
-{
- logEnd(QString("chat received, RSM count %1").arg(QString::number(rsmReply.count())));
- foreach (const QXmppArchiveMessage &msg, chat.messages()) {
- qDebug("example_7_archiveHandling : %s", qPrintable(msg.body()));
- }
-}
-