Files
gluetun/internal/vpn/state/state.go
Quentin McGaw 578ef768ab chore(all): return concrete types, accept interfaces
- Remove exported interfaces unused locally
- Define interfaces to accept arguments
- Return concrete types, not interfaces
2022-06-11 01:34:30 +00:00

29 lines
519 B
Go

package state
import (
"context"
"sync"
"github.com/qdm12/gluetun/internal/configuration/settings"
"github.com/qdm12/gluetun/internal/models"
)
func New(statusApplier StatusApplier, vpn settings.VPN) *State {
return &State{
statusApplier: statusApplier,
vpn: vpn,
}
}
type State struct {
statusApplier StatusApplier
vpn settings.VPN
settingsMu sync.RWMutex
}
type StatusApplier interface {
ApplyStatus(ctx context.Context, status models.LoopStatus) (
outcome string, err error)
}