mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-04-22 00:42:04 +02:00
Revert "Completely rip TomahawkSettings out of proxy code"
This reverts commit 36ef3a44204d772fb4d92bbf8ad73092013cd2a0. Conflicts: src/libtomahawk/utils/NetworkAccessManager.cpp
This commit is contained in:
parent
50de3c029d
commit
154ee5c70a
@ -23,12 +23,15 @@
|
||||
#include "NetworkProxyFactory.h"
|
||||
#include "utils/Logger.h"
|
||||
|
||||
// TODO: get rid of this here!
|
||||
#include "TomahawkSettings.h"
|
||||
|
||||
|
||||
#include <QMutex>
|
||||
#include <QStringList>
|
||||
#include <QThread>
|
||||
#include <QCoreApplication>
|
||||
#include <QNetworkConfiguration>
|
||||
#include <QNetworkAccessManager>
|
||||
|
||||
namespace Tomahawk
|
||||
{
|
||||
@ -54,7 +57,7 @@ NetworkProxyFactory::queryProxy( const QNetworkProxyQuery& query )
|
||||
s_noProxyHostsMutex.lock();
|
||||
if ( !hostname.isEmpty() && s_noProxyHosts.contains( hostname ) )
|
||||
proxies << QNetworkProxy::NoProxy << systemProxyForQuery( query );
|
||||
else if ( m_proxy.hostName().isEmpty() || proxyType() == QNetworkProxy::NoProxy )
|
||||
else if ( m_proxy.hostName().isEmpty() || TomahawkSettings::instance()->proxyType() == QNetworkProxy::NoProxy )
|
||||
proxies << systemProxyForQuery( query );
|
||||
else
|
||||
proxies << m_proxy << systemProxyForQuery( query );
|
||||
@ -84,7 +87,7 @@ NetworkProxyFactory::setNoProxyHosts( const QStringList& hosts )
|
||||
|
||||
|
||||
void
|
||||
NetworkProxyFactory::setProxy( const QNetworkProxy& proxy, bool useProxyDns )
|
||||
NetworkProxyFactory::setProxy( const QNetworkProxy& proxy )
|
||||
{
|
||||
m_proxyChanged = false;
|
||||
if ( m_proxy != proxy )
|
||||
@ -94,12 +97,12 @@ NetworkProxyFactory::setProxy( const QNetworkProxy& proxy, bool useProxyDns )
|
||||
QFlags< QNetworkProxy::Capability > proxyCaps;
|
||||
proxyCaps |= QNetworkProxy::TunnelingCapability;
|
||||
proxyCaps |= QNetworkProxy::ListeningCapability;
|
||||
if ( useProxyDns )
|
||||
if ( TomahawkSettings::instance()->proxyDns() )
|
||||
proxyCaps |= QNetworkProxy::HostNameLookupCapability;
|
||||
|
||||
m_proxy.setCapabilities( proxyCaps );
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "Proxy using host" << proxy.hostName() << "and port" << proxy.port();
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "setting proxy to use proxy DNS?" << useProxyDns;
|
||||
tDebug( LOGVERBOSE ) << Q_FUNC_INFO << "setting proxy to use proxy DNS?" << (TomahawkSettings::instance()->proxyDns() ? "true" : "false");
|
||||
}
|
||||
|
||||
|
||||
@ -239,25 +242,25 @@ setNam( QNetworkAccessManager* nam, bool noMutexLocker )
|
||||
{
|
||||
tDebug( LOGVERBOSE ) << "creating initial gui thread (" << QCoreApplication::instance()->thread() << ") nam";
|
||||
// Should only get here on first initialization of the nam
|
||||
|
||||
TomahawkSettings *s = TomahawkSettings::instance();
|
||||
NetworkProxyFactory* proxyFactory = new NetworkProxyFactory();
|
||||
if ( proxyType() != QNetworkProxy::NoProxy && !proxyHost().isEmpty() )
|
||||
if ( s->proxyType() != QNetworkProxy::NoProxy && !s->proxyHost().isEmpty() )
|
||||
{
|
||||
tDebug( LOGVERBOSE ) << "Setting proxy to saved values";
|
||||
QNetworkProxy proxy( proxyType(), proxyHost(), proxyPort(), proxyUsername(), proxyPassword() );
|
||||
proxyFactory->setProxy( proxy, proxyDns() );
|
||||
QNetworkProxy proxy( s->proxyType(), s->proxyHost(), s->proxyPort(), s->proxyUsername(), s->proxyPassword() );
|
||||
proxyFactory->setProxy( proxy );
|
||||
//FIXME: Jreen is broke without this
|
||||
//QNetworkProxy::setApplicationProxy( proxy );
|
||||
s_noProxyHostsMutex.lock();
|
||||
if ( !proxyNoProxyHosts().isEmpty() && s_noProxyHosts.isEmpty() )
|
||||
if ( !s->proxyNoProxyHosts().isEmpty() && s_noProxyHosts.isEmpty() )
|
||||
{
|
||||
s_noProxyHostsMutex.unlock();
|
||||
proxyFactory->setNoProxyHosts( proxyNoProxyHosts().split( ',', QString::SkipEmptyParts ) );
|
||||
proxyFactory->setNoProxyHosts( s->proxyNoProxyHosts().split( ',', QString::SkipEmptyParts ) );
|
||||
}
|
||||
else
|
||||
s_noProxyHostsMutex.unlock();
|
||||
}
|
||||
|
||||
|
||||
QNetworkProxyFactory::setApplicationProxyFactory( proxyFactory );
|
||||
nam->setProxyFactory( proxyFactory );
|
||||
s_threadNamHash[ QThread::currentThread() ] = nam;
|
||||
@ -271,112 +274,5 @@ setNam( QNetworkAccessManager* nam, bool noMutexLocker )
|
||||
setProxyFactory( dynamic_cast< NetworkProxyFactory* >( nam->proxyFactory() ), true );
|
||||
}
|
||||
|
||||
|
||||
static bool s_proxyDns;
|
||||
static QNetworkProxy::ProxyType s_proxyType;
|
||||
static QString s_proxyHost;
|
||||
static int s_proxyPort;
|
||||
static QString s_proxyUsername;
|
||||
static QString s_proxyPassword;
|
||||
static QString s_proxyNoProxyHosts;
|
||||
|
||||
QString
|
||||
proxyHost()
|
||||
{
|
||||
return s_proxyHost;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyHost( const QString& host )
|
||||
{
|
||||
s_proxyHost = host;
|
||||
}
|
||||
|
||||
|
||||
QString
|
||||
proxyNoProxyHosts()
|
||||
{
|
||||
return s_proxyNoProxyHosts;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyNoProxyHosts( const QString& hosts )
|
||||
{
|
||||
s_proxyNoProxyHosts = hosts;
|
||||
}
|
||||
|
||||
|
||||
qulonglong
|
||||
proxyPort()
|
||||
{
|
||||
return s_proxyPort;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyPort( const qulonglong port )
|
||||
{
|
||||
s_proxyPort = port;
|
||||
}
|
||||
|
||||
|
||||
QString
|
||||
proxyUsername()
|
||||
{
|
||||
return s_proxyUsername;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyUsername( const QString& username )
|
||||
{
|
||||
s_proxyUsername = username;
|
||||
}
|
||||
|
||||
|
||||
QString
|
||||
proxyPassword()
|
||||
{
|
||||
return s_proxyPassword;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyPassword( const QString& password )
|
||||
{
|
||||
s_proxyPassword = password;
|
||||
}
|
||||
|
||||
|
||||
QNetworkProxy::ProxyType
|
||||
proxyType()
|
||||
{
|
||||
return s_proxyType;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyType( const QNetworkProxy::ProxyType type )
|
||||
{
|
||||
s_proxyType = type;
|
||||
}
|
||||
|
||||
|
||||
bool
|
||||
proxyDns()
|
||||
{
|
||||
return s_proxyDns;
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
setProxyDns( bool proxyDns )
|
||||
{
|
||||
s_proxyDns = proxyDns;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -22,9 +22,6 @@
|
||||
#ifndef TOMAHAWK_UTILS_NETWORKACCESSMANAGER_H
|
||||
#define TOMAHAWK_UTILS_NETWORKACCESSMANAGER_H
|
||||
|
||||
|
||||
#include <QNetworkProxy>
|
||||
|
||||
#include "DllMacro.h"
|
||||
|
||||
class QNetworkAccessManager;
|
||||
@ -35,28 +32,6 @@ namespace Utils
|
||||
{
|
||||
DLLEXPORT QNetworkAccessManager* nam();
|
||||
DLLEXPORT void setNam( QNetworkAccessManager* nam, bool noMutexLocker = false );
|
||||
|
||||
// Proxy settings
|
||||
DLLEXPORT bool proxyDns();
|
||||
DLLEXPORT void setProxyDns( bool proxyDns );
|
||||
|
||||
DLLEXPORT QNetworkProxy::ProxyType proxyType();
|
||||
DLLEXPORT void setProxyType( QNetworkProxy::ProxyType proxyType );
|
||||
|
||||
DLLEXPORT QString proxyHost();
|
||||
DLLEXPORT void setProxyHost( const QString& proxyHost );
|
||||
|
||||
DLLEXPORT qulonglong proxyPort();
|
||||
DLLEXPORT void setProxyPort( qulonglong proxyPort );
|
||||
|
||||
DLLEXPORT QString proxyUsername();
|
||||
DLLEXPORT void setProxyUsername( const QString& proxyUsername );
|
||||
|
||||
DLLEXPORT QString proxyPassword();
|
||||
DLLEXPORT void setProxyPassword( const QString& proxyPassword );
|
||||
|
||||
DLLEXPORT QString proxyNoProxyHosts();
|
||||
DLLEXPORT void setProxyNoProxyHosts( const QString& proxyNoProxyHosts );
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -46,7 +46,7 @@ namespace Utils
|
||||
|
||||
virtual void setNoProxyHosts( const QStringList &hosts );
|
||||
virtual QStringList noProxyHosts() const { return m_noProxyHosts; }
|
||||
virtual void setProxy( const QNetworkProxy &proxy, bool useProxyDns );
|
||||
virtual void setProxy( const QNetworkProxy &proxy );
|
||||
virtual QNetworkProxy proxy() { return m_proxy; }
|
||||
|
||||
virtual NetworkProxyFactory& operator=( const NetworkProxyFactory &rhs );
|
||||
|
@ -296,12 +296,12 @@ SettingsDialog::saveSettings()
|
||||
if ( !m_advancedWidgetUi->enableProxyCheckBox->isChecked() )
|
||||
{
|
||||
tDebug() << Q_FUNC_INFO << "Got NoProxy selected";
|
||||
proxyFactory->setProxy( QNetworkProxy::NoProxy, s->proxyDns() );
|
||||
proxyFactory->setProxy( QNetworkProxy::NoProxy );
|
||||
}
|
||||
else
|
||||
{
|
||||
tDebug() << Q_FUNC_INFO << "Got Socks5Proxy selected";
|
||||
proxyFactory->setProxy( QNetworkProxy( QNetworkProxy::Socks5Proxy, s->proxyHost(), s->proxyPort(), s->proxyUsername(), s->proxyPassword() ), s->proxyDns() );
|
||||
proxyFactory->setProxy( QNetworkProxy( QNetworkProxy::Socks5Proxy, s->proxyHost(), s->proxyPort(), s->proxyUsername(), s->proxyPassword() ) );
|
||||
if ( !s->proxyNoProxyHosts().isEmpty() )
|
||||
{
|
||||
tDebug() << Q_FUNC_INFO << "noproxy hosts:" << s->proxyNoProxyHosts();
|
||||
|
@ -198,16 +198,6 @@ TomahawkApp::init()
|
||||
new ACLRegistryImpl( this );
|
||||
|
||||
tDebug( LOGINFO ) << "Setting NAM.";
|
||||
|
||||
TomahawkSettings *s = TomahawkSettings::instance();
|
||||
Tomahawk::Utils::setProxyDns( s->proxyDns() );
|
||||
Tomahawk::Utils::setProxyType( s->proxyType() );
|
||||
Tomahawk::Utils::setProxyHost( s->proxyHost() );
|
||||
Tomahawk::Utils::setProxyPort( s->proxyPort() );
|
||||
Tomahawk::Utils::setProxyUsername( s->proxyUsername() );
|
||||
Tomahawk::Utils::setProxyPassword( s->proxyPassword() );
|
||||
Tomahawk::Utils::setProxyNoProxyHosts( s->proxyNoProxyHosts() );
|
||||
|
||||
// Cause the creation of the nam, but don't need to address it directly, so prevent warning
|
||||
Q_UNUSED( Tomahawk::Utils::nam() );
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user