From b658607a6f99882f9638b33de74a8c5f063da2c8 Mon Sep 17 00:00:00 2001 From: Sam Whited Date: Sun, 19 Jun 2016 11:44:31 -0500 Subject: [PATCH] Refactor dial to use NewConn --- dial1_6.go | 26 +++++++------------------- dial1_7.go | 19 ++++--------------- 2 files changed, 11 insertions(+), 34 deletions(-) diff --git a/dial1_6.go b/dial1_6.go index a19b451..f707912 100644 --- a/dial1_6.go +++ b/dial1_6.go @@ -42,10 +42,6 @@ func (d *Dialer) dial( ctx = subCtx } - c := &Conn{ - config: config, - } - if d.NoLookup { p, err := lookupPort(network, config.connType()) if err != nil { @@ -58,11 +54,10 @@ func (d *Dialer) dial( if err != nil { return nil, err } - c.rwc = conn - return c, nil + return NewConn(ctx, config, conn) } - addrs, err := lookupService(config.connType(), network, c.RemoteAddr()) + addrs, err := lookupService(config.connType(), network, config.Location) if err != nil { return nil, err } @@ -70,22 +65,15 @@ func (d *Dialer) dial( // Try dialing all of the SRV records we know about, breaking as soon as the // connection is established. for _, addr := range addrs { - if conn, e := d.Dialer.Dial( - network, net.JoinHostPort( - addr.Target, strconv.FormatUint(uint64(addr.Port), 10), - ), + if conn, e := d.Dialer.Dial(network, net.JoinHostPort( + addr.Target, strconv.FormatUint(uint64(addr.Port), 10), + ), ); e != nil { err = e continue } else { - err = nil - c.rwc = conn - break + return NewConn(ctx, config, conn) } } - if err != nil { - return nil, err - } - - return c, nil + return nil, err } diff --git a/dial1_7.go b/dial1_7.go index 7bd5314..f062a7c 100644 --- a/dial1_7.go +++ b/dial1_7.go @@ -18,10 +18,6 @@ func (d *Dialer) dial( panic("xmpp.Dial: nil context") } - c := &Conn{ - config: config, - } - if d.NoLookup { p, err := lookupPort(network, config.connType()) if err != nil { @@ -34,11 +30,10 @@ func (d *Dialer) dial( if err != nil { return nil, err } - c.rwc = conn - return c, nil + return NewConn(ctx, config, conn) } - addrs, err := lookupService(config.connType(), network, c.RemoteAddr()) + addrs, err := lookupService(config.connType(), network, config.Location) if err != nil { return nil, err } @@ -54,14 +49,8 @@ func (d *Dialer) dial( err = e continue } else { - err = nil - c.rwc = conn - break + return NewConn(ctx, config, conn) } } - if err != nil { - return nil, err - } - - return c, nil + return nil, err } -- 2.34.2