diff options
Diffstat (limited to 'import/src/musicbrainz.rs')
-rw-r--r-- | import/src/musicbrainz.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/import/src/musicbrainz.rs b/import/src/musicbrainz.rs index 2d3d532..51573db 100644 --- a/import/src/musicbrainz.rs +++ b/import/src/musicbrainz.rs @@ -8,6 +8,7 @@ use crate::USER_AGENT; use anyhow::Result; use bincode::{Decode, Encode}; use jellybase::cache::async_cache_memory; +use log::info; use reqwest::{ header::{HeaderMap, HeaderName, HeaderValue}, Client, ClientBuilder, @@ -19,6 +20,19 @@ use tokio::{ time::{sleep_until, Instant}, }; +pub mod reltypes { + pub const MUSIC_VIDEO: &str = "ce3de655-7451-44d1-9224-87eb948c205d"; + pub const INSTRUMENTAL: &str = "9fc01a58-7801-4bd2-b07d-61cc7ffacf90"; + pub const VOCAL: &str = "0fdbe3c6-7700-4a31-ae54-b53f06ae1cfa"; + pub const RECORDING: &str = "a01ee869-80a8-45ef-9447-c59e91aa7926"; + pub const PROGRAMMING: &str = "36c50022-44e0-488d-994b-33f11d20301e"; + pub const PRODUCER: &str = "5c0ceac3-feb4-41f0-868d-dc06f6e27fc0"; + pub const ARTIST: &str = "5c0ceac3-feb4-41f0-868d-dc06f6e27fc0"; + pub const PHONOGRAPHIC_COPYRIGHT: &str = "7fd5fbc0-fbf4-4d04-be23-417d50a4dc30"; + pub const MIX: &str = "3e3102e1-1896-4f50-b5b2-dd9824e46efe"; + pub const INSTRUMENT: &str = "59054b12-01ac-43ee-a618-285fd397e461"; +} + pub struct MusicBrainz { client: Client, rate_limit: Arc<Semaphore>, @@ -150,6 +164,7 @@ impl MusicBrainz { async_cache_memory("api-musicbrainz-recording", id.clone(), || async move { let _permit = self.rate_limit.clone().acquire_owned().await?; let permit_drop_ts = Instant::now() + Duration::from_secs(10); + info!("recording lookup: {id}"); let inc = [ "isrcs", |