pricing

package
v1.0.0-rc2.9 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2021 License: BSD-3-Clause Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrThresholdTooLow says that the proposed payment threshold is too low for even a single reserve.
	ErrThresholdTooLow = errors.New("threshold too low")
)

Functions

This section is empty.

Types

type Interface

type Interface interface {
	AnnouncePaymentThreshold(ctx context.Context, peer swarm.Address, paymentThreshold *big.Int) error
}

Interface is the main interface of the pricing protocol

type PaymentThresholdObserver

type PaymentThresholdObserver interface {
	NotifyPaymentThreshold(peer swarm.Address, paymentThreshold *big.Int) error
}

PaymentThresholdObserver is used for being notified of payment threshold updates

type PriceTableObserver

type PriceTableObserver interface {
	NotifyPriceTable(peer swarm.Address, priceTable []uint64) error
}

PriceTableObserver is used for being notified of price table updates

type Service

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

func New

func New(streamer p2p.Streamer, logger logging.Logger, paymentThreshold *big.Int, minThreshold *big.Int) *Service

func (*Service) AnnouncePaymentThreshold

func (s *Service) AnnouncePaymentThreshold(ctx context.Context, peer swarm.Address, paymentThreshold *big.Int) error

AnnouncePaymentThreshold announces the payment threshold to per

func (*Service) Protocol

func (s *Service) Protocol() p2p.ProtocolSpec

func (*Service) SetPaymentThresholdObserver

func (s *Service) SetPaymentThresholdObserver(observer PaymentThresholdObserver)

SetPaymentThresholdObserver sets the PaymentThresholdObserver to be used when receiving a new payment threshold

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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