github.com/decred/dcrlnd@v0.7.6/netann/interface.go (about) 1 package netann 2 3 import ( 4 "github.com/decred/dcrd/wire" 5 "github.com/decred/dcrlnd/channeldb" 6 ) 7 8 // DB abstracts the required database functionality needed by the 9 // ChanStatusManager. 10 type DB interface { 11 // FetchAllOpenChannels returns a slice of all open channels known to 12 // the daemon. This may include private or pending channels. 13 FetchAllOpenChannels() ([]*channeldb.OpenChannel, error) 14 } 15 16 // ChannelGraph abstracts the required channel graph queries used by the 17 // ChanStatusManager. 18 type ChannelGraph interface { 19 // FetchChannelEdgesByOutpoint returns the channel edge info and most 20 // recent channel edge policies for a given outpoint. 21 FetchChannelEdgesByOutpoint(*wire.OutPoint) (*channeldb.ChannelEdgeInfo, 22 *channeldb.ChannelEdgePolicy, *channeldb.ChannelEdgePolicy, error) 23 }