diff --git a/src/services/book_library/mod.rs b/src/services/book_library/mod.rs index 8769503..952fa03 100644 --- a/src/services/book_library/mod.rs +++ b/src/services/book_library/mod.rs @@ -47,3 +47,22 @@ pub async fn get_book( ) -> Result> { _make_request(format!("/api/v1/books/{book_id}").as_str(), vec![]).await } + +pub async fn get_books( + page: u32, + page_size: u32, + uploaded_gte: String, + uploaded_lte: String, +) -> Result<(), Box> { + let _params: Vec<(&str, String)> = vec![ + ("page", page.to_string()), + ("page_size", page_size.to_string()), + ("uploaded_gte", uploaded_gte), + ("uploaded_lte", uploaded_lte) + ]; + + // TODO + // _make_request(format!("/api/v1/books/").as_str(), params).await; + + Ok(()) +} diff --git a/src/services/downloader/mod.rs b/src/services/downloader/mod.rs index 79cbf69..85f105a 100644 --- a/src/services/downloader/mod.rs +++ b/src/services/downloader/mod.rs @@ -1,5 +1,6 @@ use reqwest::Response; use serde::Deserialize; +use tracing::log; use crate::config::CONFIG; @@ -21,6 +22,8 @@ pub async fn download_from_downloader( CONFIG.downloader_url ); + log::info!("{url}"); + let response = reqwest::Client::new() .get(url) .header("Authorization", &CONFIG.downloader_api_key) diff --git a/src/services/mod.rs b/src/services/mod.rs index f7eeed7..27fed9b 100644 --- a/src/services/mod.rs +++ b/src/services/mod.rs @@ -131,3 +131,9 @@ pub async fn download_from_cache( caption }) } + +pub async fn start_update_cache( + _db: Database +) { + // TODO +} diff --git a/src/views.rs b/src/views.rs index 967f81f..6e7c048 100644 --- a/src/views.rs +++ b/src/views.rs @@ -6,7 +6,7 @@ use tracing::Level; use std::sync::Arc; use base64::{engine::general_purpose, Engine}; -use crate::{config::CONFIG, db::get_prisma_client, prisma::{PrismaClient, cached_file::{self}}, services::{get_cached_file_or_cache, download_from_cache, download_utils::get_response_async_read}}; +use crate::{config::CONFIG, db::get_prisma_client, prisma::{PrismaClient, cached_file::{self}}, services::{get_cached_file_or_cache, download_from_cache, download_utils::get_response_async_read, start_update_cache}}; pub type Database = Arc; @@ -92,9 +92,11 @@ async fn delete_cached_file( } async fn update_cache( - _ext: Extension + Extension(Ext { db, .. }): Extension ) -> impl IntoResponse { - StatusCode::OK.into_response() // TODO + tokio::spawn(start_update_cache(db)); + + StatusCode::OK.into_response() } //