Files
tuliprox/shared/src/model/library_request.rs
T

45 lines
1.1 KiB
Rust
Raw Normal View History

2025-12-15 19:26:31 +01:00
use serde::{Deserialize, Serialize};
2025-12-15 21:10:45 +01:00
// Request to trigger a Library scan
#[derive(Debug, Serialize, Deserialize)]
pub struct LibraryScanRequest {
// Force rescan of all files, ignoring modification timestamps
#[serde(default)]
pub force_rescan: bool,
}
2025-12-15 19:26:31 +01:00
// Scan result with statistics
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
pub struct LibraryScanResult {
pub files_scanned: usize,
2025-12-18 15:55:54 +01:00
pub groups_scanned: usize,
2025-12-15 19:26:31 +01:00
pub files_added: usize,
pub files_updated: usize,
pub files_removed: usize,
pub errors: usize,
}
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
pub enum LibraryScanSummaryStatus {
Success,
Error,
}
// Response for Library scan
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq)]
pub struct LibraryScanSummary {
pub status: LibraryScanSummaryStatus,
pub message: String,
pub result: Option<LibraryScanResult>,
}
2025-12-15 21:10:45 +01:00
#[derive(Default, Debug, Clone, Deserialize, Serialize, PartialEq)]
2025-12-15 19:26:31 +01:00
pub struct LibraryStatus {
pub enabled: bool,
pub total_items: usize,
pub movies: usize,
pub series: usize,
pub path: Option<String>,
}