This commit is contained in:
2026-01-26 20:23:39 +01:00
parent 2ed6cd3c06
commit 2b2f8622bf
10 changed files with 374 additions and 63 deletions

View File

@@ -29,8 +29,29 @@ pub trait GDriverService {
/// Returns true if the file was had remote changes and was updated
async fn update_changes_for_file(id: DriveId) -> StdResult<bool, UpdateChangesError>;
async fn update_changes() -> StdResult<(), UpdateChangesError>;
async fn do_something2(req: BackendActionRequest) -> StdResult<String, BackendActionError>;
async fn do_something2(req: BackendActionRequest) -> StdResult<AsyncResponse<String>, BackendActionError>;
}
#[tarpc::service]
pub trait GDriverClient {
async fn report_task_result(id: TaskId, result: TaskResult);
}
#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct TaskId(pub String);
#[derive(Debug, Serialize, Deserialize)]
pub enum AsyncResponse<T> {
Immediate(T),
Pending(TaskId),
}
#[derive(Debug, Serialize, Deserialize)]
pub enum TaskResult {
Success(String),
Error(String),
}
#[derive(Debug, Serialize, Deserialize)]
pub enum BackendActionRequest {
ShutdownGracefully,