1use serde::{Deserialize, Serialize};
2
3#[derive(Serialize, Deserialize, Debug)]
4pub enum RequestPayload {
5 OpenDb {
6 path: String,
7 mode: String,
8 max_thread_num: usize,
9 checkpoint_on_close: bool,
10 },
11 Connect {
12 db_id: u64,
13 },
14 Execute {
15 conn_id: u64,
16 query: String,
17 },
18 CloseConn {
19 conn_id: u64,
20 },
21 CloseDb {
22 db_id: u64,
23 },
24}
25
26#[derive(Serialize, Deserialize, Debug)]
27pub struct Request {
28 pub req_id: u64,
29 pub payload: RequestPayload,
30}
31
32#[derive(Serialize, Deserialize, Debug)]
33pub enum ResponsePayload {
34 OkDb { db_id: u64 },
35 OkConn { conn_id: u64 },
36 OkResult { result_string: String },
37 Error(String),
38}
39
40#[derive(Serialize, Deserialize, Debug)]
41pub struct Response {
42 pub req_id: u64,
43 pub payload: ResponsePayload,
44}