cleanup(netx): remove unused ChainResolver (#657)
This is another cleanup point mentioned by https://github.com/ooni/probe/issues/1956. While there, fix a bunch of comments in jafar that were incorrectly referring to the netx package name.
This commit is contained in:
parent
566c6b246a
commit
423a3feacc
|
@ -52,12 +52,12 @@ var DefaultClient = Must(NewClient(""))
|
||||||
|
|
||||||
var _ model.Resolver = DefaultClient
|
var _ model.Resolver = DefaultClient
|
||||||
|
|
||||||
// Address implements netx.Resolver.Address
|
// Address implements Resolver.Address
|
||||||
func (c *Client) Address() string {
|
func (c *Client) Address() string {
|
||||||
return c.dnsClient.Address()
|
return c.dnsClient.Address()
|
||||||
}
|
}
|
||||||
|
|
||||||
// LookupHost implements netx.Resolver.LookupHost
|
// LookupHost implements Resolver.LookupHost
|
||||||
func (c *Client) LookupHost(ctx context.Context, domain string) ([]string, error) {
|
func (c *Client) LookupHost(ctx context.Context, domain string) ([]string, error) {
|
||||||
return c.dnsClient.LookupHost(ctx, domain)
|
return c.dnsClient.LookupHost(ctx, domain)
|
||||||
}
|
}
|
||||||
|
@ -67,27 +67,27 @@ func (c *Client) LookupHTTPS(ctx context.Context, domain string) (*model.HTTPSSv
|
||||||
return nil, errors.New("not implemented")
|
return nil, errors.New("not implemented")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Network implements netx.Resolver.Network
|
// Network implements Resolver.Network
|
||||||
func (c *Client) Network() string {
|
func (c *Client) Network() string {
|
||||||
return c.dnsClient.Network()
|
return c.dnsClient.Network()
|
||||||
}
|
}
|
||||||
|
|
||||||
var _ model.Dialer = DefaultClient
|
var _ model.Dialer = DefaultClient
|
||||||
|
|
||||||
// DialContext implements netx.Dialer.DialContext
|
// DialContext implements Dialer.DialContext
|
||||||
func (c *Client) DialContext(ctx context.Context, network, address string) (net.Conn, error) {
|
func (c *Client) DialContext(ctx context.Context, network, address string) (net.Conn, error) {
|
||||||
return c.dialer.DialContext(ctx, network, address)
|
return c.dialer.DialContext(ctx, network, address)
|
||||||
}
|
}
|
||||||
|
|
||||||
var _ model.HTTPTransport = DefaultClient
|
var _ model.HTTPTransport = DefaultClient
|
||||||
|
|
||||||
// CloseIdleConnections implement netx.HTTPRoundTripper.CloseIdleConnections
|
// CloseIdleConnections implement HTTPRoundTripper.CloseIdleConnections
|
||||||
func (c *Client) CloseIdleConnections() {
|
func (c *Client) CloseIdleConnections() {
|
||||||
c.dnsClient.CloseIdleConnections()
|
c.dnsClient.CloseIdleConnections()
|
||||||
c.httpTransport.CloseIdleConnections()
|
c.httpTransport.CloseIdleConnections()
|
||||||
}
|
}
|
||||||
|
|
||||||
// RoundTrip implement netx.HTTPRoundTripper.RoundTrip
|
// RoundTrip implement HTTPRoundTripper.RoundTrip
|
||||||
func (c *Client) RoundTrip(req *http.Request) (*http.Response, error) {
|
func (c *Client) RoundTrip(req *http.Request) (*http.Response, error) {
|
||||||
return c.httpTransport.RoundTrip(req)
|
return c.httpTransport.RoundTrip(req)
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,51 +0,0 @@
|
||||||
package resolver
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
|
|
||||||
"github.com/ooni/probe-cli/v3/internal/model"
|
|
||||||
)
|
|
||||||
|
|
||||||
// ChainResolver is a chain resolver. The primary resolver is used first and, if that
|
|
||||||
// fails, we then attempt with the secondary resolver.
|
|
||||||
type ChainResolver struct {
|
|
||||||
Primary model.Resolver
|
|
||||||
Secondary model.Resolver
|
|
||||||
}
|
|
||||||
|
|
||||||
// LookupHost implements Resolver.LookupHost
|
|
||||||
func (c ChainResolver) LookupHost(ctx context.Context, hostname string) ([]string, error) {
|
|
||||||
addrs, err := c.Primary.LookupHost(ctx, hostname)
|
|
||||||
if err != nil {
|
|
||||||
addrs, err = c.Secondary.LookupHost(ctx, hostname)
|
|
||||||
}
|
|
||||||
return addrs, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Network implements Resolver.Network
|
|
||||||
func (c ChainResolver) Network() string {
|
|
||||||
return "chain"
|
|
||||||
}
|
|
||||||
|
|
||||||
// Address implements Resolver.Address
|
|
||||||
func (c ChainResolver) Address() string {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
// CloseIdleConnections implements Resolver.CloseIdleConnections.
|
|
||||||
func (c ChainResolver) CloseIdleConnections() {
|
|
||||||
c.Primary.CloseIdleConnections()
|
|
||||||
c.Secondary.CloseIdleConnections()
|
|
||||||
}
|
|
||||||
|
|
||||||
// LookupHTTPS implements Resolver.LookupHTTPS
|
|
||||||
func (c ChainResolver) LookupHTTPS(
|
|
||||||
ctx context.Context, domain string) (*model.HTTPSSvc, error) {
|
|
||||||
https, err := c.Primary.LookupHTTPS(ctx, domain)
|
|
||||||
if err != nil {
|
|
||||||
https, err = c.Secondary.LookupHTTPS(ctx, domain)
|
|
||||||
}
|
|
||||||
return https, err
|
|
||||||
}
|
|
||||||
|
|
||||||
var _ model.Resolver = ChainResolver{}
|
|
|
@ -1,29 +0,0 @@
|
||||||
package resolver_test
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
"testing"
|
|
||||||
|
|
||||||
"github.com/ooni/probe-cli/v3/internal/engine/netx/resolver"
|
|
||||||
"github.com/ooni/probe-cli/v3/internal/netxlite"
|
|
||||||
)
|
|
||||||
|
|
||||||
func TestChainLookupHost(t *testing.T) {
|
|
||||||
r := resolver.ChainResolver{
|
|
||||||
Primary: resolver.NewFakeResolverThatFails(),
|
|
||||||
Secondary: &netxlite.ResolverSystem{},
|
|
||||||
}
|
|
||||||
if r.Address() != "" {
|
|
||||||
t.Fatal("invalid address")
|
|
||||||
}
|
|
||||||
if r.Network() != "chain" {
|
|
||||||
t.Fatal("invalid network")
|
|
||||||
}
|
|
||||||
addrs, err := r.LookupHost(context.Background(), "www.google.com")
|
|
||||||
if err != nil {
|
|
||||||
t.Fatal(err)
|
|
||||||
}
|
|
||||||
if addrs == nil {
|
|
||||||
t.Fatal("expect non nil return value here")
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user