pub struct AppState {Show 22 fields
pub queue_size: usize,
pub total_queued: usize,
pub processed_count: usize,
pub failed_count: usize,
pub active_workers: usize,
pub current_file: Option<String>,
pub status: String,
pub progress: u8,
pub timestamp: f64,
pub paused: bool,
pub pause_reason: Option<String>,
pub watched_folder_count: usize,
pub active_server_route: Option<String>,
pub last_successful_sync_at: Option<f64>,
pub last_error: Option<String>,
pub last_error_guidance: Option<String>,
pub last_completed_file: Option<String>,
pub diagnostics_exports: usize,
pub recent_events: Vec<QueueEvent>,
pub folder_statuses: HashMap<String, FolderSyncStatus>,
pub transfer: TransferSnapshot,
pub completed_upload_batches: u64,
}Expand description
Contains shared progress counters exposed to the settings window.
Fields§
§queue_size: usizeNumber of items remaining in background queue.
total_queued: usizeTotal number of items scheduled this session.
processed_count: usizeNumber of processed items during current session.
failed_count: usizeNumber of items failing transmission.
active_workers: usizeIn-flight worker count — not persisted to disk.
current_file: Option<String>Relative path of file currently undergoing transmission.
status: StringGlobal application status label.
progress: u8Percentage progress indicator of active batch.
timestamp: f64Epoch timestamp of this state snapshot.
paused: boolTrue if all processing queues are manually paused.
pause_reason: Option<String>User or system reason why transmission is suspended.
watched_folder_count: usizeNumber of watched folders configured.
active_server_route: Option<String>Connection route label of the current session.
last_successful_sync_at: Option<f64>Epoch timestamp when the last sweep successfully finished.
last_error: Option<String>Diagnostic warning of the last critical error.
last_error_guidance: Option<String>Troubleshooting guidance instructions for last_error.
last_completed_file: Option<String>Filename of the last successfully processed asset.
diagnostics_exports: usizeCount of diagnostic bundles exported.
recent_events: Vec<QueueEvent>Historic rolling logs of recent queue event results.
folder_statuses: HashMap<String, FolderSyncStatus>Current sync states mapped by watched folder paths.
transfer: TransferSnapshotActive metrics representing ongoing network transfers.
completed_upload_batches: u64Total completed batches of uploads executed.
Implementations§
Source§impl AppState
impl AppState
const MAX_EVENTS: usize = 80
Sourcepub fn record_event(
&mut self,
path: impl Into<String>,
status: impl Into<String>,
detail: Option<String>,
attempts: u32,
)
pub fn record_event( &mut self, path: impl Into<String>, status: impl Into<String>, detail: Option<String>, attempts: u32, )
Add or update a rolling queue event entry in history.
Sourcepub fn reset_runtime_state(&mut self)
pub fn reset_runtime_state(&mut self)
Discard in-progress transfer states at application boot time.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for AppState
impl<'de> Deserialize<'de> for AppState
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for AppState
impl RefUnwindSafe for AppState
impl Send for AppState
impl Sync for AppState
impl Unpin for AppState
impl UnsafeUnpin for AppState
impl UnwindSafe for AppState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T, Ctx> BundleDefault<Ctx> for Twhere
T: Default,
impl<T, Ctx> BundleDefault<Ctx> for Twhere
T: Default,
§fn default_with_context(_: Ctx) -> T
fn default_with_context(_: Ctx) -> T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more