github.com/keltia/go-ipfs@v0.3.8-0.20150909044612-210793031c63/p2p/net/mock/mock_printer.go (about) 1 package mocknet 2 3 import ( 4 "fmt" 5 "io" 6 7 inet "github.com/ipfs/go-ipfs/p2p/net" 8 peer "github.com/ipfs/go-ipfs/p2p/peer" 9 ) 10 11 // separate object so our interfaces are separate :) 12 type printer struct { 13 w io.Writer 14 } 15 16 func (p *printer) MocknetLinks(mn Mocknet) { 17 links := mn.Links() 18 19 fmt.Fprintf(p.w, "Mocknet link map:\n") 20 for p1, lm := range links { 21 fmt.Fprintf(p.w, "\t%s linked to:\n", peer.ID(p1)) 22 for p2, l := range lm { 23 fmt.Fprintf(p.w, "\t\t%s (%d links)\n", peer.ID(p2), len(l)) 24 } 25 } 26 fmt.Fprintf(p.w, "\n") 27 } 28 29 func (p *printer) NetworkConns(ni inet.Network) { 30 31 fmt.Fprintf(p.w, "%s connected to:\n", ni.LocalPeer()) 32 for _, c := range ni.Conns() { 33 fmt.Fprintf(p.w, "\t%s (addr: %s)\n", c.RemotePeer(), c.RemoteMultiaddr()) 34 } 35 fmt.Fprintf(p.w, "\n") 36 }