43 void start(std::optional<ProcessMode> processMode = std::nullopt);
44 void stop(std::optional<ProcessMode> processMode = std::nullopt);
58 return m_secureSocketVersion;
62 return m_processState == ProcessState::Started;
66 return m_processState;
70 return m_connectionState;
76 m_address = correctedAddress(address);
99 void onProcessFinished(
int exitCode, QProcess::ExitStatus);
100 void onProcessReadyReadStandardOutput();
101 void onProcessReadyReadStandardError();
102 void onCoreIpcMessageReceived(
const QString &command,
const QString &args);
103 void daemonIpcClientConnected();
106 void startForegroundProcess(
const QStringList &args);
107 void startProcessFromDaemon(
const QStringList &args);
108 void stopForegroundProcess()
const;
109 void stopProcessFromDaemon();
110 QPair<bool, QString> persistServerConfig()
const;
111 void setConnectionState(ConnectionState state);
112 void setProcessState(ProcessState state);
113 bool checkSecureSocket(
const QString &line);
114 void handleLogLines(
const QString &text);
115 QString correctedAddress(
const QString &address)
const;
116 void setupDaemonLogTail(
const QString &logPath);
117 static QString makeQuotedArgs(
const QString &app,
const QStringList &args);
119 static QString processStateToString(
const CoreProcess::ProcessState state);
120 static QString wrapIpv6(
const QString &address);
124 ProcessState m_processState = ProcessState::Stopped;
125 ConnectionState m_connectionState = ConnectionState::Disconnected;
127 QMutex m_processMutex;
128 QString m_secureSocketVersion;
129 std::optional<ProcessMode> m_lastProcessMode = std::nullopt;
133 FileTail *m_daemonFileTail =
nullptr;
134 QProcess *m_process =
nullptr;
Definition ServerConfig.h:34
CoreMode
Definition Settings.h:125
@ None
Definition Settings.h:126
ProcessMode
Definition Settings.h:118
void restart()
Definition CoreProcess.cpp:456
void stop(std::optional< ProcessMode > processMode=std::nullopt)
Definition CoreProcess.cpp:422
void secureSocket(bool enabled)
void retryDaemon()
Definition CoreProcess.cpp:631
void connectionStateChanged(deskflow::core::ConnectionState state)
void clearSettings()
Definition CoreProcess.cpp:615
void connectedClientsChanged(const QStringList &clients)
void securityLevelChanged(QString securityLevel)
ProcessState processState() const
Definition CoreProcess.h:64
Settings::CoreMode mode() const
Definition CoreProcess.h:52
bool isStarted() const
Definition CoreProcess.h:60
QString secureSocketVersion() const
Definition CoreProcess.h:56
void start(std::optional< ProcessMode > processMode=std::nullopt)
Definition CoreProcess.cpp:319
CoreProcess(const ServerConfig &serverConfig)
Definition CoreProcess.cpp:102
void applyLogLevel()
Definition CoreProcess.cpp:177
void error(deskflow::gui::CoreProcess::Error error)
void cleanup()
Definition CoreProcess.cpp:478
void daemonIpcClientConnectionFailed()
void connectionRefused(deskflow::core::ConnectionRefusal reason)
void setMode(Settings::CoreMode mode)
Definition CoreProcess.h:78
void missingKeyboardLayouts(const QString &layouts)
ConnectionState connectionState() const
Definition CoreProcess.h:68
Error
Definition CoreProcess.h:36
@ StartFailed
Definition CoreProcess.h:38
@ AddressMissing
Definition CoreProcess.h:37
void processStateChanged(deskflow::core::ProcessState state)
void logLine(const QString &line)
void peerFingerprint(const QString &fingerprint)
void setAddress(const QString &address)
Definition CoreProcess.h:74
void retryIn(int seconds)
void unrecognisedClient(const QString &clientName)
Definition CoreIpcClient.h:16
Definition DaemonIpcClient.h:16
ConnectionState
Definition Enums.h:39
ProcessState
Definition Enums.h:29
ConnectionRefusal
Definition Enums.h:48
Definition CoreProcess.h:22
Definition ServerConfig.h:26