Files
amnezia-client/client/core/local-proxy/iproxyservice.h
T

28 lines
1018 B
C++
Raw Normal View History

2025-08-08 06:44:18 +04:00
#pragma once
#include <QJsonObject>
#include <QMap>
class IProxyService {
public:
virtual ~IProxyService() = default;
// Config operations
virtual QJsonObject getConfig() const = 0;
virtual bool updateConfig(const QString& configStr) = 0;
virtual QMap<QString, QJsonObject> getAllConfigs() const = 0;
virtual QMap<QString, QJsonObject> getConfigsByUuids(const QStringList &uuids) const = 0;
virtual bool addConfigs(const QStringList &serializedConfigs) = 0;
virtual bool removeConfig(const QString &uuid) = 0;
virtual bool activateConfig(const QString &uuid) = 0;
virtual QJsonObject getActiveConfig() const = 0;
virtual bool updateAllConfigs(const QStringList &serializedConfigs) = 0;
virtual int getConfigCount() const = 0;
// Xray process operations
virtual bool startXray() = 0;
virtual bool stopXray() = 0;
virtual bool isXrayRunning() const = 0;
virtual qint64 getXrayProcessId() const = 0;
virtual QString getXrayError() const = 0;
};