From 1639a23b507ac4f7c7a05d0322f9b5db7e687d79 Mon Sep 17 00:00:00 2001 From: Manjeet Dahiya Date: Thu, 23 Sep 2010 06:37:08 +0000 Subject: saveToCache impl --- examples/GuiClient/capabilitiesCollection.cpp | 33 +++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'examples/GuiClient/capabilitiesCollection.cpp') diff --git a/examples/GuiClient/capabilitiesCollection.cpp b/examples/GuiClient/capabilitiesCollection.cpp index 37f1dbce..8b662342 100644 --- a/examples/GuiClient/capabilitiesCollection.cpp +++ b/examples/GuiClient/capabilitiesCollection.cpp @@ -26,7 +26,10 @@ #include "QXmppClient.h" #include "QXmppDiscoveryManager.h" +#include + #include +#include capabilitiesCollection::capabilitiesCollection(QXmppClient* client) : QObject(client), m_client(client) @@ -66,6 +69,36 @@ void capabilitiesCollection::infoReceived(const QXmppDiscoveryIq& discoIqRcv) discoIq.setFrom(""); discoIq.setId(""); m_mapCapabilities[discoIq.queryNode()] = discoIq; + saveToCache(discoIq.queryNode()); } } } + +void capabilitiesCollection::loadAllFromCache() +{ +} + +void capabilitiesCollection::saveToCache(const QString& nodeVer) +{ + if(!m_mapCapabilities.contains(nodeVer)) + return; + + QString fileName = getImageHash(nodeVer.toUtf8()); + QDir dir; + if(!dir.exists(getSettingsDir(m_client->configuration().jidBare()))) + dir.mkpath(getSettingsDir(m_client->configuration().jidBare())); + + QDir dir2; + if(!dir2.exists(getSettingsDir(m_client->configuration().jidBare())+ "capabilities/")) + dir2.mkpath(getSettingsDir(m_client->configuration().jidBare())+ "capabilities/"); + + QString fileCapability = getSettingsDir(m_client->configuration().jidBare()) + "capabilities/" + fileName + ".xml"; + QFile file(fileCapability); + + if(file.open(QIODevice::ReadWrite)) + { + QXmlStreamWriter stream(&file); + m_mapCapabilities[nodeVer].toXml(&stream); + file.close(); + } +} -- cgit v1.2.3