1/*
2 SPDX-FileCopyrightText: 2018 Pranav Gade <pranavgade20@gmail.com>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6
7#ifndef NETWORKMANAGERQT_OVS_BRIDGE_SETTING_H
8#define NETWORKMANAGERQT_OVS_BRIDGE_SETTING_H
9
10#include "setting.h"
11#include <networkmanagerqt/networkmanagerqt_export.h>
12
13#include <QString>
14
15namespace NetworkManager
16{
17class OvsBridgeSettingPrivate;
18
19/**
20 * Represents ovs-bridge setting
21 */
22class NETWORKMANAGERQT_EXPORT OvsBridgeSetting : public Setting
23{
24public:
25 typedef QSharedPointer<OvsBridgeSetting> Ptr;
26 typedef QList<Ptr> List;
27
28 OvsBridgeSetting();
29 explicit OvsBridgeSetting(const Ptr &other);
30 ~OvsBridgeSetting() override;
31
32 QString name() const override;
33
34 void setMcastSnoopingEnable(bool mcastSnoopingEnable);
35 bool mcastSnoopingEnable() const;
36
37 void setRstpEnable(bool rstpEnable);
38 bool rstpEnable() const;
39
40 void setStpEnable(bool stpEnable);
41 bool stpEnable() const;
42
43 void setFailMode(const QString &mode);
44 QString failMode() const;
45
46 void fromMap(const QVariantMap &setting) override;
47
48 QVariantMap toMap() const override;
49
50protected:
51 OvsBridgeSettingPrivate *d_ptr;
52
53private:
54 Q_DECLARE_PRIVATE(OvsBridgeSetting)
55};
56
57NETWORKMANAGERQT_EXPORT QDebug operator<<(QDebug dbg, const OvsBridgeSetting &setting);
58
59}
60
61#endif // NETWORKMANAGERQT_OVS_BRIDGE_SETTING_H
62

source code of networkmanager-qt/src/settings/ovsbridgesetting.h