File indexing completed on 2024-04-21 15:06:22

0001 /*
0002     SPDX-FileCopyrightText: 2012-2013 Jan Grulich <jgrulich@redhat.com>
0003     SPDX-FileCopyrightText: 2013 Daniel Nicoletti <dantti12@gmail.com>
0004 
0005     SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0006 */
0007 
0008 #include "wimaxsetting.h"
0009 #include "wimaxsetting_p.h"
0010 
0011 #include <QDebug>
0012 
0013 NetworkManager::WimaxSettingPrivate::WimaxSettingPrivate()
0014     : name(NM_SETTING_WIMAX_SETTING_NAME)
0015 {
0016 }
0017 
0018 NetworkManager::WimaxSetting::WimaxSetting()
0019     : Setting(Setting::Wimax)
0020     , d_ptr(new WimaxSettingPrivate())
0021 {
0022 }
0023 
0024 NetworkManager::WimaxSetting::WimaxSetting(const Ptr &other)
0025     : Setting(other)
0026     , d_ptr(new WimaxSettingPrivate())
0027 {
0028     setNetworkName(other->networkName());
0029     setMacAddress(other->macAddress());
0030 }
0031 
0032 NetworkManager::WimaxSetting::~WimaxSetting()
0033 {
0034     delete d_ptr;
0035 }
0036 
0037 QString NetworkManager::WimaxSetting::name() const
0038 {
0039     Q_D(const WimaxSetting);
0040 
0041     return d->name;
0042 }
0043 
0044 void NetworkManager::WimaxSetting::setNetworkName(const QString &name)
0045 {
0046     Q_D(WimaxSetting);
0047 
0048     d->networkName = name;
0049 }
0050 
0051 QString NetworkManager::WimaxSetting::networkName() const
0052 {
0053     Q_D(const WimaxSetting);
0054 
0055     return d->networkName;
0056 }
0057 
0058 void NetworkManager::WimaxSetting::setMacAddress(const QByteArray &address)
0059 {
0060     Q_D(WimaxSetting);
0061 
0062     d->macAddress = address;
0063 }
0064 
0065 QByteArray NetworkManager::WimaxSetting::macAddress() const
0066 {
0067     Q_D(const WimaxSetting);
0068 
0069     return d->macAddress;
0070 }
0071 
0072 void NetworkManager::WimaxSetting::fromMap(const QVariantMap &setting)
0073 {
0074     if (setting.contains(QLatin1String(NM_SETTING_WIMAX_NETWORK_NAME))) {
0075         setNetworkName(setting.value(QLatin1String(NM_SETTING_WIMAX_NETWORK_NAME)).toString());
0076     }
0077 
0078     if (setting.contains(QLatin1String(NM_SETTING_WIMAX_MAC_ADDRESS))) {
0079         setMacAddress(setting.value(QLatin1String(NM_SETTING_WIMAX_MAC_ADDRESS)).toByteArray());
0080     }
0081 }
0082 
0083 QVariantMap NetworkManager::WimaxSetting::toMap() const
0084 {
0085     QVariantMap setting;
0086 
0087     if (!networkName().isEmpty()) {
0088         setting.insert(QLatin1String(NM_SETTING_WIMAX_NETWORK_NAME), networkName());
0089     }
0090 
0091     if (!macAddress().isEmpty()) {
0092         setting.insert(QLatin1String(NM_SETTING_WIMAX_MAC_ADDRESS), macAddress());
0093     }
0094 
0095     return setting;
0096 }
0097 
0098 QDebug NetworkManager::operator<<(QDebug dbg, const NetworkManager::WimaxSetting &setting)
0099 {
0100     dbg.nospace() << "type: " << setting.typeAsString(setting.type()) << '\n';
0101     dbg.nospace() << "initialized: " << !setting.isNull() << '\n';
0102 
0103     dbg.nospace() << NM_SETTING_WIMAX_NETWORK_NAME << ": " << setting.networkName() << '\n';
0104     dbg.nospace() << NM_SETTING_WIMAX_MAC_ADDRESS << ": " << setting.macAddress() << '\n';
0105 
0106     return dbg.maybeSpace();
0107 }