pub struct LocalFileStore { /* private fields */ }Expand description
Local file-based session store.
This is the default storage backend, suitable for single-machine use.
§Features
- Sessions stored as pretty-printed JSON
- Atomic writes (write to temp, then rename)
- Automatic directory creation
§Example
use orcs_runtime::session::{LocalFileStore, SessionStore, SessionAsset};
use std::path::PathBuf;
let store = LocalFileStore::new(PathBuf::from("~/.orcs/sessions"))?;
// Save a session
let asset = SessionAsset::new();
store.save(&asset).await?;
// List all sessions
let sessions = store.list().await?;
println!("Found {} sessions", sessions.len());Implementations§
Trait Implementations§
Source§impl Clone for LocalFileStore
impl Clone for LocalFileStore
Source§fn clone(&self) -> LocalFileStore
fn clone(&self) -> LocalFileStore
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for LocalFileStore
impl Debug for LocalFileStore
Source§impl SessionStore for LocalFileStore
impl SessionStore for LocalFileStore
Source§async fn save(&self, asset: &SessionAsset) -> Result<(), StorageError>
async fn save(&self, asset: &SessionAsset) -> Result<(), StorageError>
Saves a session asset. Read more
Source§async fn load(&self, id: &str) -> Result<SessionAsset, StorageError>
async fn load(&self, id: &str) -> Result<SessionAsset, StorageError>
Loads a session asset by ID. Read more
Source§async fn list(&self) -> Result<Vec<SessionMeta>, StorageError>
async fn list(&self) -> Result<Vec<SessionMeta>, StorageError>
Lists all session metadata. Read more
Source§async fn delete(&self, id: &str) -> Result<(), StorageError>
async fn delete(&self, id: &str) -> Result<(), StorageError>
Deletes a session by ID. Read more
Source§fn sync_status(&self) -> SyncStatus
fn sync_status(&self) -> SyncStatus
Returns the current sync status. Read more
Auto Trait Implementations§
impl Freeze for LocalFileStore
impl RefUnwindSafe for LocalFileStore
impl Send for LocalFileStore
impl Sync for LocalFileStore
impl Unpin for LocalFileStore
impl UnsafeUnpin for LocalFileStore
impl UnwindSafe for LocalFileStore
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
Mutably borrows from an owned value. Read more