[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [networkmanagement] backends/NetworkManager/settings: Fix
From: Gökçen_Eraslan <gokcen () pardus ! org ! tr>
Date: 2011-08-10 9:09:14
Message-ID: 20110810090914.F1396A60AE () git ! kde ! org
[Download RAW message or body]
Git commit 6e9dcec7904fabc213ae7e3b29e4b2209a989cc6 by Gökçen Eraslan.
Committed on 10/08/2011 at 13:59.
Pushed by gokcen into branch 'master'.
Fix loading/saving of VPN connections
M +21 -4 backends/NetworkManager/settings/vpndbus.cpp
http://commits.kde.org/networkmanagement/6e9dcec7904fabc213ae7e3b29e4b2209a989cc6
diff --git a/backends/NetworkManager/settings/vpndbus.cpp b/backends/NetworkManager/settings/vpndbus.cpp
index ae2be68..c07327f 100644
--- a/backends/NetworkManager/settings/vpndbus.cpp
+++ b/backends/NetworkManager/settings/vpndbus.cpp
@@ -1,12 +1,14 @@
// This file is generated by kconfig_compiler from vpn.kcfg.
// All changes you do to this file will be lost.
-#include "vpndbus.h"
+#include <QDBusMetaType>
+#include "vpndbus.h"
#include "vpn.h"
VpnDbus::VpnDbus(Knm::VpnSetting * setting) : SettingDbus(setting)
{
+ qDBusRegisterMetaType<QStringMap>();
}
VpnDbus::~VpnDbus()
@@ -20,14 +22,25 @@ void VpnDbus::fromMap(const QVariantMap & map)
setting->setServiceType(map.value(QLatin1String(NM_SETTING_VPN_SERVICE_TYPE)).value<QString>());
}
if (map.contains(QLatin1String(NM_SETTING_VPN_DATA))) {
- setting->setData(map.value(QLatin1String(NM_SETTING_VPN_DATA)).value<QStringMap>());
+ if (map.value(QLatin1String(NM_SETTING_VPN_DATA)).canConvert< QDBusArgument>()) {
+ QDBusArgument dataArg = map.value(QLatin1String(NM_SETTING_VPN_DATA)).value<QDBusArgument>();
+ setting->setData(qdbus_cast<QStringMap>(dataArg));
+ } else {
+ setting->setData(map.value(QLatin1String(NM_SETTING_VPN_DATA)).value<QStringMap>());
+ }
}
if (map.contains(QLatin1String(NM_SETTING_VPN_USER_NAME))) {
setting->setUserName(map.value(QLatin1String(NM_SETTING_VPN_USER_NAME)).value<QString>());
}
+
// SECRET
if (map.contains(QLatin1String(NM_SETTING_VPN_SECRETS))) {
- setting->setVpnSecrets(map.value(QLatin1String(NM_SETTING_VPN_SECRETS)).value<QVariantMap>());
+ if (map.value(QLatin1String(NM_SETTING_VPN_SECRETS)).canConvert< QDBusArgument>()) {
+ QDBusArgument secretArg = map.value(QLatin1String(NM_SETTING_VPN_SECRETS)).value<QDBusArgument>();
+ setting->setVpnSecrets(qdbus_cast<QVariantMap>(secretArg));
+ } else {
+ setting->setVpnSecrets(map.value(QLatin1String(NM_SETTING_VPN_SECRETS)).value<QVariantMap>());
+ }
}
}
@@ -35,12 +48,16 @@ QVariantMap VpnDbus::toMap()
{
QVariantMap map;
Knm::VpnSetting * setting = static_cast<Knm::VpnSetting *>(m_setting);
+
map.insert(QLatin1String(NM_SETTING_VPN_SERVICE_TYPE), setting->serviceType());
if (!setting->data().isEmpty())
map.insert(QLatin1String(NM_SETTING_VPN_DATA), QVariant::fromValue(setting->data()));
- map.insert(QLatin1String(NM_SETTING_VPN_SECRETS), QVariant::fromValue(QStringMap()));
+
+ map.insert(QLatin1String(NM_SETTING_VPN_SECRETS), QVariant::fromValue(setting->vpnSecrets()));
+
if (!setting->userName().isEmpty())
map.insert(QLatin1String(NM_SETTING_VPN_USER_NAME), setting->userName());
+
return map;
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic