channeldb: convert FetchOtherNode to ChannelGraph method

To prepare for the `kvdb.Backend` member of `ChannelEdgeInfo` being
removed, the `FetchOtherNode` method is moved from the `ChannelEdgeInfo`
to the `ChannelGraph` struct.
This commit is contained in:
Elle Mouton 2023-10-23 13:58:18 +02:00
parent 6d878c65fc
commit 9dc1a1dfec
No known key found for this signature in database
GPG key ID: D7D916376026F177
2 changed files with 8 additions and 6 deletions

View file

@ -3206,16 +3206,16 @@ func (c *ChannelEdgeInfo) OtherNodeKeyBytes(thisNodeKey []byte) (
// the target node in the channel. This is useful when one knows the pubkey of
// one of the nodes, and wishes to obtain the full LightningNode for the other
// end of the channel.
func (c *ChannelEdgeInfo) FetchOtherNode(tx kvdb.RTx,
func (c *ChannelGraph) FetchOtherNode(tx kvdb.RTx, channel *ChannelEdgeInfo,
thisNodeKey []byte) (*LightningNode, error) {
// Ensure that the node passed in is actually a member of the channel.
var targetNodeBytes [33]byte
switch {
case bytes.Equal(c.NodeKey1Bytes[:], thisNodeKey):
targetNodeBytes = c.NodeKey2Bytes
case bytes.Equal(c.NodeKey2Bytes[:], thisNodeKey):
targetNodeBytes = c.NodeKey1Bytes
case bytes.Equal(channel.NodeKey1Bytes[:], thisNodeKey):
targetNodeBytes = channel.NodeKey2Bytes
case bytes.Equal(channel.NodeKey2Bytes[:], thisNodeKey):
targetNodeBytes = channel.NodeKey1Bytes
default:
return nil, fmt.Errorf("node not participating in this channel")
}

View file

@ -3107,7 +3107,9 @@ func (s *server) establishPersistentConnections() error {
// We'll now fetch the peer opposite from us within this
// channel so we can queue up a direct connection to them.
channelPeer, err := chanInfo.FetchOtherNode(tx, selfPub)
channelPeer, err := s.graphDB.FetchOtherNode(
tx, chanInfo, selfPub,
)
if err != nil {
return fmt.Errorf("unable to fetch channel peer for "+
"ChannelPoint(%v): %v", chanInfo.ChannelPoint,