diff --git a/server/src/rpc.rs b/server/src/rpc.rs index f623f2964907e8a031b3b4f99f24d0d844c51738..f4d16af996139e596685cc6b5ec25b93655a4d3a 100644 --- a/server/src/rpc.rs +++ b/server/src/rpc.rs @@ -92,6 +92,7 @@ impl Server { }; server + .add_handler(Server::ping) .add_handler(Server::share_worktree) .add_handler(Server::join_worktree) .add_handler(Server::update_worktree) @@ -244,6 +245,18 @@ impl Server { worktree_ids } + async fn ping(self: Arc, request: TypedEnvelope) -> tide::Result<()> { + self.peer + .respond( + request.receipt(), + proto::Pong { + id: request.payload.id, + }, + ) + .await?; + Ok(()) + } + async fn share_worktree( self: Arc, mut request: TypedEnvelope,