Files
icarus_models/src/coverart.rs
2025-03-21 00:18:38 +00:00

28 lines
632 B
Rust

use std::io::Read;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Deserialize, Serialize)]
pub struct CoverArt {
pub id: i32,
pub title: String,
pub path: String,
pub data: Vec<u8>,
}
impl CoverArt {
pub fn to_data(&self) -> Result<Vec<u8>, std::io::Error> {
let path: &String = &self.path;
let mut file = std::fs::File::open(path)?;
let mut buffer = Vec::new();
match file.read_to_end(&mut buffer) {
Ok(_) => {
return Ok(buffer);
}
Err(err) => {
return Err(err);
}
}
}
}