tsk-81: Simplify downloading song #89

Merged
kdeng00 merged 5 commits from tsk-81 into main 2025-10-24 13:34:55 -04:00
3 changed files with 21 additions and 12 deletions
Generated
+3 -3
View File
@@ -451,7 +451,7 @@ dependencies = [
[[package]] [[package]]
name = "icarus-dm" name = "icarus-dm"
version = "0.8.6" version = "0.8.7"
dependencies = [ dependencies = [
"futures", "futures",
"http", "http",
@@ -466,8 +466,8 @@ dependencies = [
[[package]] [[package]]
name = "icarus_models" name = "icarus_models"
version = "0.8.0" version = "0.8.3"
source = "git+ssh://git@git.kundeng.us/phoenix/icarus_models.git?tag=v0.8.0#860d684e7b340b05d43d1fc3e6bd36b7cc45d81b" source = "git+ssh://git@git.kundeng.us/phoenix/icarus_models.git?tag=v0.8.3#0a27b8ccb1ac40361df8d3131f567f37f06cdc08"
dependencies = [ dependencies = [
"josekit", "josekit",
"rand", "rand",
+2 -2
View File
@@ -1,6 +1,6 @@
[package] [package]
name = "icarus-dm" name = "icarus-dm"
version = "0.8.6" version = "0.8.7"
rust-version = "1.90" rust-version = "1.90"
edition = "2024" edition = "2024"
@@ -14,4 +14,4 @@ serde_json = "1.0.145"
tokio = { version = "1.47.1", features = ["full"] } tokio = { version = "1.47.1", features = ["full"] }
tokio-util = { version = "0.7.16", features = ["codec"] } tokio-util = { version = "0.7.16", features = ["codec"] }
uuid = { version = "1.18.1", features = ["v4", "serde"] } uuid = { version = "1.18.1", features = ["v4", "serde"] }
icarus_models = { git = "ssh://git@git.kundeng.us/phoenix/icarus_models.git", tag = "v0.8.0" } icarus_models = { git = "ssh://git@git.kundeng.us/phoenix/icarus_models.git", tag = "v0.8.3" }
+16 -7
View File
@@ -192,7 +192,7 @@ impl CommitManager {
let api = prsr.retrieve_api(parsers::api_parser::APIType::Main); let api = prsr.retrieve_api(parsers::api_parser::APIType::Main);
let mut dwn_loader = syncers::download::Download { api: api.clone() }; let mut dwn_loader = syncers::download::Download { api: api.clone() };
let song = icarus_models::song::Song { let mut song = icarus_models::song::Song {
id: song_id, id: song_id,
..Default::default() ..Default::default()
}; };
@@ -200,12 +200,21 @@ impl CommitManager {
match dwn_loader.download_song(&token, &song).await { match dwn_loader.download_song(&token, &song).await {
Ok(o) => { Ok(o) => {
println!("Success"); println!("Success");
let filename = String::from("audio")
+ icarus_models::constants::file_extensions::audio::DEFAULTMUSICEXTENSION; song.data = o.as_bytes().to_vec();
let data = o.as_bytes(); song.directory = String::from(".");
let mut file = std::fs::File::create(filename).expect("Failed to save"); song.filename = icarus_models::song::generate_filename(
file.write_all(data) icarus_models::types::MusicTypes::FlacExtension,
.expect("Failed to save downloaded song"); true,
);
match song.save_to_filesystem() {
Ok(_) => {
println!("Song saved");
}
Err(err) => {
eprintln!("Error saving song: {err:?}");
}
}
} }
Err(er) => { Err(er) => {
println!("Error {er:?}"); println!("Error {er:?}");