diff options
Diffstat (limited to 'src/playlist.rs')
| -rw-r--r-- | src/playlist.rs | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/playlist.rs b/src/playlist.rs index 445f8a5..31fcfc0 100644 --- a/src/playlist.rs +++ b/src/playlist.rs @@ -1,29 +1,35 @@ use std::collections::VecDeque; -use log::info; +use slog::{info, Logger}; use crate::youtube_dl::AudioMetadata; pub struct Playlist { data: VecDeque<AudioMetadata>, + logger: Logger, } impl Playlist { - pub fn new() -> Self { + pub fn new(logger: Logger) -> Self { Self { data: VecDeque::new(), + logger, } } pub fn push(&mut self, data: AudioMetadata) { - info!("Adding {:?} to playlist", &data.title); + info!(self.logger, "Adding to playlist"; "title" => &data.title); self.data.push_front(data) } pub fn pop(&mut self) -> Option<AudioMetadata> { let res = self.data.pop_back(); - info!("Popping {:?} from playlist", res.as_ref().map(|r| &r.title)); + info!( + self.logger, + "Popping from playlist"; + "title" => res.as_ref().map(|r| &r.title) + ); res } @@ -45,6 +51,6 @@ impl Playlist { pub fn clear(&mut self) { self.data.clear(); - info!("Cleared playlist") + info!(self.logger, "Cleared playlist") } } |
