File indexing completed on 2024-04-14 03:57:31
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(uint InterfaceFlags READ interfaceFlags) 0042 Q_PROPERTY(bool Managed READ managed) 0043 Q_PROPERTY(uint Mtu READ mtu) 0044 Q_PROPERTY(uint State READ state) 0045 Q_PROPERTY(DeviceDBusStateReason StateReason READ stateReason) 0046 Q_PROPERTY(QString Udi READ udi) 0047 0048 QDBusObjectPath activeConnection() const; 0049 bool autoconnect() const; 0050 void setAutoconnect(bool autoconnect); 0051 QList<QDBusObjectPath> availableConnections() const; 0052 uint capabilities() const; 0053 uint deviceType() const; 0054 QDBusObjectPath dhcp4Config() const; 0055 QDBusObjectPath dhcp6Config() const; 0056 QString driver() const; 0057 QString driverVersion() const; 0058 bool firmwareMissing() const; 0059 QString firmwareVersion() const; 0060 QString interface() const; 0061 int ip4Address() const; 0062 QDBusObjectPath ip4Config() const; 0063 QDBusObjectPath ip6Config() const; 0064 QString ipInterface() const; 0065 uint interfaceFlags() const; 0066 bool managed() const; 0067 uint mtu() const; 0068 uint state() const; 0069 DeviceDBusStateReason stateReason() const; 0070 QString udi() const; 0071 0072 /* Not part of DBus interface */ 0073 void addAvailableConnection(const QDBusObjectPath &availableConnection); 0074 void removeAvailableConnection(const QDBusObjectPath &availableConnection); 0075 void setActiveConnection(const QString &activeConnection); 0076 void setCapabilities(uint capabilities); 0077 QString deviceInterface() const; 0078 QString devicePath() const; 0079 void setDevicePath(const QString &devicePath); 0080 void setDeviceType(uint deviceType); 0081 void setDhcp4Config(const QString &config); 0082 void setDhcp6Config(const QString &config); 0083 void setDriver(const QString &driver); 0084 void setDriverVersion(const QString &driverVersion); 0085 void setFirmwareMissing(bool firmwareMissing); 0086 void setFirmwareVersion(const QString &firmwareVersion); 0087 void setInterface(const QString &interface); 0088 void setInterfaceFlags(uint interfaceFlags); 0089 void setIpv4Address(int address); 0090 void setIp4Config(const QString &config); 0091 void setIp6Config(const QString &config); 0092 void setIpInterface(const QString &interface); 0093 void setManaged(bool managed); 0094 void setMtu(uint mtu); 0095 virtual void setState(uint state); 0096 void setStateReason(const DeviceDBusStateReason &reason); 0097 void setUdi(const QString &udi); 0098 0099 public Q_SLOTS: 0100 Q_SCRIPTABLE void Disconnect(); 0101 0102 Q_SIGNALS: 0103 void activeConnectionRemoved(const QDBusObjectPath &activeConnection); 0104 Q_SCRIPTABLE void StateChanged(uint new_state, uint old_state, uint reason); 0105 0106 private: 0107 QDBusObjectPath m_activeConnection; 0108 bool m_autoconnect; 0109 QList<QDBusObjectPath> m_availableConnections; 0110 uint m_capabilities; 0111 QString m_devicePath; 0112 uint m_deviceType; 0113 QDBusObjectPath m_dhcp4Config; 0114 QDBusObjectPath m_dhcp6Config; 0115 QString m_driver; 0116 QString m_driverVersion; 0117 bool m_firmwareMissing; 0118 QString m_firmwareVersion; 0119 QString m_interface; 0120 uint m_interfaceFlags; 0121 int m_ip4Address; 0122 QDBusObjectPath m_ip4Config; 0123 QDBusObjectPath m_ip6Config; 0124 QString m_ipInterface; 0125 bool m_managed; 0126 uint m_mtu; 0127 QString m_physicalPortId; 0128 uint m_state; 0129 DeviceDBusStateReason m_stateReason; 0130 QString m_udi; 0131 }; 0132 0133 #endif