[][src]Trait lightning::ln::msgs::RoutingMessageHandler

pub trait RoutingMessageHandler: Send + Sync {
    pub fn handle_node_announcement(
        &self,
        msg: &NodeAnnouncement
    ) -> Result<bool, LightningError>;
pub fn handle_channel_announcement(
        &self,
        msg: &ChannelAnnouncement
    ) -> Result<bool, LightningError>;
pub fn handle_channel_update(
        &self,
        msg: &ChannelUpdate
    ) -> Result<bool, LightningError>;
pub fn handle_htlc_fail_channel_update(
        &self,
        update: &HTLCFailChannelUpdate
    );
pub fn get_next_channel_announcements(
        &self,
        starting_point: u64,
        batch_amount: u8
    ) -> Vec<(ChannelAnnouncement, Option<ChannelUpdate>, Option<ChannelUpdate>)>;
pub fn get_next_node_announcements(
        &self,
        starting_point: Option<&PublicKey>,
        batch_amount: u8
    ) -> Vec<NodeAnnouncement>;
pub fn should_request_full_sync(&self, node_id: &PublicKey) -> bool; }

A trait to describe an object which can receive routing messages.

Required methods

pub fn handle_node_announcement(
    &self,
    msg: &NodeAnnouncement
) -> Result<bool, LightningError>
[src]

Handle an incoming node_announcement message, returning true if it should be forwarded on, false or returning an Err otherwise.

pub fn handle_channel_announcement(
    &self,
    msg: &ChannelAnnouncement
) -> Result<bool, LightningError>
[src]

Handle a channel_announcement message, returning true if it should be forwarded on, false or returning an Err otherwise.

pub fn handle_channel_update(
    &self,
    msg: &ChannelUpdate
) -> Result<bool, LightningError>
[src]

Handle an incoming channel_update message, returning true if it should be forwarded on, false or returning an Err otherwise.

pub fn handle_htlc_fail_channel_update(&self, update: &HTLCFailChannelUpdate)[src]

Handle some updates to the route graph that we learned due to an outbound failed payment.

pub fn get_next_channel_announcements(
    &self,
    starting_point: u64,
    batch_amount: u8
) -> Vec<(ChannelAnnouncement, Option<ChannelUpdate>, Option<ChannelUpdate>)>
[src]

Gets a subset of the channel announcements and updates required to dump our routing table to a remote node, starting at the short_channel_id indicated by starting_point and including the batch_amount entries immediately higher in numerical value than starting_point.

pub fn get_next_node_announcements(
    &self,
    starting_point: Option<&PublicKey>,
    batch_amount: u8
) -> Vec<NodeAnnouncement>
[src]

Gets a subset of the node announcements required to dump our routing table to a remote node, starting at the node after the provided publickey and including batch_amount entries immediately higher (as defined by ::cmp) than starting_point. If None is provided for starting_point, we start at the first node.

pub fn should_request_full_sync(&self, node_id: &PublicKey) -> bool[src]

Returns whether a full sync should be requested from a peer.

Loading content...

Implementors

impl<C: Deref + Sync + Send, L: Deref + Sync + Send> RoutingMessageHandler for NetGraphMsgHandler<C, L> where
    C::Target: Access,
    L::Target: Logger
[src]

Loading content...