|
|
|
#ifndef CONNECTIONSETTINGSENGINE_H
|
|
|
|
#define CONNECTIONSETTINGSENGINE_H
|
|
|
|
|
|
|
|
#include <NetworkManagerQt/Connection>
|
|
|
|
#include <NetworkManagerQt/ConnectionSettings>
|
|
|
|
#include <NetworkManagerQt/Settings>
|
|
|
|
#include <NetworkManagerQt/Manager>
|
|
|
|
#include <NetworkManagerQt/Setting>
|
|
|
|
#include <NetworkManagerQt/WiredSetting>
|
|
|
|
#include <NetworkManagerQt/WirelessSetting>
|
|
|
|
#include <NetworkManagerQt/Utils>
|
|
|
|
#include <QString>
|
|
|
|
#include <QVariant>
|
|
|
|
#include <QHash>
|
|
|
|
#include <QProcess>
|
|
|
|
#include <QDBusPendingReply>
|
|
|
|
#include <QDBusPendingCallWatcher>
|
|
|
|
|
|
|
|
class ConnectionSettingsEngine
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
enum MeteredMode {
|
|
|
|
MeteredAutomatic,
|
|
|
|
MeteredYes,
|
|
|
|
MeteredNo
|
|
|
|
};
|
|
|
|
|
|
|
|
enum LinkSpeed {
|
|
|
|
SpeedUnknown,
|
|
|
|
Speed10Mbps,
|
|
|
|
Speed100Mbps,
|
|
|
|
Speed1Gbps,
|
|
|
|
Speed2_5Gbps,
|
|
|
|
Speed5Gbps,
|
|
|
|
Speed10Gbps,
|
|
|
|
Speed40Gbps,
|
|
|
|
Speed100Gbps
|
|
|
|
};
|
|
|
|
|
|
|
|
enum LinkNegotiation {
|
|
|
|
NegotiationIgnore,
|
|
|
|
NegotiationAutomatic,
|
|
|
|
NegotiationManual
|
|
|
|
};
|
|
|
|
|
|
|
|
enum DuplexMode {
|
|
|
|
DuplexUnknown,
|
|
|
|
DuplexHalf,
|
|
|
|
DuplexFull
|
|
|
|
};
|
|
|
|
|
|
|
|
ConnectionSettingsEngine();
|
|
|
|
|
|
|
|
static QVariantMap readConnectionSettings(QString connUuidStr);
|
|
|
|
static void modifyConnectionSettings(QString connUuidStr, QVariantMap settings);
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
static void saveReplyFinished();
|
|
|
|
|
|
|
|
private:
|
|
|
|
static QString userName();
|
|
|
|
static QString targetConnUuidStr;
|
|
|
|
static bool wipeClonedMacAddress;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // CONNECTIONSETTINGSENGINE_H
|