Interface RoutingMessageHandler.RoutingMessageHandlerInterface

  • Enclosing class:
    RoutingMessageHandler

    public static interface RoutingMessageHandler.RoutingMessageHandlerInterface
    • Method Detail

      • handle_node_announcement

        Result_boolLightningErrorZ handle_node_announcement​(NodeAnnouncement msg)
        Handle an incoming node_announcement message, returning true if it should be forwarded on, false or returning an Err otherwise.
      • handle_channel_announcement

        Result_boolLightningErrorZ handle_channel_announcement​(ChannelAnnouncement msg)
        Handle a channel_announcement message, returning true if it should be forwarded on, false or returning an Err otherwise.
      • handle_channel_update

        Result_boolLightningErrorZ handle_channel_update​(ChannelUpdate msg)
        Handle an incoming channel_update message, returning true if it should be forwarded on, false or returning an Err otherwise.
      • get_next_channel_announcements

        ThreeTuple_ChannelAnnouncementChannelUpdateChannelUpdateZ[] get_next_channel_announcements​(long starting_point,
                                                                                                   byte batch_amount)
        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.
      • get_next_node_announcements

        NodeAnnouncement[] get_next_node_announcements​(byte[] starting_point,
                                                       byte batch_amount)
        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. Note that starting_point (or a relevant inner pointer) may be NULL or all-0s to represent None
      • sync_routing_table

        void sync_routing_table​(byte[] their_node_id,
                                Init init)
        Called when a connection is established with a peer. This can be used to perform routing table synchronization using a strategy defined by the implementor.
      • handle_reply_channel_range

        Result_NoneLightningErrorZ handle_reply_channel_range​(byte[] their_node_id,
                                                              ReplyChannelRange msg)
        Handles the reply of a query we initiated to learn about channels for a given range of blocks. We can expect to receive one or more replies to a single query.
      • handle_reply_short_channel_ids_end

        Result_NoneLightningErrorZ handle_reply_short_channel_ids_end​(byte[] their_node_id,
                                                                      ReplyShortChannelIdsEnd msg)
        Handles the reply of a query we initiated asking for routing gossip messages for a list of channels. We should receive this message when a node has completed its best effort to send us the pertaining routing gossip messages.
      • handle_query_channel_range

        Result_NoneLightningErrorZ handle_query_channel_range​(byte[] their_node_id,
                                                              QueryChannelRange msg)
        Handles when a peer asks us to send a list of short_channel_ids for the requested range of blocks.
      • handle_query_short_channel_ids

        Result_NoneLightningErrorZ handle_query_short_channel_ids​(byte[] their_node_id,
                                                                  QueryShortChannelIds msg)
        Handles when a peer asks us to send routing gossip messages for a list of short_channel_ids.