From ccdcc1891b01b43069991cf58a588145b7559090 Mon Sep 17 00:00:00 2001 From: Cara Salter Date: Fri, 27 May 2022 23:35:22 -0400 Subject: meta: API Scaffold Initial implementation of a CRUD API for Ships. Should probably at some point support getting specific Ships based on something like shasum or an ID, so that solard can more easily pull it down --- src/handlers/mod.rs | 1 + src/handlers/ships.rs | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 src/handlers/mod.rs create mode 100644 src/handlers/ships.rs (limited to 'src/handlers') diff --git a/src/handlers/mod.rs b/src/handlers/mod.rs new file mode 100644 index 0000000..2b5bfaf --- /dev/null +++ b/src/handlers/mod.rs @@ -0,0 +1 @@ +pub mod ships; diff --git a/src/handlers/ships.rs b/src/handlers/ships.rs new file mode 100644 index 0000000..5e8c000 --- /dev/null +++ b/src/handlers/ships.rs @@ -0,0 +1,23 @@ +use axum::{Json, extract::Path}; +use solarlib::ship::{Ship, Sha256}; + +use crate::errors::{JsonResult, StringResult}; + + +pub async fn list() -> JsonResult>> { + let mut result: Vec = Vec::new(); + + Ok(Json(result)) +} + +pub async fn new(Json(new_ship): Json) -> StringResult { + unimplemented!(); +} + +pub async fn update(Json(new_ship): Json) -> StringResult { + todo!(); +} + +pub async fn delete(Path(shasum): Path) -> StringResult { + todo!(); +} -- cgit v1.2.3