pushkin_daemon/
protocol.rs1use pushkin_core::envelope::CheckResult;
8use serde::{Deserialize, Serialize};
9
10pub const PROTOCOL_VERSION: u32 = 1;
11
12#[derive(Debug, Serialize, Deserialize)]
13#[serde(deny_unknown_fields, rename_all = "camelCase", tag = "kind")]
14pub enum Request {
15 #[serde(rename_all = "camelCase")]
16 Check {
17 v: u32,
18 file_path: String,
19 content: String,
20 },
21 Ping {
22 v: u32,
23 },
24 Shutdown {
25 v: u32,
26 },
27}
28
29#[derive(Debug, Clone, Serialize, Deserialize)]
30#[serde(deny_unknown_fields, rename_all = "camelCase")]
31pub struct DaemonInfo {
32 pub pid: u32,
33 pub version: String,
34 pub read_only: bool,
37}
38
39#[derive(Debug, Serialize, Deserialize)]
40#[serde(deny_unknown_fields, rename_all = "camelCase", tag = "kind")]
41pub enum Response {
42 #[serde(rename_all = "camelCase")]
43 Check {
44 result: CheckResult,
45 },
46 #[serde(rename_all = "camelCase")]
47 Pong {
48 info: DaemonInfo,
49 },
50 ShuttingDown,
51 #[serde(rename_all = "camelCase")]
52 Error {
53 message: String,
54 },
55}