Skip to main content

Datastore

Trait Datastore 

Source
pub trait Datastore {
    // Required methods
    fn set_request_sync_resources(
        &mut self,
        resources: SyncResources,
    ) -> Result<(), Error>;
    fn unset_request_sync_resources(
        &mut self,
        resources: SyncResources,
    ) -> Result<(), Error>;
    fn generate_sync_options(&mut self) -> Result<SyncOptions, Error>;
    fn execute_all_request_sync(
        &mut self,
        all_sync_response: AllSyncResult,
    ) -> Result<(), Error>;
    fn execute_select_request_sync(
        &mut self,
        select_sync_request: SelectSync,
        select_sync_response: TermSyncResult,
    ) -> Result<(), Error>;
}
Expand description

Datastores may choose to make it possible to have all syncs / schools syncs /term syncs work with each other, but they may also choose to make some of them mutaully exclusive

Required Methods§

Source

fn set_request_sync_resources( &mut self, resources: SyncResources, ) -> Result<(), Error>

Source

fn unset_request_sync_resources( &mut self, resources: SyncResources, ) -> Result<(), Error>

Source

fn generate_sync_options(&mut self) -> Result<SyncOptions, Error>

Source

fn execute_all_request_sync( &mut self, all_sync_response: AllSyncResult, ) -> Result<(), Error>

Source

fn execute_select_request_sync( &mut self, select_sync_request: SelectSync, select_sync_response: TermSyncResult, ) -> Result<(), Error>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§