pub enum NetworkBridgeTxMessage {
ReportPeer(PeerId, UnifiedReputationChange),
DisconnectPeer(PeerId, PeerSet),
SendValidationMessage(Vec<PeerId, Global>, Versioned<ValidationProtocol>),
SendCollationMessage(Vec<PeerId, Global>, Versioned<CollationProtocol>),
SendValidationMessages(Vec<(Vec<PeerId, Global>, Versioned<ValidationProtocol>), Global>),
SendCollationMessages(Vec<(Vec<PeerId, Global>, Versioned<CollationProtocol>), Global>),
SendRequests(Vec<Requests, Global>, IfDisconnected),
ConnectToValidators {
validator_ids: Vec<Public, Global>,
peer_set: PeerSet,
failed: Sender<usize>,
},
ConnectToResolvedValidators {
validator_addrs: Vec<HashSet<Multiaddr, RandomState>, Global>,
peer_set: PeerSet,
},
}
Expand description
Messages received from other subsystems by the network bridge subsystem.
Variants§
ReportPeer(PeerId, UnifiedReputationChange)
Report a peer for their actions.
DisconnectPeer(PeerId, PeerSet)
Disconnect a peer from the given peer-set without affecting their reputation.
SendValidationMessage(Vec<PeerId, Global>, Versioned<ValidationProtocol>)
Send a message to one or more peers on the validation peer-set.
SendCollationMessage(Vec<PeerId, Global>, Versioned<CollationProtocol>)
Send a message to one or more peers on the collation peer-set.
SendValidationMessages(Vec<(Vec<PeerId, Global>, Versioned<ValidationProtocol>), Global>)
Send a batch of validation messages.
NOTE: Messages will be processed in order (at least statement distribution relies on this).
SendCollationMessages(Vec<(Vec<PeerId, Global>, Versioned<CollationProtocol>), Global>)
Send a batch of collation messages.
NOTE: Messages will be processed in order.
SendRequests(Vec<Requests, Global>, IfDisconnected)
Send requests via substrate request/response. Second parameter, tells what to do if we are not yet connected to the peer.
ConnectToValidators
Fields
Connect to peers who represent the given validator_ids
.
Also ask the network to stay connected to these peers at least until a new request is issued.
Because it overrides the previous request, it must be ensured
that validator_ids
include all peers the subsystems
are interested in (per PeerSet
).
A caller can learn about validator connections by listening to the
PeerConnected
events from the network bridge.
ConnectToResolvedValidators
Fields
Alternative to ConnectToValidators
in case you already know the Multiaddrs
you want to be
connected to.
Trait Implementations§
source§impl AssociateOutgoing for NetworkBridgeTxMessage
impl AssociateOutgoing for NetworkBridgeTxMessage
§type OutgoingMessages = NetworkBridgeTxOutgoingMessages
type OutgoingMessages = NetworkBridgeTxOutgoingMessages
Self
.source§impl Debug for NetworkBridgeTxMessage
impl Debug for NetworkBridgeTxMessage
source§impl From<NetworkBridgeTxMessage> for AllMessages
impl From<NetworkBridgeTxMessage> for AllMessages
source§fn from(message: NetworkBridgeTxMessage) -> AllMessages
fn from(message: NetworkBridgeTxMessage) -> AllMessages
source§impl From<NetworkBridgeTxMessage> for ApprovalDistributionOutgoingMessages
impl From<NetworkBridgeTxMessage> for ApprovalDistributionOutgoingMessages
source§fn from(message: NetworkBridgeTxMessage) -> ApprovalDistributionOutgoingMessages
fn from(message: NetworkBridgeTxMessage) -> ApprovalDistributionOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for AvailabilityDistributionOutgoingMessages
impl From<NetworkBridgeTxMessage> for AvailabilityDistributionOutgoingMessages
source§fn from(
message: NetworkBridgeTxMessage
) -> AvailabilityDistributionOutgoingMessages
fn from( message: NetworkBridgeTxMessage ) -> AvailabilityDistributionOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for AvailabilityRecoveryOutgoingMessages
impl From<NetworkBridgeTxMessage> for AvailabilityRecoveryOutgoingMessages
source§fn from(message: NetworkBridgeTxMessage) -> AvailabilityRecoveryOutgoingMessages
fn from(message: NetworkBridgeTxMessage) -> AvailabilityRecoveryOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for BitfieldDistributionOutgoingMessages
impl From<NetworkBridgeTxMessage> for BitfieldDistributionOutgoingMessages
source§fn from(message: NetworkBridgeTxMessage) -> BitfieldDistributionOutgoingMessages
fn from(message: NetworkBridgeTxMessage) -> BitfieldDistributionOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for CollatorProtocolOutgoingMessages
impl From<NetworkBridgeTxMessage> for CollatorProtocolOutgoingMessages
source§fn from(message: NetworkBridgeTxMessage) -> CollatorProtocolOutgoingMessages
fn from(message: NetworkBridgeTxMessage) -> CollatorProtocolOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for DisputeDistributionOutgoingMessages
impl From<NetworkBridgeTxMessage> for DisputeDistributionOutgoingMessages
source§fn from(message: NetworkBridgeTxMessage) -> DisputeDistributionOutgoingMessages
fn from(message: NetworkBridgeTxMessage) -> DisputeDistributionOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for GossipSupportOutgoingMessages
impl From<NetworkBridgeTxMessage> for GossipSupportOutgoingMessages
source§fn from(message: NetworkBridgeTxMessage) -> GossipSupportOutgoingMessages
fn from(message: NetworkBridgeTxMessage) -> GossipSupportOutgoingMessages
source§impl From<NetworkBridgeTxMessage> for StatementDistributionOutgoingMessages
impl From<NetworkBridgeTxMessage> for StatementDistributionOutgoingMessages
source§fn from(
message: NetworkBridgeTxMessage
) -> StatementDistributionOutgoingMessages
fn from( message: NetworkBridgeTxMessage ) -> StatementDistributionOutgoingMessages
Auto Trait Implementations§
impl !RefUnwindSafe for NetworkBridgeTxMessage
impl Send for NetworkBridgeTxMessage
impl Sync for NetworkBridgeTxMessage
impl Unpin for NetworkBridgeTxMessage
impl !UnwindSafe for NetworkBridgeTxMessage
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
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
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
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&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> FmtForward for T
impl<T> FmtForward for T
source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where Self: Display,
self
to use its Display
implementation when
Debug
-formatted.source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.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> 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>,
source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere T: ?Sized,
source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere Self: Sized,
source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere R: 'a,
self
and passes that borrow into the pipe function. Read moresource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere R: 'a,
self
and passes that borrow into the pipe function. Read moresource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere Self: Borrow<B>, B: 'a + ?Sized, R: 'a,
source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R ) -> Rwhere Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,
source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere Self: AsRef<U>, U: 'a + ?Sized, R: 'a,
self
, then passes self.as_ref()
into the pipe function.source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere Self: AsMut<U>, U: 'a + ?Sized, R: 'a,
self
, then passes self.as_mut()
into the pipe
function.source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
T
. Read moresource§impl<T> Tap for T
impl<T> Tap for T
source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
Borrow<B>
of a value. Read moresource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
BorrowMut<B>
of a value. Read moresource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
AsRef<R>
view of a value. Read moresource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
AsMut<R>
view of a value. Read moresource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere Self: Deref<Target = T>, T: ?Sized,
Deref::Target
of a value. Read moresource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere Self: DerefMut<Target = T> + Deref, T: ?Sized,
Deref::Target
of a value. Read moresource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere Self: Borrow<B>, B: ?Sized,
.tap_borrow()
only in debug builds, and is erased in release
builds.source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere Self: BorrowMut<B>, B: ?Sized,
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere Self: AsRef<R>, R: ?Sized,
.tap_ref()
only in debug builds, and is erased in release
builds.source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere Self: AsMut<R>, R: ?Sized,
.tap_ref_mut()
only in debug builds, and is erased in release
builds.source§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
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.