CalendarStore

Trait CalendarStore 

Source
pub trait CalendarStore:
    Send
    + Sync
    + 'static {
Show 18 methods // Required methods fn get_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, id: &'life2 str, show_deleted: bool, ) -> Pin<Box<dyn Future<Output = Result<Calendar, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn get_calendars<'life0, 'life1, 'async_trait>( &'life0 self, principal: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Vec<Calendar>, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_deleted_calendars<'life0, 'life1, 'async_trait>( &'life0 self, principal: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Vec<Calendar>, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn update_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, id: &'life2 str, calendar: Calendar, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn insert_calendar<'life0, 'async_trait>( &'life0 self, calendar: Calendar, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn delete_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, name: &'life2 str, use_trashbin: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn restore_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, name: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn import_calendar<'life0, 'async_trait>( &'life0 self, calendar: Calendar, objects: Vec<CalendarObject>, merge_existing: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn sync_changes<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, synctoken: i64, ) -> Pin<Box<dyn Future<Output = Result<(Vec<(String, CalendarObject)>, Vec<String>, i64), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn calendar_metadata<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<CollectionMetadata, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn get_objects<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Vec<(String, CalendarObject)>, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn get_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, show_deleted: bool, ) -> Pin<Box<dyn Future<Output = Result<CalendarObject, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait; fn put_objects<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, objects: Vec<(String, CalendarObject)>, overwrite: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn delete_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, use_trashbin: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait; fn restore_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait; fn is_read_only(&self, cal_id: &str) -> bool; // Provided methods fn calendar_query<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, _query: CalendarQuery, ) -> Pin<Box<dyn Future<Output = Result<Vec<(String, CalendarObject)>, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait { ... } fn put_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, object: CalendarObject, overwrite: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait { ... }
}

Required Methods§

Source

fn get_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, id: &'life2 str, show_deleted: bool, ) -> Pin<Box<dyn Future<Output = Result<Calendar, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn get_calendars<'life0, 'life1, 'async_trait>( &'life0 self, principal: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Vec<Calendar>, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_deleted_calendars<'life0, 'life1, 'async_trait>( &'life0 self, principal: &'life1 str, ) -> Pin<Box<dyn Future<Output = Result<Vec<Calendar>, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn update_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, id: &'life2 str, calendar: Calendar, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn insert_calendar<'life0, 'async_trait>( &'life0 self, calendar: Calendar, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn delete_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, name: &'life2 str, use_trashbin: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn restore_calendar<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, name: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn import_calendar<'life0, 'async_trait>( &'life0 self, calendar: Calendar, objects: Vec<CalendarObject>, merge_existing: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn sync_changes<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, synctoken: i64, ) -> Pin<Box<dyn Future<Output = Result<(Vec<(String, CalendarObject)>, Vec<String>, i64), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn calendar_metadata<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<CollectionMetadata, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn get_objects<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Vec<(String, CalendarObject)>, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn get_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, show_deleted: bool, ) -> Pin<Box<dyn Future<Output = Result<CalendarObject, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Source

fn put_objects<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, objects: Vec<(String, CalendarObject)>, overwrite: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn delete_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, use_trashbin: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Source

fn restore_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Source

fn is_read_only(&self, cal_id: &str) -> bool

Provided Methods§

Source

fn calendar_query<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, _query: CalendarQuery, ) -> Pin<Box<dyn Future<Output = Result<Vec<(String, CalendarObject)>, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Since the rules are rather complex this function is only meant to do some prefiltering

Source

fn put_object<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, principal: &'life1 str, cal_id: &'life2 str, object_id: &'life3 str, object: CalendarObject, overwrite: bool, ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Implementors§