Compare commits
6 Commits
93ca002dc0
...
v0.7.0-74-
Author | SHA1 | Date | |
---|---|---|---|
de7e27251c
|
|||
01f24bcda6
|
|||
9db4810a7b
|
|||
146014f9f3
|
|||
3c6675de1e
|
|||
11e5b1745c |
@@ -4,13 +4,14 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
- next-v0.8
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
release:
|
release:
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- name: Checkout code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v5
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0 # Important for git describe --tags
|
fetch-depth: 0 # Important for git describe --tags
|
||||||
|
|
||||||
|
@@ -7,13 +7,14 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
|
- next-v0.8
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
check:
|
check:
|
||||||
name: Check
|
name: Check
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.90.0
|
toolchain: 1.90.0
|
||||||
@@ -23,7 +24,7 @@ jobs:
|
|||||||
name: Test Suite
|
name: Test Suite
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.90.0
|
toolchain: 1.90.0
|
||||||
@@ -33,7 +34,7 @@ jobs:
|
|||||||
name: Rustfmt
|
name: Rustfmt
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.90.0
|
toolchain: 1.90.0
|
||||||
@@ -44,7 +45,7 @@ jobs:
|
|||||||
name: Clippy
|
name: Clippy
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.90.0
|
toolchain: 1.90.0
|
||||||
@@ -55,7 +56,7 @@ jobs:
|
|||||||
name: build
|
name: build
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
with:
|
||||||
toolchain: 1.90.0
|
toolchain: 1.90.0
|
||||||
|
@@ -7,6 +7,9 @@ pub struct CoverArt {
|
|||||||
pub id: uuid::Uuid,
|
pub id: uuid::Uuid,
|
||||||
pub title: String,
|
pub title: String,
|
||||||
#[serde(skip)]
|
#[serde(skip)]
|
||||||
|
pub directory: String,
|
||||||
|
pub filename: String,
|
||||||
|
#[serde(skip)]
|
||||||
pub path: String,
|
pub path: String,
|
||||||
#[serde(skip)]
|
#[serde(skip)]
|
||||||
pub data: Vec<u8>,
|
pub data: Vec<u8>,
|
||||||
@@ -23,6 +26,7 @@ pub mod init {
|
|||||||
path: path.clone(),
|
path: path.clone(),
|
||||||
data: Vec::new(),
|
data: Vec::new(),
|
||||||
song_id: uuid::Uuid::nil(),
|
song_id: uuid::Uuid::nil(),
|
||||||
|
..Default::default()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -53,6 +57,32 @@ impl CoverArt {
|
|||||||
))
|
))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Gets the path of the CoverArt
|
||||||
|
pub fn get_path(&self) -> Result<String, std::io::Error> {
|
||||||
|
if self.directory.is_empty() {
|
||||||
|
return Err(std::io::Error::other("Directory has not been initialized"));
|
||||||
|
} else if self.filename.is_empty() {
|
||||||
|
return Err(std::io::Error::other("Filename has not bee initialized"));
|
||||||
|
}
|
||||||
|
|
||||||
|
let directory = &self.directory;
|
||||||
|
let last_index = directory.len() - 1;
|
||||||
|
|
||||||
|
if let Some(character) = directory.chars().nth(last_index) {
|
||||||
|
let buffer = if character != '/' {
|
||||||
|
directory.clone() + "/"
|
||||||
|
} else {
|
||||||
|
directory.clone()
|
||||||
|
};
|
||||||
|
|
||||||
|
Ok(buffer + &self.filename.clone())
|
||||||
|
} else {
|
||||||
|
Err(std::io::Error::other(
|
||||||
|
"Could not access last character of directory",
|
||||||
|
))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub mod io {
|
pub mod io {
|
||||||
|
Reference in New Issue
Block a user