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  }