From c390fba4a976bd7998de681fed4c2aaeb29139d7 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Sat, 26 Sep 2009 00:45:34 +0200 Subject: AccessManager fixes - create request method - network disk cache --- src/networkaccessmanager.cpp | 49 ++++++++++++++++++++++---------------------- src/networkaccessmanager.h | 14 +++++++------ 2 files changed, 33 insertions(+), 30 deletions(-) (limited to 'src') diff --git a/src/networkaccessmanager.cpp b/src/networkaccessmanager.cpp index 90d27cd0..c7f9790b 100644 --- a/src/networkaccessmanager.cpp +++ b/src/networkaccessmanager.cpp @@ -57,7 +57,6 @@ NetworkAccessManager::NetworkAccessManager(QObject *parent) : AccessManager(parent) - , m_diskCache(0) { connect(this, SIGNAL(authenticationRequired(QNetworkReply*, QAuthenticator*)), SLOT(authenticationRequired(QNetworkReply*, QAuthenticator*))); @@ -102,25 +101,14 @@ void NetworkAccessManager::loadSettings() void NetworkAccessManager::resetDiskCache() { - if(!m_diskCache) + if(!cache()) { - m_diskCache = new QNetworkDiskCache(this); - QString location = KStandardDirs::locateLocal("cache", "", true); - - m_diskCache->setCacheDirectory(location); - setCache(m_diskCache); + QNetworkDiskCache *diskCache = new QNetworkDiskCache(this); + setCache(diskCache); } else { - QString location = m_diskCache->cacheDirectory(); - - QDir cacheDir(location + QString("/http") ); - QStringList fileList = cacheDir.entryList(); - Q_FOREACH(QString str, fileList) - { - QFile file(str); - file.remove(); - } + cache()->clear(); } } @@ -203,26 +191,39 @@ void NetworkAccessManager::slotSSLErrors(QNetworkReply *reply, const QList -// Forward Declarations -class QNetworkDiskCache; - using namespace KIO; @@ -44,7 +41,10 @@ class NetworkAccessManager : public AccessManager public: NetworkAccessManager(QObject *parent = 0); - KIO::MetaData& metaData(); + + KIO::MetaData& sessionMetaData(); + KIO::MetaData& requestMetaData(); + void resetDiskCache(); public slots: @@ -62,8 +62,10 @@ private slots: #endif private: - QNetworkDiskCache *m_diskCache; - KIO::MetaData m_metaData; + KIO::MetaData m_sessionMetaData; + KIO::MetaData m_requestMetaData; + + }; #endif // NETWORKACCESSMANAGER_H -- cgit v1.2.1