Clean-up WebPage constructor.

We shall just pass the Config instance, that's cleaner and less messy.

This is a preparation step for
http://code.google.com/p/phantomjs/issues/detail?id=190
1.3
Ariya Hidayat 2011-09-14 21:41:58 -07:00
parent ac9be2a0d4
commit 7a9b6b4fec
3 changed files with 14 additions and 16 deletions

View File

@ -35,9 +35,10 @@
#include <QNetworkReply>
#include <QNetworkRequest>
#include "config.h"
#include "cookiejar.h"
#include "networkaccessmanager.h"
#include "networkreplyproxy.h"
#include "cookiejar.h"
static const char *toString(QNetworkAccessManager::Operation op)
{
@ -66,23 +67,23 @@ static const char *toString(QNetworkAccessManager::Operation op)
}
// public:
NetworkAccessManager::NetworkAccessManager(QObject *parent, bool diskCacheEnabled, QString cookieFile, bool ignoreSslErrors, QString authUser, QString authPass, int maxCacheSize)
NetworkAccessManager::NetworkAccessManager(QObject *parent, const Config *config)
: QNetworkAccessManager(parent)
, m_ignoreSslErrors(ignoreSslErrors)
, m_authUser(authUser)
, m_authPass(authPass)
, m_ignoreSslErrors(config->ignoreSslErrors())
, m_authUser(config->authUser())
, m_authPass(config->authPass())
, m_idCounter(0)
, m_networkDiskCache(0)
{
if (!cookieFile.isEmpty()) {
setCookieJar(new CookieJar(cookieFile));
if (!config->cookieFile().isEmpty()) {
setCookieJar(new CookieJar(config->cookieFile()));
}
if (diskCacheEnabled) {
if (config->diskCacheEnabled()) {
m_networkDiskCache = new QNetworkDiskCache(this);
m_networkDiskCache->setCacheDirectory(QDesktopServices::storageLocation(QDesktopServices::CacheLocation));
if (maxCacheSize >= 0)
m_networkDiskCache->setMaximumCacheSize(maxCacheSize * 1024);
if (config->maxDiskCacheSize() >= 0)
m_networkDiskCache->setMaximumCacheSize(config->maxDiskCacheSize() * 1024);
setCache(m_networkDiskCache);
}

View File

@ -37,16 +37,14 @@
#include <QNetworkReply>
#include <QSet>
class Config;
class QNetworkDiskCache;
class NetworkAccessManager : public QNetworkAccessManager
{
Q_OBJECT
public:
NetworkAccessManager(QObject *parent = 0, bool diskCacheEnabled = false,
QString cookieFile = QString(), bool ignoreSslErrors = false,
QString authUser = QString(), QString authPass = QString(),
int maxCacheSize = -1);
NetworkAccessManager(QObject *parent, const Config *config);
protected:
bool m_ignoreSslErrors;

View File

@ -92,8 +92,7 @@ Phantom::Phantom(QObject *parent)
m_scriptFileEnc.setEncoding(m_config.scriptEncoding());
// Provide WebPage with a non-standard Network Access Manager
m_netAccessMan = new NetworkAccessManager(this, m_config.diskCacheEnabled(),
m_config.cookieFile(), m_config.ignoreSslErrors(), m_config.authUser(), m_config.authPass(), m_config.maxDiskCacheSize());
m_netAccessMan = new NetworkAccessManager(this, &m_config);
m_page->setNetworkAccessManager(m_netAccessMan);
connect(m_page, SIGNAL(javaScriptConsoleMessageSent(QString, int, QString)),