pub struct SyncEngine<Tr>where
Tr: SyncTransport + Clone,{ /* private fields */ }
Expand description
Enhanced synchronization manager
Implementations§
Source§impl<Tr> SyncEngine<Tr>where
Tr: SyncTransport + Clone + 'static,
impl<Tr> SyncEngine<Tr>where
Tr: SyncTransport + Clone + 'static,
pub fn new(storage: Storage, transport: Tr) -> Self
pub fn with_replica_id( storage: Storage, transport: Tr, replica_id: ReplicaId, ) -> Self
pub async fn state(&self) -> SyncState
pub fn replica_id(&self) -> ReplicaId
pub async fn is_online(&self) -> bool
pub async fn peer_count(&self) -> usize
Sourcepub async fn start_sync(&mut self) -> Result<(), SyncEngineError>
pub async fn start_sync(&mut self) -> Result<(), SyncEngineError>
Start the synchronization process
Sourcepub async fn stop_sync(&mut self) -> Result<(), SyncEngineError>
pub async fn stop_sync(&mut self) -> Result<(), SyncEngineError>
Stop the synchronization process
Sourcepub async fn sync<V>(
&mut self,
key: &str,
value: &V,
) -> Result<(), SyncEngineError>
pub async fn sync<V>( &mut self, key: &str, value: &V, ) -> Result<(), SyncEngineError>
Sync a CRDT value with peers
Sourcepub async fn process_messages(&mut self) -> Result<(), SyncEngineError>
pub async fn process_messages(&mut self) -> Result<(), SyncEngineError>
Process incoming messages
Auto Trait Implementations§
impl<Tr> Freeze for SyncEngine<Tr>where
Tr: Freeze,
impl<Tr> !RefUnwindSafe for SyncEngine<Tr>
impl<Tr> Send for SyncEngine<Tr>
impl<Tr> Sync for SyncEngine<Tr>
impl<Tr> Unpin for SyncEngine<Tr>where
Tr: Unpin,
impl<Tr> !UnwindSafe for SyncEngine<Tr>
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> SerializableKey for T
impl<T> SerializableKey for T
Source§impl<T> StorageAccess<T> for T
impl<T> StorageAccess<T> for T
Source§fn as_borrowed(&self) -> &T
fn as_borrowed(&self) -> &T
Borrows the value.
Source§fn into_taken(self) -> T
fn into_taken(self) -> T
Takes the value.