Commit 92ec4b2d authored by Can ZHANG's avatar Can ZHANG
Browse files

Updates due to code review

parent 96df62bd
...@@ -5,8 +5,6 @@ import ( ...@@ -5,8 +5,6 @@ import (
"io" "io"
"time" "time"
identify "github.com/libp2p/go-libp2p/p2p/protocol/identify"
logging "github.com/ipfs/go-log" logging "github.com/ipfs/go-log"
goprocess "github.com/jbenet/goprocess" goprocess "github.com/jbenet/goprocess"
goprocessctx "github.com/jbenet/goprocess/context" goprocessctx "github.com/jbenet/goprocess/context"
...@@ -15,6 +13,7 @@ import ( ...@@ -15,6 +13,7 @@ import (
peer "github.com/libp2p/go-libp2p-peer" peer "github.com/libp2p/go-libp2p-peer"
pstore "github.com/libp2p/go-libp2p-peerstore" pstore "github.com/libp2p/go-libp2p-peerstore"
protocol "github.com/libp2p/go-libp2p-protocol" protocol "github.com/libp2p/go-libp2p-protocol"
identify "github.com/libp2p/go-libp2p/p2p/protocol/identify"
ma "github.com/multiformats/go-multiaddr" ma "github.com/multiformats/go-multiaddr"
madns "github.com/multiformats/go-multiaddr-dns" madns "github.com/multiformats/go-multiaddr-dns"
msmux "github.com/multiformats/go-multistream" msmux "github.com/multiformats/go-multistream"
......
...@@ -62,7 +62,6 @@ func (oas *ObservedAddrSet) Addrs() (addrs []ma.Multiaddr) { ...@@ -62,7 +62,6 @@ func (oas *ObservedAddrSet) Addrs() (addrs []ma.Multiaddr) {
} }
now := time.Now() now := time.Now()
filteredAddrMap := make(map[string][]*ObservedAddr)
for local, observedAddrs := range oas.addrs { for local, observedAddrs := range oas.addrs {
filteredAddrs := make([]*ObservedAddr, 0, len(observedAddrs)) filteredAddrs := make([]*ObservedAddr, 0, len(observedAddrs))
for _, a := range observedAddrs { for _, a := range observedAddrs {
...@@ -74,9 +73,8 @@ func (oas *ObservedAddrSet) Addrs() (addrs []ma.Multiaddr) { ...@@ -74,9 +73,8 @@ func (oas *ObservedAddrSet) Addrs() (addrs []ma.Multiaddr) {
} }
} }
} }
filteredAddrMap[local] = filteredAddrs oas.addrs[local] = filteredAddrs
} }
oas.addrs = filteredAddrMap
return addrs return addrs
} }
...@@ -95,36 +93,28 @@ func (oas *ObservedAddrSet) Add(observed, local, observer ma.Multiaddr, ...@@ -95,36 +93,28 @@ func (oas *ObservedAddrSet) Add(observed, local, observer ma.Multiaddr,
now := time.Now() now := time.Now()
observerString := observerGroup(observer) observerString := observerGroup(observer)
localString := local.String() localString := local.String()
observedAddr := &ObservedAddr{ ob := observation{
Addr: observed, seenTime: now,
SeenBy: map[string]observation{ connDirection: direction,
observerString: {
seenTime: now,
connDirection: direction,
},
},
LastSeen: now,
} }
observedAddrs, found := oas.addrs[localString] observedAddrs := oas.addrs[localString]
// map key not exist yet, init with new values
if !found {
oas.addrs[localString] = []*ObservedAddr{observedAddr}
return
}
// check if observed address seen yet, if so, update it // check if observed address seen yet, if so, update it
for i, previousObserved := range observedAddrs { for i, previousObserved := range observedAddrs {
if previousObserved.Addr.Equal(observed) { if previousObserved.Addr.Equal(observed) {
observedAddrs[i].SeenBy[observerString] = observation{ observedAddrs[i].SeenBy[observerString] = ob
seenTime: now,
connDirection: direction,
}
observedAddrs[i].LastSeen = now observedAddrs[i].LastSeen = now
return return
} }
} }
// observed address not seen yet, append it // observed address not seen yet, append it
oas.addrs[localString] = append(oas.addrs[localString], observedAddr) oas.addrs[localString] = append(oas.addrs[localString], &ObservedAddr{
Addr: observed,
SeenBy: map[string]observation{
observerString: ob,
},
LastSeen: now,
})
} }
// observerGroup is a function that determines what part of // observerGroup is a function that determines what part of
......
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