File indexing completed on 2024-04-21 04:00:04
0001 /* 0002 SPDX-FileCopyrightText: Pranav Gade <pranavgade20@gmail.com> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #include "ovspatchsetting.h" 0008 #include "ovspatchsetting_p.h" 0009 0010 #include <QDebug> 0011 0012 #if !NM_CHECK_VERSION(1, 10, 0) 0013 #define NM_SETTING_OVS_PATCH_SETTING_NAME "ovs-patch" 0014 #define NM_SETTING_OVS_PATCH_PEER "peer" 0015 #endif 0016 0017 NetworkManager::OvsPatchSettingPrivate::OvsPatchSettingPrivate() 0018 : name(NM_SETTING_OVS_PATCH_SETTING_NAME) 0019 { 0020 } 0021 0022 NetworkManager::OvsPatchSetting::OvsPatchSetting() 0023 : Setting(Setting::OvsPatch) 0024 , d_ptr(new OvsPatchSettingPrivate()) 0025 { 0026 } 0027 0028 NetworkManager::OvsPatchSetting::OvsPatchSetting(const Ptr &other) 0029 : Setting(other) 0030 , d_ptr(new OvsPatchSettingPrivate()) 0031 { 0032 setPeer(other->peer()); 0033 } 0034 0035 NetworkManager::OvsPatchSetting::~OvsPatchSetting() 0036 { 0037 delete d_ptr; 0038 } 0039 0040 QString NetworkManager::OvsPatchSetting::name() const 0041 { 0042 Q_D(const OvsPatchSetting); 0043 0044 return d->name; 0045 } 0046 0047 void NetworkManager::OvsPatchSetting::setPeer(const QString &peer) 0048 { 0049 Q_D(OvsPatchSetting); 0050 0051 d->peer = peer; 0052 } 0053 0054 QString NetworkManager::OvsPatchSetting::peer() const 0055 { 0056 Q_D(const OvsPatchSetting); 0057 0058 return d->peer; 0059 } 0060 0061 void NetworkManager::OvsPatchSetting::fromMap(const QVariantMap &setting) 0062 { 0063 if (setting.contains(QLatin1String(NM_SETTING_OVS_PATCH_PEER))) { 0064 setPeer(setting.value(QLatin1String(NM_SETTING_OVS_PATCH_PEER)).toString()); 0065 } 0066 } 0067 0068 QVariantMap NetworkManager::OvsPatchSetting::toMap() const 0069 { 0070 QVariantMap setting; 0071 0072 if (!peer().isEmpty()) { 0073 setting.insert(QLatin1String(NM_SETTING_OVS_PATCH_PEER), peer()); 0074 } 0075 0076 return setting; 0077 } 0078 0079 QDebug NetworkManager::operator<<(QDebug dbg, const NetworkManager::OvsPatchSetting &setting) 0080 { 0081 dbg.nospace() << "type: " << setting.typeAsString(setting.type()) << '\n'; 0082 dbg.nospace() << "initialized: " << !setting.isNull() << '\n'; 0083 0084 dbg.nospace() << NM_SETTING_OVS_PATCH_PEER << ": " << setting.peer() << '\n'; 0085 0086 return dbg.maybeSpace(); 0087 }