ticketbuyer

package
v5.0.0-...-2e8bb31 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 12, 2024 License: ISC Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func UseLogger

func UseLogger(logger slog.Logger)

UseLogger uses a specified Logger to output package logging info. This should be used in preference to SetLogWriter if the caller is also using slog.

Types

type Config

type Config struct {
	BuyTickets bool

	// Account to buy tickets from
	Account uint32

	// Account to derive voting addresses from
	VotingAccount uint32

	// Minimum amount to maintain in purchasing account
	Maintain dcrutil.Amount

	// Limit maximum number of purchased tickets per block
	Limit int

	// CSPP-related options
	Mixing             bool
	MixedAccount       uint32
	MixedAccountBranch uint32
	TicketSplitAccount uint32
	ChangeAccount      uint32
	MixChange          bool

	// VSP client
	VSP *wallet.VSPClient
}

Config modifies the behavior of TB.

type TB

type TB struct {
	// contains filtered or unexported fields
}

TB is an automated ticket buyer, buying as many tickets as possible given an account's available balance. TB may optionally be configured to register purchased tickets with a VSP.

func New

func New(w *wallet.Wallet, cfg Config) *TB

New returns a new TB to buy tickets from a wallet.

func (*TB) AccessConfig

func (tb *TB) AccessConfig(f func(cfg *Config))

AccessConfig runs f with the current config passed as a parameter. The config is protected by a mutex and this function is safe for concurrent access to read or modify the config. It is unsafe to leak a pointer to the config, but a copy of *cfg is legal.

func (*TB) Run

func (tb *TB) Run(ctx context.Context, passphrase []byte) error

Run executes the ticket buyer. If the private passphrase is incorrect, or ever becomes incorrect due to a wallet passphrase change, Run exits with an errors.Passphrase error.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL