File indexing completed on 2024-04-14 03:57:36
0001 /* 0002 SPDX-FileCopyrightText: 2018 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 #ifndef NETWORKMANAGERQT_OVS_BRIDGE_SETTING_H 0008 #define NETWORKMANAGERQT_OVS_BRIDGE_SETTING_H 0009 0010 #include "setting.h" 0011 #include <networkmanagerqt/networkmanagerqt_export.h> 0012 0013 #include <QString> 0014 0015 namespace NetworkManager 0016 { 0017 class OvsBridgeSettingPrivate; 0018 0019 /** 0020 * Represents ovs-bridge setting 0021 */ 0022 class NETWORKMANAGERQT_EXPORT OvsBridgeSetting : public Setting 0023 { 0024 public: 0025 typedef QSharedPointer<OvsBridgeSetting> Ptr; 0026 typedef QList<Ptr> List; 0027 0028 OvsBridgeSetting(); 0029 explicit OvsBridgeSetting(const Ptr &other); 0030 ~OvsBridgeSetting() override; 0031 0032 QString name() const override; 0033 0034 void setMcastSnoopingEnable(bool mcastSnoopingEnable); 0035 bool mcastSnoopingEnable() const; 0036 0037 void setRstpEnable(bool rstpEnable); 0038 bool rstpEnable() const; 0039 0040 void setStpEnable(bool stpEnable); 0041 bool stpEnable() const; 0042 0043 void setFailMode(const QString &mode); 0044 QString failMode() const; 0045 0046 void fromMap(const QVariantMap &setting) override; 0047 0048 QVariantMap toMap() const override; 0049 0050 protected: 0051 OvsBridgeSettingPrivate *d_ptr; 0052 0053 private: 0054 Q_DECLARE_PRIVATE(OvsBridgeSetting) 0055 }; 0056 0057 NETWORKMANAGERQT_EXPORT QDebug operator<<(QDebug dbg, const OvsBridgeSetting &setting); 0058 0059 } 0060 0061 #endif // NETWORKMANAGERQT_OVS_BRIDGE_SETTING_H