summaryrefslogtreecommitdiff
path: root/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
diff options
context:
space:
mode:
authorJean Gressmann <jean.gressmann@nokia.com>2012-04-18 19:45:50 +0200
committerQt by Nokia <qt-info@nokia.com>2012-04-20 05:57:59 +0200
commit65a85f6f49f3ff305cb3517151ba0addc28aa374 (patch)
tree062b8a9e6d1a295bfee4b091106f2cb2b6ea0ae1 /src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
parent729fa78e7b16830fd3128786b994c66d8dbfe157 (diff)
downloadqtlocation-65a85f6f49f3ff305cb3517151ba0addc28aa374.tar.gz
QtLocation, Nokia plugin: Pass app_id and token to routing service
The new service endpoint supports passing app_id/token instead of the referer/token method used by the previous routing service. Now all services implemented in the N[Bokia plugin pass along the plugin's app_id and token parameters. Change-Id: I8838b31e70cb2df2c05195724015713f88d767f1 Reviewed-by: Cristian Adam <cristian.adam@nokia.com> Reviewed-by: Alex <alex.blasche@nokia.com>
Diffstat (limited to 'src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp')
-rw-r--r--src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp53
1 files changed, 25 insertions, 28 deletions
diff --git a/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp b/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
index db37668b..ae8b7ef0 100644
--- a/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
+++ b/src/plugins/geoservices/nokia/qgeoroutingmanagerengine_nokia.cpp
@@ -58,19 +58,17 @@
QT_BEGIN_NAMESPACE
QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString, QVariant> &parameters, QGeoServiceProvider::Error *error, QString *errorString)
- : QGeoRoutingManagerEngine(parameters),
- m_host("route.nlp.nokia.com"),
- m_token(QGeoServiceProviderFactoryNokia::defaultToken),
- m_referer(QGeoServiceProviderFactoryNokia::defaultReferer)
+ : QGeoRoutingManagerEngine(parameters)
+ , m_host(QStringLiteral("route.nlp.nokia.com"))
{
m_networkManager = new QNetworkAccessManager(this);
- if (parameters.contains("proxy") || parameters.contains("routing.proxy")) {
+ if (parameters.contains(QStringLiteral("proxy")) || parameters.contains(QStringLiteral("routing.proxy"))) {
QString proxy = parameters.value("proxy").toString();
if (proxy.isEmpty())
- proxy = parameters.value("routing.proxy").toString();
+ proxy = parameters.value(QStringLiteral("routing.proxy")).toString();
- if (!proxy.isEmpty() && proxy.toLower() != QLatin1String("system")) {
+ if (!proxy.isEmpty() && proxy.toLower() != QStringLiteral("system")) {
QUrl proxyUrl(proxy);
if (proxyUrl.isValid()) {
m_networkManager->setProxy(QNetworkProxy(QNetworkProxy::HttpProxy,
@@ -85,18 +83,14 @@ QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString,
}
}
- if (parameters.contains("routing.host")) {
- QString host = parameters.value("routing.host").toString();
+ if (parameters.contains(QStringLiteral("routing.host"))) {
+ QString host = parameters.value(QStringLiteral("routing.host")).toString();
if (!host.isEmpty())
m_host = host;
}
- // The navteq server doesn't support app_id and token
- /*
- if (parameters.contains("token")) {
- m_token = parameters.value("token").toString();
- }
- */
+ m_appId = parameters.value(QStringLiteral("app_id")).toString();
+ m_token = parameters.value(QStringLiteral("token")).toString();
QGeoRouteRequest::FeatureTypes featureTypes;
featureTypes |= QGeoRouteRequest::TollFeature;
@@ -137,7 +131,7 @@ QGeoRoutingManagerEngineNokia::QGeoRoutingManagerEngineNokia(const QMap<QString,
*error = QGeoServiceProvider::NoError;
if (errorString)
- *errorString = "";
+ *errorString = QString();
}
QGeoRoutingManagerEngineNokia::~QGeoRoutingManagerEngineNokia() {}
@@ -245,33 +239,36 @@ QString QGeoRoutingManagerEngineNokia::calculateRouteRequestString(const QGeoRou
bool supported = checkEngineSupport(request, request.travelModes());
if (!supported)
- return "";
+ return QString();
- QString requestString = "http://";
+ QString requestString = QStringLiteral("http://");
requestString += m_host;
- requestString += "/routing/6.2/calculateroute.xml?referer=" + m_referer;
+ requestString += QStringLiteral("/routing/6.2/calculateroute.xml");
+
+ requestString += QStringLiteral("?alternatives=");
+ requestString += QString::number(request.numberAlternativeRoutes());
- if (!m_token.isNull())
- requestString += "&token=" + m_token;
+ if (!m_appId.isEmpty() && !m_token.isEmpty()) {
+ requestString += QStringLiteral("&app_id=");
+ requestString += m_appId;
+ requestString += QStringLiteral("&token=");
+ requestString += m_token;
+ }
int numWaypoints = request.waypoints().size();
if (numWaypoints < 2)
- return "";
+ return QString();
for (int i = 0;i < numWaypoints;++i) {
- requestString += "&waypoint";
+ requestString += QStringLiteral("&waypoint");
requestString += QString::number(i);
- requestString += "=geo!";
+ requestString += QStringLiteral("=geo!");
requestString += trimDouble(request.waypoints().at(i).latitude());
requestString += ",";
requestString += trimDouble(request.waypoints().at(i).longitude());
}
requestString += modesRequestString(request, request.travelModes());
-
- requestString += "&alternatives=";
- requestString += QString::number(request.numberAlternativeRoutes());
-
requestString += routeRequestString(request);
return requestString;