Changeset 457 in code for trunk


Ignore:
Timestamp:
Mar 9, 2021, 5:55:34 PM (4 years ago)
Author:
contact
Message:

Add Network.{URL,GetUsername,GetRealname}

Just a bunch of helpers that can be re-used.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/db.go

    r434 r457  
    55        "fmt"
    66        "math"
     7        "net/url"
    78        "strings"
    89        "sync"
     
    5354        }
    5455        return net.Addr
     56}
     57
     58func (net *Network) URL() (*url.URL, error) {
     59        s := net.Addr
     60        if !strings.Contains(s, "://") {
     61                // This is a raw domain name, make it an URL with the default scheme
     62                s = "ircs://" + s
     63        }
     64
     65        u, err := url.Parse(s)
     66        if err != nil {
     67                return nil, fmt.Errorf("failed to parse upstream server URL: %v", err)
     68        }
     69
     70        return u, nil
     71}
     72
     73func (net *Network) GetUsername() string {
     74        if net.Username != "" {
     75                return net.Username
     76        }
     77        return net.Nick
     78}
     79
     80func (net *Network) GetRealname() string {
     81        if net.Realname != "" {
     82                return net.Realname
     83        }
     84        return net.Nick
    5585}
    5686
  • trunk/upstream.go

    r455 r457  
    1111        "io"
    1212        "net"
    13         "net/url"
    1413        "strconv"
    1514        "strings"
     
    110109        dialer := net.Dialer{Timeout: connectTimeout}
    111110
    112         s := network.Addr
    113         if !strings.Contains(s, "://") {
    114                 // This is a raw domain name, make it an URL with the default scheme
    115                 s = "ircs://" + s
    116         }
    117 
    118         u, err := url.Parse(s)
     111        u, err := network.URL()
    119112        if err != nil {
    120                 return nil, fmt.Errorf("failed to parse upstream server URL: %v", err)
     113                return nil, err
    121114        }
    122115
     
    15671560func (uc *upstreamConn) register() {
    15681561        uc.nick = uc.network.Nick
    1569         uc.username = uc.network.Username
    1570         if uc.username == "" {
    1571                 uc.username = uc.nick
    1572         }
    1573         uc.realname = uc.network.Realname
    1574         if uc.realname == "" {
    1575                 uc.realname = uc.nick
    1576         }
     1562        uc.username = uc.network.GetUsername()
     1563        uc.realname = uc.network.GetRealname()
    15771564
    15781565        uc.SendMessage(&irc.Message{
Note: See TracChangeset for help on using the changeset viewer.