pub struct MempoolAdapterStubImpl { /* private fields */ }Implementations§
Source§impl MempoolAdapterStubImpl
impl MempoolAdapterStubImpl
pub fn with_stub_externals( listener: Arc<dyn MempoolEventListener>, now: Option<u64>, ) -> Arc<Self>
pub fn with_externals_from_dir( listener: Arc<dyn MempoolEventListener>, dir_path: impl AsRef<Path>, ) -> Result<Arc<Self>>
pub fn with_anchors_from_dump( listener: Arc<dyn MempoolEventListener>, now: Option<u64>, dumped_anchors: Vec<DumpedAnchor>, ) -> Result<Arc<Self>>
Trait Implementations§
Source§impl MempoolAdapter for MempoolAdapterStubImpl
impl MempoolAdapter for MempoolAdapterStubImpl
Source§fn handle_mc_state_update<'life0, 'async_trait>(
&'life0 self,
cx: Box<StateUpdateContext>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn handle_mc_state_update<'life0, 'async_trait>(
&'life0 self,
cx: Box<StateUpdateContext>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Process updates related to master block: Read more
Source§fn handle_signed_mc_block<'life0, 'async_trait>(
&'life0 self,
_mc_block_seqno: BlockSeqno,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn handle_signed_mc_block<'life0, 'async_trait>(
&'life0 self,
_mc_block_seqno: BlockSeqno,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Process state update reported by collation manager earlier.
Will apply vset and config changes to mempool. Also starts mempool at first call.
Advances mempool pause bound which allows mempool to resume its work.
Mempool should be ready to return mc block
processed_up_to anchor and all next after it.
This method will not clean anchor cache.Source§fn get_anchor_by_id<'life0, 'async_trait>(
&'life0 self,
anchor_id: MempoolAnchorId,
) -> Pin<Box<dyn Future<Output = Result<GetAnchorResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_anchor_by_id<'life0, 'async_trait>(
&'life0 self,
anchor_id: MempoolAnchorId,
) -> Pin<Box<dyn Future<Output = Result<GetAnchorResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Request, await, and return anchor from connected mempool by id.
Return None if the requested anchor does not exist and cannot be synced from other nodes.
Source§fn get_next_anchor<'life0, 'async_trait>(
&'life0 self,
prev_anchor_id: MempoolAnchorId,
) -> Pin<Box<dyn Future<Output = Result<GetAnchorResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_next_anchor<'life0, 'async_trait>(
&'life0 self,
prev_anchor_id: MempoolAnchorId,
) -> Pin<Box<dyn Future<Output = Result<GetAnchorResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Request, await, and return the next anchor after the specified previous one.
If anchor does not exist then await until it be produced or downloaded during sync.
Return None if anchor cannot be produced or synced from other nodes.
Source§fn clear_anchors_cache(&self, before_anchor_id: MempoolAnchorId) -> Result<()>
fn clear_anchors_cache(&self, before_anchor_id: MempoolAnchorId) -> Result<()>
Clean cache from all anchors that before specified.
We can do this for anchors that processed in blocks
which included in signed master - we do not need them anymore
Source§fn accept_external(&self, _message: Bytes)
fn accept_external(&self, _message: Bytes)
Enqueue external message to be consumed and processed by mempool
Source§fn update_delayed_config<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_consensus_config: Option<&'life1 ConsensusConfig>,
_genesis_info: &'life2 GenesisInfo,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn update_delayed_config<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_consensus_config: Option<&'life1 ConsensusConfig>,
_genesis_info: &'life2 GenesisInfo,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Warning: changes from
GlobalConfig may be rewritten by applied mc state
only if applied mc state has greater time and GEQ roundAuto Trait Implementations§
impl !Freeze for MempoolAdapterStubImpl
impl !RefUnwindSafe for MempoolAdapterStubImpl
impl Send for MempoolAdapterStubImpl
impl Sync for MempoolAdapterStubImpl
impl Unpin for MempoolAdapterStubImpl
impl UnsafeUnpin for MempoolAdapterStubImpl
impl !UnwindSafe for MempoolAdapterStubImpl
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 more