Struct libp2p::floodsub::Floodsub [−][src]
pub struct Floodsub { /* fields omitted */ }
Expand description
Network behaviour that handles the floodsub protocol.
Implementations
Creates a Floodsub
with the given configuration.
Add a node to the list of nodes to propagate messages to.
Remove a node from the list of nodes to propagate messages to.
Subscribes to a topic.
Returns true if the subscription worked. Returns false if we were already subscribed.
Unsubscribes from a topic.
Note that this only requires the topic name.
Returns true if we were subscribed to this topic.
Publishes a message to the network, if we’re subscribed to the topic only.
Publishes a message to the network, even if we’re not subscribed to the topic.
pub fn publish_many(
&mut self,
topic: impl IntoIterator<Item = impl Into<Topic>>,
data: impl Into<Vec<u8, Global>>
)
pub fn publish_many(
&mut self,
topic: impl IntoIterator<Item = impl Into<Topic>>,
data: impl Into<Vec<u8, Global>>
)
Publishes a message with multiple topics to the network.
Note: Doesn’t do anything if we’re not subscribed to any of the topics.
pub fn publish_many_any(
&mut self,
topic: impl IntoIterator<Item = impl Into<Topic>>,
data: impl Into<Vec<u8, Global>>
)
pub fn publish_many_any(
&mut self,
topic: impl IntoIterator<Item = impl Into<Topic>>,
data: impl Into<Vec<u8, Global>>
)
Publishes a message with multiple topics to the network, even if we’re not subscribed to any of the topics.
Trait Implementations
type ProtocolsHandler = OneShotHandler<FloodsubProtocol, FloodsubRpc, InnerMessage>
type ProtocolsHandler = OneShotHandler<FloodsubProtocol, FloodsubRpc, InnerMessage>
Handler for all the protocols the network behaviour supports.
type OutEvent = FloodsubEvent
type OutEvent = FloodsubEvent
Event generated by the NetworkBehaviour
and that the swarm will report back.
Creates a new ProtocolsHandler
for a connection with a peer. Read more
Addresses that this behaviour is aware of for this specific peer, and that may allow reaching the peer. Read more
Indicate to the behaviour that we connected to the node with the given peer id. Read more
Indicates to the behaviour that we disconnected from the node with the given peer id. Read more
pub fn inject_event(
&mut self,
propagation_source: PeerId,
_connection: ConnectionId,
event: InnerMessage
)
pub fn inject_event(
&mut self,
propagation_source: PeerId,
_connection: ConnectionId,
event: InnerMessage
)
Informs the behaviour about an event generated by the handler dedicated to the peer identified by peer_id
.
for the behaviour. Read more
pub fn poll(
&mut self,
&mut Context<'_>,
&mut impl PollParameters
) -> Poll<NetworkBehaviourAction<<<Floodsub as NetworkBehaviour>::ProtocolsHandler as ProtocolsHandler>::InEvent, <Floodsub as NetworkBehaviour>::OutEvent>>
pub fn poll(
&mut self,
&mut Context<'_>,
&mut impl PollParameters
) -> Poll<NetworkBehaviourAction<<<Floodsub as NetworkBehaviour>::ProtocolsHandler as ProtocolsHandler>::InEvent, <Floodsub as NetworkBehaviour>::OutEvent>>
Polls for things that swarm should do. Read more
Informs the behaviour about a newly established connection to a peer.
Informs the behaviour about a closed connection to a peer. Read more
fn inject_address_change(
&mut self,
&PeerId,
&ConnectionId,
_old: &ConnectedPoint,
_new: &ConnectedPoint
)
fn inject_address_change(
&mut self,
&PeerId,
&ConnectionId,
_old: &ConnectedPoint,
_new: &ConnectedPoint
)
Informs the behaviour that the ConnectedPoint
of an existing connection has changed.
Indicates to the behaviour that we tried to reach an address, but failed. Read more
Indicates to the behaviour that we tried to dial all the addresses known for a node, but failed. Read more
Indicates to the behaviour that a new listener was created.
Indicates to the behaviour that we have started listening on a new multiaddr.
Indicates to the behaviour that a multiaddr we were listening on has expired, which means that we are no longer listening in it. Read more
A listener experienced an error.
A listener closed.
Indicates to the behaviour that we have discovered a new external address for us.
Indicates to the behaviour that an external address was removed.
Auto Trait Implementations
impl RefUnwindSafe for Floodsub
impl UnwindSafe for Floodsub