Struct fluvio_sc_schema::store::ChangeListener
source · pub struct ChangeListener<S, C>where
S: Spec,
C: MetadataItem,{ /* private fields */ }
Expand description
listen for changes local store
Implementations§
source§impl<S, C> ChangeListener<S, C>where
S: Spec,
C: MetadataItem,
impl<S, C> ChangeListener<S, C>where
S: Spec,
C: MetadataItem,
pub fn new(store: Arc<LocalStore<S, C>>) -> ChangeListener<S, C>
sourcepub fn has_change(&self) -> bool
pub fn has_change(&self) -> bool
check if there should be any changes this should be done before event listener to ensure no events are missed
pub fn set_last_change(&mut self, updated_change: i64)
pub fn last_change(&self) -> i64
pub fn current_change(&self) -> i64
pub async fn listen(&self)
sourcepub async fn sync_changes(&mut self) -> EpochChanges<MetadataStoreObject<S, C>>
pub async fn sync_changes(&mut self) -> EpochChanges<MetadataStoreObject<S, C>>
find all changes derived from this listener
sourcepub async fn sync_spec_changes(
&mut self
) -> EpochChanges<MetadataStoreObject<S, C>>
pub async fn sync_spec_changes( &mut self ) -> EpochChanges<MetadataStoreObject<S, C>>
find all spec related changes
sourcepub async fn sync_status_changes(
&mut self
) -> EpochChanges<MetadataStoreObject<S, C>>
pub async fn sync_status_changes( &mut self ) -> EpochChanges<MetadataStoreObject<S, C>>
all status related changes
sourcepub async fn sync_meta_changes(
&mut self
) -> EpochChanges<MetadataStoreObject<S, C>>
pub async fn sync_meta_changes( &mut self ) -> EpochChanges<MetadataStoreObject<S, C>>
all meta related changes
sourcepub async fn sync_changes_with_filter(
&mut self,
filter: &ChangeFlag
) -> EpochChanges<MetadataStoreObject<S, C>>
pub async fn sync_changes_with_filter( &mut self, filter: &ChangeFlag ) -> EpochChanges<MetadataStoreObject<S, C>>
all meta related changes
sourcepub async fn wait_for_initial_sync(&mut self) -> Vec<MetadataStoreObject<S, C>>
pub async fn wait_for_initial_sync(&mut self) -> Vec<MetadataStoreObject<S, C>>
wait for initial loading and return all as expected
Trait Implementations§
Auto Trait Implementations§
impl<S, C> Freeze for ChangeListener<S, C>
impl<S, C> !RefUnwindSafe for ChangeListener<S, C>
impl<S, C> Send for ChangeListener<S, C>
impl<S, C> Sync for ChangeListener<S, C>
impl<S, C> Unpin for ChangeListener<S, C>
impl<S, C> !UnwindSafe for ChangeListener<S, C>
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