From be040b60b73e5be9f15a2eaf2fb69436529dab37 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Mon, 25 Apr 2022 20:21:43 -0600 Subject: [PATCH] WIP --- crates/collab/src/api.rs | 1 + crates/collab/src/main.rs | 25 +++++-------------------- crates/collab/src/rpc.rs | 7 +++++++ 3 files changed, 13 insertions(+), 20 deletions(-) diff --git a/crates/collab/src/api.rs b/crates/collab/src/api.rs index 6cdd28044c48a1bc53a5baeb62ae08d5f422dd9a..cea51ce2aab7137e4983cc8c490da860f60b61da 100644 --- a/crates/collab/src/api.rs +++ b/crates/collab/src/api.rs @@ -28,6 +28,7 @@ pub fn routes(state: Arc) -> Router { .layer(Extension(state)) .layer(middleware::from_fn(validate_api_token)), ) + // TODO: Compression on API routes? } pub async fn validate_api_token(req: Request, next: Next) -> impl IntoResponse { diff --git a/crates/collab/src/main.rs b/crates/collab/src/main.rs index 5fea3699e9d6b73952e50e642dc93dc8308cbf39..b19cae1959b6153a8a8eadef2ce57dd2bc7286dd 100644 --- a/crates/collab/src/main.rs +++ b/crates/collab/src/main.rs @@ -51,28 +51,13 @@ async fn main() -> Result<()> { let config = envy::from_env::().expect("error loading config"); let state = AppState::new(&config).await?; - let rpc = Peer::new(); - run_server( - state.clone(), - rpc, - TcpListener::bind(&format!("0.0.0.0:{}", config.http_port)) - .expect("failed to bind TCP listener"), - ) - .await?; - Ok(()) -} - -pub async fn run_server( - state: Arc, - peer: Arc, - listener: TcpListener, -) -> Result<()> { - // TODO: Compression on API routes? - // TODO: Authenticate API routes. - let app = Router::::new().merge(api::routes(state.clone())); + let listener = TcpListener::bind(&format!("0.0.0.0:{}", config.http_port)) + .expect("failed to bind TCP listener"); - // TODO: Add rpc routes + let app = Router::::new() + .merge(api::routes(state)) + .merge(rpc::routes(Peer::new())); axum::Server::from_tcp(listener)? .serve(app.into_make_service()) diff --git a/crates/collab/src/rpc.rs b/crates/collab/src/rpc.rs index 1cc163d633fe690f3fd0b6a6212e019847895b94..cbde3adcbb3357f386c0f90eda1811358d83f163 100644 --- a/crates/collab/src/rpc.rs +++ b/crates/collab/src/rpc.rs @@ -1099,6 +1099,10 @@ // } // } +pub fn routes(peer: Arc) -> Router { + Router::new() +} + // pub fn add_routes(app: &mut tide::Server>, rpc: &Arc) { // let server = Server::new(app.state().clone(), rpc.clone(), None); // app.at("/rpc").get(move |request: Request>| { @@ -6360,3 +6364,6 @@ // } // } // } + +use axum::{body::Body, Router}; +use client::Peer;