Documentation ¶
Index ¶
- Variables
- type BtcdNotifier
- func (b *BtcdNotifier) RegisterBlockEpochNtfn() (*chainntnfs.BlockEpochEvent, error)
- func (b *BtcdNotifier) RegisterConfirmationsNtfn(txid *chainhash.Hash, numConfs, _ uint32) (*chainntnfs.ConfirmationEvent, error)
- func (b *BtcdNotifier) RegisterSpendNtfn(outpoint *wire.OutPoint, _ uint32) (*chainntnfs.SpendEvent, error)
- func (b *BtcdNotifier) Start() error
- func (b *BtcdNotifier) Stop() error
Constants ¶
This section is empty.
Variables ¶
var ( // ErrChainNotifierShuttingDown is used when we are trying to // measure a spend notification when notifier is already stopped. ErrChainNotifierShuttingDown = errors.New("chainntnfs: system interrupt " + "while attempting to register for spend notification.") )
Functions ¶
This section is empty.
Types ¶
type BtcdNotifier ¶
type BtcdNotifier struct {
// contains filtered or unexported fields
}
BtcdNotifier implements the ChainNotifier interface using btcd's websockets notifications. Multiple concurrent clients are supported. All notifications are achieved via non-blocking sends on client channels.
func New ¶
func New(config *btcrpcclient.ConnConfig) (*BtcdNotifier, error)
New returns a new BtcdNotifier instance. This function assumes the btcd node detailed in the passed configuration is already running, and willing to accept new websockets clients.
func (*BtcdNotifier) RegisterBlockEpochNtfn ¶
func (b *BtcdNotifier) RegisterBlockEpochNtfn() (*chainntnfs.BlockEpochEvent, error)
RegisterBlockEpochNtfn returns a BlockEpochEvent which subscribes the caller to receive notifications, of each new block connected to the main chain.
func (*BtcdNotifier) RegisterConfirmationsNtfn ¶
func (b *BtcdNotifier) RegisterConfirmationsNtfn(txid *chainhash.Hash, numConfs, _ uint32) (*chainntnfs.ConfirmationEvent, error)
RegisterConfirmationsNtfn registers a notification with BtcdNotifier which will be triggered once the txid reaches numConfs number of confirmations.
func (*BtcdNotifier) RegisterSpendNtfn ¶
func (b *BtcdNotifier) RegisterSpendNtfn(outpoint *wire.OutPoint, _ uint32) (*chainntnfs.SpendEvent, error)
RegisterSpendNtfn registers an intent to be notified once the target outpoint has been spent by a transaction on-chain. Once a spend of the target outpoint has been detected, the details of the spending event will be sent across the 'Spend' channel.
func (*BtcdNotifier) Start ¶
func (b *BtcdNotifier) Start() error
Start connects to the running btcd node over websockets, registers for block notifications, and finally launches all related helper goroutines.