Documentation
¶
Index ¶
- type Opts
- type PaychMonitor
- type PaychMonitorImpl
- func (m *PaychMonitorImpl) Check(ctx context.Context, outbound bool, currencyID byte, chAddr string) (time.Time, time.Time, error)
- func (m *PaychMonitorImpl) Renew(ctx context.Context, outbound bool, currencyID byte, chAddr string, ...) error
- func (m *PaychMonitorImpl) Retire(ctx context.Context, outbound bool, currencyID byte, chAddr string) error
- func (m *PaychMonitorImpl) Shutdown()
- func (m *PaychMonitorImpl) Track(ctx context.Context, outbound bool, currencyID byte, chAddr string, ...) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Opts ¶
type Opts struct { // The datastore path of the signer. Path string // The check frequency of payment channels. CheckFreq time.Duration }
Opts is the options for paych monitor.
type PaychMonitor ¶
type PaychMonitor interface { // Track starts tracking a payment channel. // // @input - context, if it is outbound channel, currency id, channel address, settlement time. // // @output - error. Track(ctx context.Context, outbound bool, currencyID byte, chAddr string, settlement time.Time) error // Check checks the current settlement of a payment channel. // // @input - context, if it is outbound channel, currency id, channel address. // // @output - last update time, settlement time, error. Check(ctx context.Context, outbound bool, currencyID byte, chAddr string) (time.Time, time.Time, error) // Renew renews a payment channel. // // @input - context, if it is outbound channel, currency id, channel address, new settlement time. // // @output - error. Renew(ctx context.Context, outbound bool, currencyID byte, chAddr string, newSettlement time.Time) error // Retire retires a payment channel. // // @input - context, if it is outbound channel, currency id, channel address. // // @output - error. Retire(ctx context.Context, outbound bool, currencyID byte, chAddr string) error }
PaychMonitor is used to track and monitor all payment channels. Once a payment channel is non-active, it will send request to payment manager for retirement.
type PaychMonitorImpl ¶
type PaychMonitorImpl struct {
// contains filtered or unexported fields
}
PaychMonitorImpl implements the PaychMonitor interface.
func NewPaychMonitorImpl ¶
func NewPaychMonitorImpl(ctx context.Context, pam paymgr.PaymentManager, transactor trans.Transactor, opts Opts) (*PaychMonitorImpl, error)
NewPaychMonitorImpl creates a new PaychMonitorImpl.
@input - context, payment manager, transactor, options.
@output - paych monitor, error.
func (*PaychMonitorImpl) Check ¶
func (m *PaychMonitorImpl) Check(ctx context.Context, outbound bool, currencyID byte, chAddr string) (time.Time, time.Time, error)
Check checks the current settlement of a payment channel.
@input - context, if it is outbound channel, currency id, channel address.
@output - last update time, settlement time, error.
func (*PaychMonitorImpl) Renew ¶
func (m *PaychMonitorImpl) Renew(ctx context.Context, outbound bool, currencyID byte, chAddr string, newSettlement time.Time) error
Renew renews a payment channel.
@input - context, if it is outbound channel, currency id, channel address, new settlement time.
@output - error.
func (*PaychMonitorImpl) Retire ¶
func (m *PaychMonitorImpl) Retire(ctx context.Context, outbound bool, currencyID byte, chAddr string) error
Retire retires a payment channel.
@input - context, if it is outbound channel, currency id, channel address.
@output - error.
func (*PaychMonitorImpl) Shutdown ¶
func (m *PaychMonitorImpl) Shutdown()
Shutdown safely shuts down the component.
func (*PaychMonitorImpl) Track ¶
func (m *PaychMonitorImpl) Track(ctx context.Context, outbound bool, currencyID byte, chAddr string, settlement time.Time) error
Track starts tracking a payment channel.
@input - context, if it is outbound channel, currency id, peer address, channel address, settlement time.
@output - error.