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