Struct sc_client_api::notifications::StorageNotifications
source · pub struct StorageNotifications<Block: BlockT>(_);
Expand description
Manages storage listeners.
Implementations§
source§impl<Block: BlockT> StorageNotifications<Block>
impl<Block: BlockT> StorageNotifications<Block>
sourcepub fn new(prometheus_registry: Option<PrometheusRegistry>) -> Self
pub fn new(prometheus_registry: Option<PrometheusRegistry>) -> Self
Initialize a new StorageNotifications optionally pass a prometheus registry to send subscriber metrics to
sourcepub fn trigger(
&self,
hash: &Block::Hash,
changeset: impl Iterator<Item = (Vec<u8>, Option<Vec<u8>>)>,
child_changeset: impl Iterator<Item = (Vec<u8>, impl Iterator<Item = (Vec<u8>, Option<Vec<u8>>)>)>
)
pub fn trigger( &self, hash: &Block::Hash, changeset: impl Iterator<Item = (Vec<u8>, Option<Vec<u8>>)>, child_changeset: impl Iterator<Item = (Vec<u8>, impl Iterator<Item = (Vec<u8>, Option<Vec<u8>>)>)> )
Trigger notification to all listeners.
Note the changes are going to be filtered by listener’s filter key. In fact no event might be sent if clients are not interested in the changes.
sourcepub fn listen(
&self,
filter_keys: Option<&[StorageKey]>,
filter_child_keys: Option<&[(StorageKey, Option<Vec<StorageKey>>)]>
) -> StorageEventStream<Block::Hash>
pub fn listen( &self, filter_keys: Option<&[StorageKey]>, filter_child_keys: Option<&[(StorageKey, Option<Vec<StorageKey>>)]> ) -> StorageEventStream<Block::Hash>
Start listening for particular storage keys.
Trait Implementations§
Auto Trait Implementations§
impl<Block> !RefUnwindSafe for StorageNotifications<Block>
impl<Block> Send for StorageNotifications<Block>
impl<Block> Sync for StorageNotifications<Block>
impl<Block> Unpin for StorageNotifications<Block>
impl<Block> !UnwindSafe for StorageNotifications<Block>
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.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, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.