Trait libp2p::gossipsub::DataTransform [−][src]
pub trait DataTransform {
fn inbound_transform(
&self,
raw_message: RawGossipsubMessage
) -> Result<GossipsubMessage, Error>;
fn outbound_transform(
&self,
topic: &TopicHash,
data: Vec<u8, Global>
) -> Result<Vec<u8, Global>, Error>;
}Expand description
A general trait of transforming a RawGossipsubMessage into a GossipsubMessage. The
RawGossipsubMessage is obtained from the wire and the GossipsubMessage is used to
calculate the crate::MessageId of the message and is what is sent to the application.
The inbound/outbound transforms must be inverses. Applying the inbound transform and then the outbound transform MUST leave the underlying data un-modified.
By default, this is the identity transform for all fields in GossipsubMessage.
Required methods
fn inbound_transform(
&self,
raw_message: RawGossipsubMessage
) -> Result<GossipsubMessage, Error>[src]
fn inbound_transform(
&self,
raw_message: RawGossipsubMessage
) -> Result<GossipsubMessage, Error>[src]Takes a RawGossipsubMessage received and converts it to a GossipsubMessage.
Implementors
pub fn inbound_transform(
&self,
raw_message: RawGossipsubMessage
) -> Result<GossipsubMessage, Error>[src]