From 1df76ea573861d9b42e85061e4863b95734ea853 Mon Sep 17 00:00:00 2001 From: Joshua Coles Date: Fri, 1 Mar 2024 21:18:16 +0000 Subject: [PATCH] Rename TogglClient to TogglApiClient --- src/{client.rs => api_client.rs} | 4 ++-- src/main.rs | 20 ++++++++++---------- src/poll.rs | 6 +++--- 3 files changed, 15 insertions(+), 15 deletions(-) rename src/{client.rs => api_client.rs} (99%) diff --git a/src/client.rs b/src/api_client.rs similarity index 99% rename from src/client.rs rename to src/api_client.rs index 527f4aa..6749517 100644 --- a/src/client.rs +++ b/src/api_client.rs @@ -8,7 +8,7 @@ use tracing::log::debug; use crate::types::{Current, Project, ProjectClient, ReportEntry, TogglQuery}; #[derive(Debug, Clone)] -pub struct TogglClient { +pub struct TogglApiClient { client: Client, workspace_id: String, base_url: String, @@ -17,7 +17,7 @@ pub struct TogglClient { headers: HeaderMap, } -impl TogglClient { +impl TogglApiClient { pub async fn check_health(&self) -> bool { true } diff --git a/src/main.rs b/src/main.rs index 8e59e30..bc0e77c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,4 +1,4 @@ -use crate::client::TogglClient; +use crate::api_client::TogglApiClient; use crate::entity::prelude::TimeEntry; use crate::entity::time_entry; use crate::entity::time_entry::ActiveModel; @@ -25,7 +25,7 @@ use std::net::SocketAddr; use tower_http::trace::TraceLayer; use tracing::{debug, instrument}; -mod client; +mod api_client; mod db; mod entity; mod poll; @@ -54,7 +54,7 @@ struct Config { #[instrument(skip(db, toggl_client))] pub async fn report( - Extension(toggl_client): Extension, + Extension(toggl_client): Extension, Extension(db): Extension, Json(query): Json, ) -> Result>> { @@ -107,14 +107,14 @@ async fn cache_report( #[instrument(skip(toggl_client))] pub async fn current( - Extension(toggl_client): Extension, + Extension(toggl_client): Extension, ) -> Result>> { Ok(toggl_client.get_current().await.map(Json)?) } #[instrument(skip(toggl_client))] pub async fn start_time_entry( - Extension(toggl_client): Extension, + Extension(toggl_client): Extension, Json(body): Json>, ) -> Result { toggl_client.start_time_entry(body).await?; @@ -125,7 +125,7 @@ pub async fn start_time_entry( #[instrument(skip(db, toggl_client))] async fn projects( Extension(db): Extension, - Extension(toggl_client): Extension, + Extension(toggl_client): Extension, ) -> Result>> { let projects = toggl_client.fetch_projects().await?; @@ -140,7 +140,7 @@ async fn projects( #[instrument(skip(toggl_client, db))] async fn clients( Extension(db): Extension, - Extension(toggl_client): Extension, + Extension(toggl_client): Extension, ) -> Result>> { let clients = toggl_client.fetch_clients().await?; entity::client::Entity::insert_many(clients.iter().map(ProjectClient::as_model)) @@ -151,7 +151,7 @@ async fn clients( Ok(Json(clients)) } -async fn health(Extension(toggl_client): Extension) -> Result<&'static str> { +async fn health(Extension(toggl_client): Extension) -> Result<&'static str> { return if toggl_client.check_health().await { Ok("Ok") } else { @@ -166,7 +166,7 @@ struct RefreshQuery { #[instrument(skip(toggl_client, db))] async fn refresh( - Extension(toggl_client): Extension, + Extension(toggl_client): Extension, Extension(db): Extension, Query(RefreshQuery { start_date }): Query, ) -> Result<&'static str> { @@ -228,7 +228,7 @@ async fn main() -> Result<()> { tracing_subscriber::fmt::init(); let config = Config::parse(); - let toggl_client = TogglClient::new( + let toggl_client = TogglApiClient::new( &config.workspace_id.to_string(), &STANDARD.encode(&format!("{}:api_token", config.toggl_api_token)), ); diff --git a/src/poll.rs b/src/poll.rs index fc8c203..22ea65b 100644 --- a/src/poll.rs +++ b/src/poll.rs @@ -1,4 +1,4 @@ -use crate::client::TogglClient; +use crate::api_client::TogglApiClient; use crate::entity::{client, project, time_entry}; use crate::types::{Project, ProjectClient, TogglQuery}; use sea_orm::{DatabaseConnection, EntityTrait, QuerySelect}; @@ -6,7 +6,7 @@ use tracing::instrument; use crate::{day_exclusivity_condition, utils}; #[tracing::instrument(skip(client, db))] -pub async fn poll_job(client: TogglClient, db: DatabaseConnection, poll_period: u64) { +pub async fn poll_job(client: TogglApiClient, db: DatabaseConnection, poll_period: u64) { // Every 2h, poll the Toggl API for new time entries for today to cache them in the database let period = tokio::time::Duration::from_secs(poll_period); @@ -31,7 +31,7 @@ pub async fn poll_job(client: TogglClient, db: DatabaseConnection, poll_period: #[instrument(skip(client, db))] pub async fn perform_poll( - client: &TogglClient, + client: &TogglApiClient, db: &DatabaseConnection, ) -> utils::Result { let now = chrono::Utc::now();