File indexing completed on 2024-05-05 16:20:41
0001 /* 0002 SPDX-FileCopyrightText: 2014 Jan Grulich <jgrulich@redhat.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_FAKE_NETWORK_SETTINGS_ACTIVE_CONNECTION_H 0008 #define NETWORKMANAGERQT_FAKE_NETWORK_SETTINGS_ACTIVE_CONNECTION_H 0009 0010 #include <QObject> 0011 0012 #include <QDBusObjectPath> 0013 0014 #include "../device.h" 0015 0016 #include "device.h" 0017 0018 class ActiveConnection : public QObject 0019 { 0020 Q_OBJECT 0021 Q_CLASSINFO("D-Bus Interface", "org.kde.fakenetwork.Connection.Active") 0022 public: 0023 explicit ActiveConnection(QObject *parent = nullptr); 0024 ~ActiveConnection() override; 0025 0026 Q_PROPERTY(QDBusObjectPath Connection READ connection) 0027 Q_PROPERTY(bool Default READ default4) 0028 Q_PROPERTY(bool Default6 READ default6) 0029 Q_PROPERTY(QList<QDBusObjectPath> Devices READ devices) 0030 Q_PROPERTY(QDBusObjectPath Dhcp4Config READ dhcp4Config) 0031 Q_PROPERTY(QDBusObjectPath Dhcp6Config READ dhcp6Config) 0032 Q_PROPERTY(QDBusObjectPath Ip4Config READ ip4Config) 0033 Q_PROPERTY(QDBusObjectPath Ip6Config READ ip6Config) 0034 Q_PROPERTY(QDBusObjectPath Master READ master) 0035 Q_PROPERTY(QDBusObjectPath SpecificObject READ specificObject) 0036 Q_PROPERTY(uint State READ state) 0037 Q_PROPERTY(QString Id READ id) 0038 Q_PROPERTY(QString Uuid READ uuid) 0039 Q_PROPERTY(QString Type READ type) 0040 Q_PROPERTY(bool Vpn READ vpn) 0041 0042 QDBusObjectPath connection() const; 0043 bool default4() const; 0044 bool default6() const; 0045 QList<QDBusObjectPath> devices() const; 0046 QDBusObjectPath dhcp4Config() const; 0047 QDBusObjectPath dhcp6Config() const; 0048 QDBusObjectPath ip4Config() const; 0049 QDBusObjectPath ip6Config() const; 0050 QDBusObjectPath master() const; 0051 QDBusObjectPath specificObject() const; 0052 uint state() const; 0053 QString id() const; 0054 QString uuid() const; 0055 QString type() const; 0056 bool vpn() const; 0057 0058 /* Not part of DBus interface */ 0059 void addDevice(const QDBusObjectPath &path); 0060 void removeDevice(const QDBusObjectPath &device); 0061 QString activeConnectionPath() const; 0062 void setActiveConnectionPath(const QString &path); 0063 void setConnection(const QDBusObjectPath &connection); 0064 void setDefault4(bool default4); 0065 void setDefault6(bool default6); 0066 void setDhcp4Config(const QDBusObjectPath &dhcp4Config); 0067 void setDhcp6Config(const QDBusObjectPath &dhcp6Config); 0068 void setIpv4Config(const QDBusObjectPath &ipv4Config); 0069 void setIpv6Config(const QDBusObjectPath &ipv6Config); 0070 void setMaster(const QDBusObjectPath &master); 0071 void setSpecificObject(const QDBusObjectPath &specificObject); 0072 void setState(uint state); 0073 void setId(const QString &id); 0074 void setUuid(const QString &uuid); 0075 void setType(const QString &type); 0076 0077 Q_SIGNALS: 0078 Q_SCRIPTABLE void PropertiesChanged(const QVariantMap &properties); 0079 Q_SCRIPTABLE void StateChanged(uint state, uint reason); 0080 0081 private: 0082 QDBusObjectPath m_connection; 0083 bool m_default4; 0084 bool m_default6; 0085 QList<QDBusObjectPath> m_devices; 0086 QDBusObjectPath m_dhcp4Config; 0087 QDBusObjectPath m_dhcp6Config; 0088 QDBusObjectPath m_ip4Config; 0089 QDBusObjectPath m_ip6Config; 0090 QDBusObjectPath m_master; 0091 QDBusObjectPath m_specificObject; 0092 uint m_state; 0093 QString m_id; 0094 QString m_uuid; 0095 QString m_type; 0096 bool m_vpn; 0097 0098 /* Not part of DBus interface */ 0099 QString m_activeConnectionPath; 0100 }; 0101 0102 #endif