File indexing completed on 2024-04-28 11:47:44
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_DEVICE_H 0008 #define NETWORKMANAGERQT_FAKE_NETWORK_DEVICE_H 0009 0010 #include <QObject> 0011 0012 #include <QDBusObjectPath> 0013 0014 #include "../device.h" 0015 #include "../generictypes.h" 0016 0017 class Device : public QObject 0018 { 0019 Q_OBJECT 0020 Q_CLASSINFO("D-Bus Interface", "org.kde.fakenetwork.Device") 0021 public: 0022 explicit Device(QObject *parent = nullptr); 0023 ~Device() override; 0024 0025 Q_PROPERTY(QDBusObjectPath ActiveConnection READ activeConnection) 0026 Q_PROPERTY(bool Autoconnect READ autoconnect WRITE setAutoconnect) 0027 Q_PROPERTY(QList<QDBusObjectPath> AvailableConnections READ availableConnections) 0028 Q_PROPERTY(uint Capabilities READ capabilities) 0029 Q_PROPERTY(uint DeviceType READ deviceType) 0030 Q_PROPERTY(QDBusObjectPath Dhcp4Config READ dhcp4Config) 0031 Q_PROPERTY(QDBusObjectPath Dhcp6Config READ dhcp6Config) 0032 Q_PROPERTY(QString Driver READ driver) 0033 Q_PROPERTY(QString DriverVersion READ driverVersion) 0034 Q_PROPERTY(bool FirmwareMissing READ firmwareMissing) 0035 Q_PROPERTY(QString FirmwareVersion READ firmwareVersion) 0036 Q_PROPERTY(QString Interface READ interface) 0037 Q_PROPERTY(int Ip4Address READ ip4Address) 0038 Q_PROPERTY(QDBusObjectPath Ip4Config READ ip4Config) 0039 Q_PROPERTY(QDBusObjectPath Ip6Config READ ip6Config) 0040 Q_PROPERTY(QString IpInterface READ ipInterface) 0041 Q_PROPERTY(bool Managed READ managed) 0042 Q_PROPERTY(uint Mtu READ mtu) 0043 Q_PROPERTY(uint State READ state) 0044 Q_PROPERTY(DeviceDBusStateReason StateReason READ stateReason) 0045 Q_PROPERTY(QString Udi READ udi) 0046 0047 QDBusObjectPath activeConnection() const; 0048 bool autoconnect() const; 0049 void setAutoconnect(bool autoconnect); 0050 QList<QDBusObjectPath> availableConnections() const; 0051 uint capabilities() const; 0052 uint deviceType() const; 0053 QDBusObjectPath dhcp4Config() const; 0054 QDBusObjectPath dhcp6Config() const; 0055 QString driver() const; 0056 QString driverVersion() const; 0057 bool firmwareMissing() const; 0058 QString firmwareVersion() const; 0059 QString interface() const; 0060 int ip4Address() const; 0061 QDBusObjectPath ip4Config() const; 0062 QDBusObjectPath ip6Config() const; 0063 QString ipInterface() const; 0064 bool managed() const; 0065 uint mtu() const; 0066 uint state() const; 0067 DeviceDBusStateReason stateReason() const; 0068 QString udi() const; 0069 0070 /* Not part of DBus interface */ 0071 void addAvailableConnection(const QDBusObjectPath &availableConnection); 0072 void removeAvailableConnection(const QDBusObjectPath &availableConnection); 0073 void setActiveConnection(const QString &activeConnection); 0074 void setCapabilities(uint capabilities); 0075 QString deviceInterface() const; 0076 QString devicePath() const; 0077 void setDevicePath(const QString &devicePath); 0078 void setDeviceType(uint deviceType); 0079 void setDhcp4Config(const QString &config); 0080 void setDhcp6Config(const QString &config); 0081 void setDriver(const QString &driver); 0082 void setDriverVersion(const QString &driverVersion); 0083 void setFirmwareMissing(bool firmwareMissing); 0084 void setFirmwareVersion(const QString &firmwareVersion); 0085 void setInterface(const QString &interface); 0086 void setIpv4Address(int address); 0087 void setIp4Config(const QString &config); 0088 void setIp6Config(const QString &config); 0089 void setIpInterface(const QString &interface); 0090 void setManaged(bool managed); 0091 void setMtu(uint mtu); 0092 virtual void setState(uint state); 0093 void setStateReason(const DeviceDBusStateReason &reason); 0094 void setUdi(const QString &udi); 0095 0096 public Q_SLOTS: 0097 Q_SCRIPTABLE void Disconnect(); 0098 0099 Q_SIGNALS: 0100 void activeConnectionRemoved(const QDBusObjectPath &activeConnection); 0101 Q_SCRIPTABLE void StateChanged(uint new_state, uint old_state, uint reason); 0102 0103 private: 0104 QDBusObjectPath m_activeConnection; 0105 bool m_autoconnect; 0106 QList<QDBusObjectPath> m_availableConnections; 0107 uint m_capabilities; 0108 QString m_devicePath; 0109 uint m_deviceType; 0110 QDBusObjectPath m_dhcp4Config; 0111 QDBusObjectPath m_dhcp6Config; 0112 QString m_driver; 0113 QString m_driverVersion; 0114 bool m_firmwareMissing; 0115 QString m_firmwareVersion; 0116 QString m_interface; 0117 int m_ip4Address; 0118 QDBusObjectPath m_ip4Config; 0119 QDBusObjectPath m_ip6Config; 0120 QString m_ipInterface; 0121 bool m_managed; 0122 uint m_mtu; 0123 QString m_physicalPortId; 0124 uint m_state; 0125 DeviceDBusStateReason m_stateReason; 0126 QString m_udi; 0127 }; 0128 0129 #endif