Commit 720ad2f6 authored by Geoff Simmons's avatar Geoff Simmons

Add a String() method to vcl.Address.

parent a5c865d8
...@@ -40,7 +40,6 @@ import ( ...@@ -40,7 +40,6 @@ import (
"os" "os"
"reflect" "reflect"
"regexp" "regexp"
"strconv"
"strings" "strings"
"sync" "sync"
"time" "time"
...@@ -451,7 +450,7 @@ func (vc *Controller) updateVarnishSvcAddrs(key string, addrs []vcl.Address, ...@@ -451,7 +450,7 @@ func (vc *Controller) updateVarnishSvcAddrs(key string, addrs []vcl.Address,
updateAddrs := make(map[string]struct{}) updateAddrs := make(map[string]struct{})
prevAddrs := make(map[string]*varnishInst) prevAddrs := make(map[string]*varnishInst)
for _, addr := range addrs { for _, addr := range addrs {
key := addr.IP + ":" + strconv.Itoa(int(addr.Port)) key := addr.String()
updateAddrs[key] = struct{}{} updateAddrs[key] = struct{}{}
} }
for _, inst := range svc.instances { for _, inst := range svc.instances {
...@@ -532,7 +531,7 @@ func (vc *Controller) AddOrUpdateVarnishSvc(key string, addrs []vcl.Address, ...@@ -532,7 +531,7 @@ func (vc *Controller) AddOrUpdateVarnishSvc(key string, addrs []vcl.Address,
var instances []*varnishInst var instances []*varnishInst
svc = &varnishSvc{} svc = &varnishSvc{}
for _, addr := range addrs { for _, addr := range addrs {
admAddr := addr.IP + ":" + strconv.Itoa(int(addr.Port)) admAddr := addr.String()
instance := &varnishInst{ instance := &varnishInst{
addr: admAddr, addr: admAddr,
admMtx: &sync.Mutex{}, admMtx: &sync.Mutex{},
...@@ -717,7 +716,7 @@ func (vc *Controller) HasConfig(svcKey string, addrs []vcl.Address, ...@@ -717,7 +716,7 @@ func (vc *Controller) HasConfig(svcKey string, addrs []vcl.Address,
} }
newAddrs := make(map[string]struct{}) newAddrs := make(map[string]struct{})
for _, addr := range addrs { for _, addr := range addrs {
a := addr.IP + ":" + strconv.Itoa(int(addr.Port)) a := addr.String()
newAddrs[a] = struct{}{} newAddrs[a] = struct{}{}
} }
curAddrs := make(map[string]struct{}) curAddrs := make(map[string]struct{})
......
...@@ -30,7 +30,6 @@ package varnish ...@@ -30,7 +30,6 @@ package varnish
import ( import (
"fmt" "fmt"
"strconv"
"strings" "strings"
"testing" "testing"
...@@ -220,9 +219,7 @@ func TestHasConfig(t *testing.T) { ...@@ -220,9 +219,7 @@ func TestHasConfig(t *testing.T) {
} }
instances := make([]*varnishInst, len(svcAddrs)) instances := make([]*varnishInst, len(svcAddrs))
for i, addr := range svcAddrs { for i, addr := range svcAddrs {
instances[i] = &varnishInst{ instances[i] = &varnishInst{addr: addr.String()}
addr: addr.IP + ":" + strconv.Itoa(int(addr.Port)),
}
} }
vSvc := varnishSvc{ vSvc := varnishSvc{
spec: &spec, spec: &spec,
......
...@@ -35,6 +35,7 @@ import ( ...@@ -35,6 +35,7 @@ import (
"math" "math"
"math/big" "math/big"
"sort" "sort"
"strconv"
) )
func hashUint16(u16 uint16, hash hash.Hash) { func hashUint16(u16 uint16, hash hash.Hash) {
...@@ -51,6 +52,10 @@ type Address struct { ...@@ -51,6 +52,10 @@ type Address struct {
Port int32 Port int32
} }
func (addr Address) String() string {
return addr.IP + ":" + strconv.Itoa(int(addr.Port))
}
func (addr Address) hash(hash hash.Hash) { func (addr Address) hash(hash hash.Hash) {
portBytes := make([]byte, 4) portBytes := make([]byte, 4)
binary.BigEndian.PutUint32(portBytes, uint32(addr.Port)) binary.BigEndian.PutUint32(portBytes, uint32(addr.Port))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment