aboutsummaryrefslogtreecommitdiffstats
path: root/src/cache.rs
diff options
context:
space:
mode:
authoralyx <alyx@aleteoryx.me>2024-04-01 20:27:44 -0400
committeralyx <alyx@aleteoryx.me>2024-04-01 20:27:44 -0400
commit83ba4fe37a1184b998be09b9cbe53a22c7ba9e3b (patch)
treec60c2c17caeed24db920dee4613c1e185b12d12b /src/cache.rs
parent22c2e4e2db9ad9d892ed5fb63d92254677f6dafd (diff)
downloadlfm_embed-83ba4fe37a1184b998be09b9cbe53a22c7ba9e3b.tar.gz
lfm_embed-83ba4fe37a1184b998be09b9cbe53a22c7ba9e3b.tar.bz2
lfm_embed-83ba4fe37a1184b998be09b9cbe53a22c7ba9e3b.zip
Move caching to src/cache/; Finalize API parsing fixes
Font and user cache code has been moved to special files, independant from src/config.rs API parsing changes have been properly tested, and last.fm API JSON is now trace-logged for debugging convenience.
Diffstat (limited to 'src/cache.rs')
-rw-r--r--src/cache.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/cache.rs b/src/cache.rs
index a6f25fa..cf612b6 100644
--- a/src/cache.rs
+++ b/src/cache.rs
@@ -1,3 +1,6 @@
+pub mod font;
+pub mod user;
+
use std::future::Future;
use std::time::*;
use std::collections::HashMap;
@@ -31,10 +34,10 @@ where
pub async fn get(&mut self, key: &K) -> Result<&V, (StatusCode, &'static str)> {
if self.is_stale(key) {
- log::trace!(target: "lfm::cache", "MISS : interval = {:?}", self.interval);
+ log::trace!("MISS : interval = {:?}", self.interval);
self.renew(key).await
} else {
- log::trace!(target: "lfm::cache", "HIT : interval = {:?}", self.interval);
+ log::trace!("HIT : interval = {:?}", self.interval);
Ok(&self.cache.get(key).unwrap().1)
}
}
@@ -48,7 +51,7 @@ where
pub fn is_stale(&self, key: &K) -> bool {
if let Some((last_update, _)) = self.cache.get(key) {
let now = Instant::now();
- log::trace!(target: "lfm::cache", "Key exists, last update {:?} ago.", now - *last_update);
+ log::trace!("Key exists, last update {:?} ago.", now - *last_update);
now > (*last_update + self.interval)
}
else { true }