aboutsummaryrefslogtreecommitdiff
path: root/server/src/library.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/library.rs')
-rw-r--r--server/src/library.rs16
1 files changed, 12 insertions, 4 deletions
diff --git a/server/src/library.rs b/server/src/library.rs
index 37d71df..17adf3c 100644
--- a/server/src/library.rs
+++ b/server/src/library.rs
@@ -1,7 +1,12 @@
use anyhow::{anyhow, bail, Context, Ok};
use jellycommon::{DirectoryInfo, ItemInfo};
use log::info;
-use std::{ffi::OsStr, fs::File, path::PathBuf, sync::Arc};
+use std::{
+ ffi::OsStr,
+ fs::File,
+ path::{Path, PathBuf},
+ sync::Arc,
+};
pub struct Library {
pub root: Arc<Node>,
@@ -26,7 +31,7 @@ pub struct Item {
pub fs_path: PathBuf,
pub lib_path: PathBuf,
pub identifier: String,
- pub data: ItemInfo,
+ pub info: ItemInfo,
}
impl Library {
@@ -35,6 +40,9 @@ impl Library {
root: Node::from_path(path.into(), PathBuf::new(), true).context("indexing root")?,
})
}
+ pub fn nested_path(&self, path: &Path) -> anyhow::Result<Arc<Node>> {
+ self.nested(path.to_str().unwrap())
+ }
pub fn nested(&self, path: &str) -> anyhow::Result<Arc<Node>> {
let mut n = self.root.clone();
if path == "" {
@@ -66,7 +74,7 @@ impl Node {
pub fn title(&self) -> &str {
match self {
Node::Directory(d) => &d.data.name,
- Node::Item(i) => &i.data.title,
+ Node::Item(i) => &i.info.title,
}
}
pub fn identifier(&self) -> &str {
@@ -133,7 +141,7 @@ impl Node {
Ok(Node::Item(Arc::new(Item {
fs_path: path.clone(),
lib_path: lib_path.join(identifier.clone()),
- data,
+ info: data,
identifier,
}))
.into())