From f7d0cea466b391c467b1767d65557d3dc027c5fb Mon Sep 17 00:00:00 2001 From: Anshul Gupta Date: Fri, 19 Aug 2022 20:25:23 -0700 Subject: Adds DatabaseClient & Postgres Database Client --- rust/scraper/src/database/mod.rs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 rust/scraper/src/database/mod.rs (limited to 'rust/scraper/src/database/mod.rs') diff --git a/rust/scraper/src/database/mod.rs b/rust/scraper/src/database/mod.rs new file mode 100644 index 0000000..232f42f --- /dev/null +++ b/rust/scraper/src/database/mod.rs @@ -0,0 +1,20 @@ +pub mod postgres; +pub mod error; + +pub use error::DatabaseError; + +use proto::touchpad::common::v1; + +type Result = std::result::Result; + +#[async_trait::async_trait] +pub trait DatabaseClient { + async fn get_swimmer(&self, id: u32) -> Result; + async fn add_swimmer(&self, swimmer: &v1::Swimmer) -> Result<()>; + + async fn get_team(&self, id: u32) -> Result; + async fn add_team(&self, team: &v1::Team) -> Result<()>; + + async fn get_meet(&self, id: u32) -> Result; + async fn add_meet(&self, meet: &v1::SwimMeet) -> Result<()>; +} -- cgit v1.2.3