mutterkey
KDE-first push-to-talk transcription tool for KDE Plasma
Loading...
Searching...
No Matches
daemoncontrolprotocol.h File Reference

Local daemon control protocol types and JSON serialization helpers. More...

#include <cstdint>
#include <QByteArray>
#include <QJsonObject>
#include <QString>

Go to the source code of this file.

Classes

struct  DaemonControlRequest
 One line-delimited local control request. More...
 
struct  DaemonControlResponse
 One line-delimited local control response. More...
 

Enumerations

enum class  DaemonControlMethod : std::uint8_t { Ping , GetStatus , GetConfig }
 Supported operations on the local daemon control socket. More...
 

Functions

QString daemonControlSocketName ()
 Returns the local server name used by the daemon control socket.
 
QString daemonControlMethodToString (DaemonControlMethod method)
 Converts a control method enum to its wire-format string name.
 
bool parseDaemonControlMethod (QStringView value, DaemonControlMethod *methodOut)
 Parses a wire-format control method name.
 
QByteArray serializeDaemonControlRequest (const DaemonControlRequest &request)
 Serializes a request to compact line-delimited JSON.
 
QByteArray serializeDaemonControlResponse (const DaemonControlResponse &response)
 Serializes a response to compact line-delimited JSON.
 
bool parseDaemonControlRequest (const QByteArray &payload, DaemonControlRequest *requestOut, QString *errorMessage=nullptr)
 Parses a line-delimited JSON request payload.
 
bool parseDaemonControlResponse (const QByteArray &payload, DaemonControlResponse *responseOut, QString *errorMessage=nullptr)
 Parses a line-delimited JSON response payload.
 

Detailed Description

Local daemon control protocol types and JSON serialization helpers.

Definition in file daemoncontrolprotocol.h.

Enumeration Type Documentation

◆ DaemonControlMethod

enum class DaemonControlMethod : std::uint8_t
strong

Supported operations on the local daemon control socket.

Enumerator
Ping 

Lightweight health check that returns daemon identity information.

GetStatus 

Returns daemon-authoritative runtime status and service diagnostics.

GetConfig 

Returns the daemon's current config snapshot and config-path metadata.

Definition at line 17 of file daemoncontrolprotocol.h.

Function Documentation

◆ daemonControlMethodToString()

QString daemonControlMethodToString ( DaemonControlMethod  method)

Converts a control method enum to its wire-format string name.

Parameters
methodMethod value to convert.
Returns
Canonical protocol string for the method.

◆ daemonControlSocketName()

QString daemonControlSocketName ( )

Returns the local server name used by the daemon control socket.

Returns
Transport-specific socket/server name.

◆ parseDaemonControlMethod()

bool parseDaemonControlMethod ( QStringView  value,
DaemonControlMethod methodOut 
)

Parses a wire-format control method name.

Parameters
valueMethod string from a protocol payload.
methodOutOutput target for the parsed method.
Returns
true when the method is recognized.

◆ parseDaemonControlRequest()

bool parseDaemonControlRequest ( const QByteArray &  payload,
DaemonControlRequest requestOut,
QString *  errorMessage = nullptr 
)

Parses a line-delimited JSON request payload.

Parameters
payloadUTF-8 request payload.
requestOutOutput target for the parsed request.
errorMessageOptional output for parse failures.
Returns
true when the payload is valid.

◆ parseDaemonControlResponse()

bool parseDaemonControlResponse ( const QByteArray &  payload,
DaemonControlResponse responseOut,
QString *  errorMessage = nullptr 
)

Parses a line-delimited JSON response payload.

Parameters
payloadUTF-8 response payload.
responseOutOutput target for the parsed response.
errorMessageOptional output for parse failures.
Returns
true when the payload is valid.

◆ serializeDaemonControlRequest()

QByteArray serializeDaemonControlRequest ( const DaemonControlRequest request)

Serializes a request to compact line-delimited JSON.

Parameters
requestRequest value to serialize.
Returns
UTF-8 payload terminated with \n.

◆ serializeDaemonControlResponse()

QByteArray serializeDaemonControlResponse ( const DaemonControlResponse response)

Serializes a response to compact line-delimited JSON.

Parameters
responseResponse value to serialize.
Returns
UTF-8 payload terminated with \n.