Skip to main content

CalendarReadStore

Trait CalendarReadStore 

Source
pub trait CalendarReadStore:
    Send
    + Sync
    + 'static {
    // 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 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 is_read_only(&self, cal_id: &str) -> bool;

    // Provided method
    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 { ... }
}

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 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 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

Implementors§