Maint: package local narrow Logger interfaces

This commit is contained in:
Quentin McGaw (desktop)
2021-09-23 16:58:21 +00:00
parent d8e008606f
commit cf95692b93
57 changed files with 414 additions and 154 deletions

View File

@@ -16,8 +16,8 @@ import (
"time"
"github.com/qdm12/gluetun/internal/constants"
"github.com/qdm12/gluetun/internal/provider/utils"
"github.com/qdm12/golibs/format"
"github.com/qdm12/golibs/logging"
)
var (
@@ -31,13 +31,13 @@ var (
// PortForward obtains a VPN server side port forwarded from PIA.
func (p *PIA) PortForward(ctx context.Context, client *http.Client,
logger logging.Logger, gateway net.IP, serverName string) (
logger utils.Logger, gateway net.IP, serverName string) (
port uint16, err error) {
server := constants.PIAServerWhereName(p.servers, serverName)
if !server.PortForward {
logger.Error("The server " + serverName +
" (region " + server.Region + ") does not support port forwarding")
return
return 0, nil
}
if gateway == nil {
return 0, ErrGatewayIPIsNil
@@ -92,8 +92,7 @@ var (
)
func (p *PIA) KeepPortForward(ctx context.Context, client *http.Client,
logger logging.Logger, port uint16, gateway net.IP, serverName string) (
err error) {
port uint16, gateway net.IP, serverName string) (err error) {
privateIPClient, err := newHTTPClient(serverName)
if err != nil {
return fmt.Errorf("%w: %s", ErrCreateHTTPClient, err)

View File

@@ -26,11 +26,11 @@ import (
"github.com/qdm12/gluetun/internal/provider/purevpn"
"github.com/qdm12/gluetun/internal/provider/surfshark"
"github.com/qdm12/gluetun/internal/provider/torguard"
"github.com/qdm12/gluetun/internal/provider/utils"
"github.com/qdm12/gluetun/internal/provider/vpnunlimited"
"github.com/qdm12/gluetun/internal/provider/vyprvpn"
"github.com/qdm12/gluetun/internal/provider/wevpn"
"github.com/qdm12/gluetun/internal/provider/windscribe"
"github.com/qdm12/golibs/logging"
)
// Provider contains methods to read and modify the openvpn configuration to connect as a client.
@@ -42,11 +42,10 @@ type Provider interface {
type PortForwarder interface {
PortForward(ctx context.Context, client *http.Client,
logger logging.Logger, gateway net.IP, serverName string) (
logger utils.Logger, gateway net.IP, serverName string) (
port uint16, err error)
KeepPortForward(ctx context.Context, client *http.Client,
logger logging.Logger, port uint16, gateway net.IP, serverName string) (
err error)
port uint16, gateway net.IP, serverName string) (err error)
}
func New(provider string, allServers models.AllServers, timeNow func() time.Time) Provider {

View File

@@ -0,0 +1,7 @@
package utils
type Logger interface {
Info(s string)
Warn(s string)
Error(s string)
}

View File

@@ -6,17 +6,14 @@ import (
"fmt"
"net"
"net/http"
"github.com/qdm12/golibs/logging"
)
type NoPortForwarder interface {
PortForward(ctx context.Context, client *http.Client,
logger logging.Logger, gateway net.IP, serverName string) (
logger Logger, gateway net.IP, serverName string) (
port uint16, err error)
KeepPortForward(ctx context.Context, client *http.Client,
logger logging.Logger, port uint16, gateway net.IP, serverName string) (
err error)
port uint16, gateway net.IP, serverName string) (err error)
}
type NoPortForwarding struct {
@@ -32,13 +29,11 @@ func NewNoPortForwarding(providerName string) *NoPortForwarding {
var ErrPortForwardingNotSupported = errors.New("custom port forwarding obtention is not supported")
func (n *NoPortForwarding) PortForward(ctx context.Context, client *http.Client,
logger logging.Logger, gateway net.IP, serverName string) (
port uint16, err error) {
logger Logger, gateway net.IP, serverName string) (port uint16, err error) {
return 0, fmt.Errorf("%w: for %s", ErrPortForwardingNotSupported, n.providerName)
}
func (n *NoPortForwarding) KeepPortForward(ctx context.Context, client *http.Client,
logger logging.Logger, port uint16, gateway net.IP, serverName string) (
err error) {
port uint16, gateway net.IP, serverName string) (err error) {
return fmt.Errorf("%w: for %s", ErrPortForwardingNotSupported, n.providerName)
}