diff options
author | Jean Gressmann <jean.gressmann@nokia.com> | 2012-04-24 16:53:30 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-04-27 06:25:24 +0200 |
commit | 0f4b0b96a1ea36be198e1a5daa145fd50e7c5530 (patch) | |
tree | c58833ea665c0f214c657d09e82f56659f4a9bf8 /src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp | |
parent | 3fa23135e0271f4f34a276082d3b902e4533aa0f (diff) | |
download | qtlocation-0f4b0b96a1ea36be198e1a5daa145fd50e7c5530.tar.gz |
Wrap network access to enable testing in Nokia plugin
This enables subsequent testing of the stack (from C++) without being
connected to the network.
Change-Id: I55ad5ece9c323ec82a493d059f1418f68169c5e6
Task-number: QTBUG-25416
Reviewed-by: Alex Wilson <alex.wilson@nokia.com>
Diffstat (limited to 'src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp')
-rw-r--r-- | src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp b/src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp index b23f313c..43cbb8fc 100644 --- a/src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp +++ b/src/plugins/geoservices/nokia/qgeoserviceproviderplugin_nokia.cpp @@ -53,12 +53,14 @@ #include "qgeotiledmappingmanagerengine_nokia.h" #include "qplacemanagerengine_nokiav1.h" #include "qplacemanagerengine_nokiav2.h" +#include "qgeointrinsicnetworkaccessmanager.h" #include <QtPlugin> #include <QNetworkProxy> QT_BEGIN_NAMESPACE + QGeoServiceProviderFactoryNokia::QGeoServiceProviderFactoryNokia() : m_informedAboutUsageTerms(false) {} @@ -71,7 +73,10 @@ QGeocodingManagerEngine* QGeoServiceProviderFactoryNokia::createGeocodingManager { informOnceAboutUsageTermsIfNecessary(parameters); - return new QGeocodingManagerEngineNokia(parameters, error, errorString); + QGeoIntrinsicNetworkAccessManager* networkManager = new QGeoIntrinsicNetworkAccessManager(); + networkManager->configure(parameters); + + return new QGeocodingManagerEngineNokia(networkManager, parameters, error, errorString); } QGeoMappingManagerEngine* QGeoServiceProviderFactoryNokia::createMappingManagerEngine(const QMap<QString, QVariant> ¶meters, @@ -80,7 +85,11 @@ QGeoMappingManagerEngine* QGeoServiceProviderFactoryNokia::createMappingManagerE { informOnceAboutUsageTermsIfNecessary(parameters); - return new QGeoTiledMappingManagerEngineNokia(parameters, error, errorString); + QGeoIntrinsicNetworkAccessManager* networkManager = new QGeoIntrinsicNetworkAccessManager(); + networkManager->setCustomProxyToken(QStringLiteral("mapping.proxy")); + networkManager->configure(parameters); + + return new QGeoTiledMappingManagerEngineNokia(networkManager, parameters, error, errorString); } QGeoRoutingManagerEngine* QGeoServiceProviderFactoryNokia::createRoutingManagerEngine(const QMap<QString, QVariant> ¶meters, @@ -89,7 +98,11 @@ QGeoRoutingManagerEngine* QGeoServiceProviderFactoryNokia::createRoutingManagerE { informOnceAboutUsageTermsIfNecessary(parameters); - return new QGeoRoutingManagerEngineNokia(parameters, error, errorString); + QGeoIntrinsicNetworkAccessManager* networkManager = new QGeoIntrinsicNetworkAccessManager(); + networkManager->setCustomProxyToken(QStringLiteral("routing.proxy")); + networkManager->configure(parameters); + + return new QGeoRoutingManagerEngineNokia(networkManager, parameters, error, errorString); } QPlaceManagerEngine *QGeoServiceProviderFactoryNokia::createPlaceManagerEngine(const QMap<QString, QVariant> ¶meters, @@ -98,11 +111,15 @@ QPlaceManagerEngine *QGeoServiceProviderFactoryNokia::createPlaceManagerEngine(c { informOnceAboutUsageTermsIfNecessary(parameters); + QGeoIntrinsicNetworkAccessManager* networkManager = new QGeoIntrinsicNetworkAccessManager(); + networkManager->setCustomProxyToken(QStringLiteral("places.proxy")); + networkManager->configure(parameters); + switch (parameters.value(QLatin1String("places.api_version"), 2).toUInt()) { case 1: - return new QPlaceManagerEngineNokiaV1(parameters, error, errorString); + return new QPlaceManagerEngineNokiaV1(networkManager, parameters, error, errorString); case 2: - return new QPlaceManagerEngineNokiaV2(parameters, error, errorString); + return new QPlaceManagerEngineNokiaV2(networkManager, parameters, error, errorString); } return 0; |