loop

package
v0.0.0-...-9933dd3 Latest Latest
Warning

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

Go to latest
Published: Jan 22, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrInvalidStatus = errors.New("invalid status")

Functions

This section is empty.

Types

type Logger

type Logger interface {
	Info(s string)
	Warn(s string)
	Error(s string)
}

type Loop

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

func NewLoop

func NewLoop(settings settings.Updater, providers updater.Providers,
	storage updater.Storage, client *http.Client, logger Logger,
) *Loop

func (*Loop) GetSettings

func (l *Loop) GetSettings() (settings settings.Updater)

func (*Loop) GetStatus

func (l *Loop) GetStatus() (status models.LoopStatus)

func (*Loop) Run

func (l *Loop) Run(ctx context.Context, done chan<- struct{})

func (*Loop) RunRestartTicker

func (l *Loop) RunRestartTicker(ctx context.Context, done chan<- struct{})

func (*Loop) SetSettings

func (l *Loop) SetSettings(settings settings.Updater) (outcome string)

func (*Loop) SetStatus

func (l *Loop) SetStatus(ctx context.Context, status models.LoopStatus) (outcome string, err error)

type Updater

type Updater interface {
	UpdateServers(ctx context.Context, providers []string, minRatio float64) (err error)
}

Jump to

Keyboard shortcuts

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