summaryrefslogtreecommitdiffstats
path: root/plugins/geoservices
diff options
context:
space:
mode:
authorDavid Laing <david.laing@nokia.com>2011-03-01 11:34:38 +1000
committerDavid Laing <david.laing@nokia.com>2011-03-01 11:34:38 +1000
commit1c1dfd1c4c1517c1a3a43f940d18198cb8b31b0f (patch)
tree9746636427dce1c8a95e4974bfc0b47d95ca7436 /plugins/geoservices
parent27815765ed427601ec317e97aa795c0ec14b1064 (diff)
Adds better proxy support for non-mapping managers in Nokia plugin.
A previous commit improved the functionality of the proxy parameter for the mapping manager in the Nokia plugin. This commit adds the same improvement to the routing and search managers.
Diffstat (limited to 'plugins/geoservices')
-rw-r--r--plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp13
-rw-r--r--plugins/geoservices/nokia/qgeosearchmanagerengine_nokia.cpp13
2 files changed, 22 insertions, 4 deletions
diff --git a/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp b/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
index e1d8047ac7..359ccd2649 100644
--- a/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
+++ b/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
@@ -51,6 +51,7 @@
#include <QStringList>
#include <QNetworkProxy>
+#include <QUrl>
#include <qgeoboundingbox.h>
QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString, QVariant> &parameters, QGeoServiceProvider::Error *error, QString *errorString)
@@ -63,8 +64,16 @@ QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString,
if (parameters.contains("routing.proxy")) {
QString proxy = parameters.value("routing.proxy").toString();
- if (!proxy.isEmpty())
- m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy, proxy, 8080));
+ if (!proxy.isEmpty()) {
+ QUrl proxyUrl(proxy);
+ if (proxyUrl.isValid()) {
+ m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
+ proxyUrl.host(),
+ proxyUrl.port(8080),
+ proxyUrl.userName(),
+ proxyUrl.password()));
+ }
+ }
}
if (parameters.contains("routing.host")) {
diff --git a/plugins/geoservices/nokia/qgeosearchmanagerengine_nokia.cpp b/plugins/geoservices/nokia/qgeosearchmanagerengine_nokia.cpp
index a02d1ee46b..c39fde60b4 100644
--- a/plugins/geoservices/nokia/qgeosearchmanagerengine_nokia.cpp
+++ b/plugins/geoservices/nokia/qgeosearchmanagerengine_nokia.cpp
@@ -53,6 +53,7 @@
#include <qgeoaddress.h>
#include <qgeocoordinate.h>
#include <QNetworkProxy>
+#include <QUrl>
#include <QMap>
QGeoSearchManagerEngineNokia::QGeoSearchManagerEngineNokia(const QMap<QString, QVariant> &parameters, QGeoServiceProvider::Error *error, QString *errorString)
@@ -65,8 +66,16 @@ QGeoSearchManagerEngineNokia::QGeoSearchManagerEngineNokia(const QMap<QString, Q
if (parameters.contains("places.proxy")) {
QString proxy = parameters.value("places.proxy").toString();
- if (!proxy.isEmpty())
- m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy, proxy, 8080));
+ if (!proxy.isEmpty()) {
+ QUrl proxyUrl(proxy);
+ if (proxyUrl.isValid()) {
+ m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
+ proxyUrl.host(),
+ proxyUrl.port(8080),
+ proxyUrl.userName(),
+ proxyUrl.password()));
+ }
+ }
}
if (parameters.contains("places.host")) {