Files
gluetun/internal/server/interfaces.go

35 lines
810 B
Go
Raw Normal View History

package server
import (
"context"
"github.com/qdm12/gluetun/internal/configuration/settings"
"github.com/qdm12/gluetun/internal/models"
)
type VPNLooper interface {
GetStatus() (status models.LoopStatus)
ApplyStatus(ctx context.Context, status models.LoopStatus) (
outcome string, err error)
GetSettings() (settings settings.VPN)
SetSettings(ctx context.Context, settings settings.VPN) (outcome string)
}
type DNSLoop interface {
ApplyStatus(ctx context.Context, status models.LoopStatus) (
outcome string, err error)
GetStatus() (status models.LoopStatus)
}
type PortForwardedGetter interface {
GetPortForwarded() (portForwarded uint16)
}
type PublicIPLoop interface {
GetData() (data models.PublicIP)
}
type Storage interface {
GetFilterChoices(provider string) models.FilterChoices
}