aboutsummaryrefslogtreecommitdiff
path: root/examples/GuiClient/vCardCache.h
diff options
context:
space:
mode:
authorManjeet Dahiya <manjeetdahiya@gmail.com>2010-09-26 10:56:08 +0000
committerManjeet Dahiya <manjeetdahiya@gmail.com>2010-09-26 10:56:08 +0000
commit5a671a2987f0d905d786587fb700ab6d3e6ddf25 (patch)
tree26c1fd0b982421c9a7370b1e97bab6e1708492ea /examples/GuiClient/vCardCache.h
parent06976314a805d193882ea8ecfa8b0d08fe16cbf3 (diff)
downloadqxmpp-5a671a2987f0d905d786587fb700ab6d3e6ddf25.tar.gz
vCardManager to vCardCache
Diffstat (limited to 'examples/GuiClient/vCardCache.h')
-rw-r--r--examples/GuiClient/vCardCache.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/examples/GuiClient/vCardCache.h b/examples/GuiClient/vCardCache.h
new file mode 100644
index 00000000..f96ff18c
--- /dev/null
+++ b/examples/GuiClient/vCardCache.h
@@ -0,0 +1,64 @@
+/*
+ * Copyright (C) 2008-2010 The QXmpp developers
+ *
+ * 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.
+ *
+ */
+
+
+#ifndef VCARDMANAGER_H
+#define VCARDMANAGER_H
+
+#include <QObject>
+#include <QMap>
+#include <QImage>
+#include "QXmppVCardIq.h"
+
+// use sqlite
+
+class QXmppClient;
+
+class vCardCache : public QObject
+{
+ Q_OBJECT
+
+public:
+ vCardCache(QXmppClient* client);
+ void requestVCard(const QString& bareJid);
+ bool isVCardAvailable(const QString& bareJid);
+ QImage getAvatar(const QString& bareJid) const;
+ QXmppVCardIq& getVCard(const QString& bareJid);
+ void loadAllFromCache();
+ void saveToCache(const QString& bareJid);
+ QString getSelfFullName();
+
+signals:
+ void vCardReadyToUse(const QString& bareJid);
+
+public slots:
+ void vCardReceived(const QXmppVCardIq&);
+
+private:
+ QString m_selfFullName;
+ QXmppClient* m_client;
+
+ QMap<QString, QXmppVCardIq> m_mapBareJidVcard;
+};
+
+#endif // VCARDMANAGER_H