pub struct CacheManager { /* private fields */ }Implementations§
Source§impl CacheManager
impl CacheManager
Sourcepub fn new_without_encryption(cache_dir: PathBuf) -> Result<Self>
pub fn new_without_encryption(cache_dir: PathBuf) -> Result<Self>
Create a CacheManager for pre-login state.
Uses a placeholder key that will fail to decrypt any existing cache,
causing all loads to return Ok(None) until set_password() is called.
Saves made before set_password() will be encrypted with the wrong key
and become unreadable — this is intentional (no data should be cached pre-login).
Sourcepub fn set_password(&mut self, password: &str, org_guid: &str)
pub fn set_password(&mut self, password: &str, org_guid: &str)
Set encryption key derived from password + org_guid. Must be called after login before cache operations will work.
pub fn load_youth(&self) -> Result<Option<CachedData<Vec<Youth>>>>
pub fn save_youth(&self, youth: &[Youth]) -> Result<()>
pub fn load_adults(&self) -> Result<Option<CachedData<Vec<Adult>>>>
pub fn save_adults(&self, adults: &[Adult]) -> Result<()>
pub fn load_parents(&self) -> Result<Option<CachedData<Vec<Parent>>>>
pub fn save_parents(&self, parents: &[Parent]) -> Result<()>
pub fn load_patrols(&self) -> Result<Option<CachedData<Vec<Patrol>>>>
pub fn save_patrols(&self, patrols: &[Patrol]) -> Result<()>
pub fn load_advancement_dashboard( &self, ) -> Result<Option<CachedData<AdvancementDashboard>>>
pub fn save_advancement_dashboard( &self, dashboard: &AdvancementDashboard, ) -> Result<()>
pub fn load_ready_to_award( &self, ) -> Result<Option<CachedData<Vec<ReadyToAward>>>>
pub fn save_ready_to_award(&self, awards: &[ReadyToAward]) -> Result<()>
pub fn load_events(&self) -> Result<Option<CachedData<Vec<Event>>>>
pub fn save_events(&self, events: &[Event]) -> Result<()>
pub fn load_youth_ranks( &self, user_id: i64, ) -> Result<Option<CachedData<Vec<RankProgress>>>>
pub fn save_youth_ranks( &self, user_id: i64, ranks: &[RankProgress], ) -> Result<()>
pub fn load_youth_merit_badges( &self, user_id: i64, ) -> Result<Option<CachedData<Vec<MeritBadgeProgress>>>>
pub fn save_youth_merit_badges( &self, user_id: i64, badges: &[MeritBadgeProgress], ) -> Result<()>
pub fn load_youth_leadership( &self, user_id: i64, ) -> Result<Option<CachedData<Vec<LeadershipPosition>>>>
pub fn save_youth_leadership( &self, user_id: i64, positions: &[LeadershipPosition], ) -> Result<()>
pub fn load_youth_awards( &self, user_id: i64, ) -> Result<Option<CachedData<Vec<Award>>>>
pub fn save_youth_awards(&self, user_id: i64, awards: &[Award]) -> Result<()>
pub fn load_unit_info(&self) -> Result<Option<CachedData<UnitInfo>>>
pub fn save_unit_info(&self, info: &UnitInfo) -> Result<()>
pub fn load_key3(&self) -> Result<Option<CachedData<Key3Leaders>>>
pub fn save_key3(&self, key3: &Key3Leaders) -> Result<()>
pub fn load_org_profile(&self) -> Result<Option<CachedData<OrgProfile>>>
pub fn save_org_profile(&self, profile: &OrgProfile) -> Result<()>
pub fn load_commissioners( &self, ) -> Result<Option<CachedData<Vec<Commissioner>>>>
pub fn save_commissioners(&self, commissioners: &[Commissioner]) -> Result<()>
pub fn load_rank_requirements( &self, user_id: i64, rank_id: i64, ) -> Result<Option<CachedData<Vec<RankRequirement>>>>
pub fn save_rank_requirements( &self, user_id: i64, rank_id: i64, requirements: &[RankRequirement], ) -> Result<()>
pub fn load_badge_requirements( &self, user_id: i64, badge_id: i64, ) -> Result<Option<CachedData<BadgeRequirementsData>>>
pub fn save_badge_requirements( &self, user_id: i64, badge_id: i64, requirements: &[MeritBadgeRequirement], version: &Option<String>, ) -> Result<()>
pub fn get_cache_ages(&self) -> CacheAges
Sourcepub fn verify_cache(&self) -> Vec<String>
pub fn verify_cache(&self) -> Vec<String>
Verify that essential cache files exist and are readable. Returns a list of missing or unreadable cache files.
Trait Implementations§
Source§impl Clone for CacheManager
impl Clone for CacheManager
Source§fn clone(&self) -> CacheManager
fn clone(&self) -> CacheManager
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 moreAuto Trait Implementations§
impl Freeze for CacheManager
impl RefUnwindSafe for CacheManager
impl Send for CacheManager
impl Sync for CacheManager
impl Unpin for CacheManager
impl UnsafeUnpin for CacheManager
impl UnwindSafe for CacheManager
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