@cryptotaxi247 / kubo / commits / c98964679

refac(gcr/s,c) use PeerRoutingInfo

Brian Tiger Chow committed Jan 30, 2015 at 08:19 UTC c98964679114737e8ec40ce599d20ca63455de6b
2 files changed +24 -5
routing/grandcentral/client.go
+10 -3
@@ -80,9 +80,16 @@ func (c *Client) GetValue(ctx context.Context, k u.Key) ([]byte, error) {
80
81 func (c *Client) Provide(ctx context.Context, k u.Key) error {
82 msg := pb.NewMessage(pb.Message_ADD_PROVIDER, string(k), 0)
83 - // TODO wrap this to hide the dialer and the local/remote peers
84 - msg.ProviderPeers = pb.PeerInfosToPBPeers(c.dialer, []peer.PeerInfo{peer.PeerInfo{ID: c.local}}) // FIXME how is connectedness defined for the local node
85 - return c.proxy.SendMessage(ctx, msg) // TODO wrap to hide remote
83 + // FIXME how is connectedness defined for the local node
84 + pri := []pb.PeerRoutingInfo{
85 + pb.PeerRoutingInfo{
86 + PeerInfo: peer.PeerInfo{
87 + ID: c.local,
88 + },
89 + },
90 + }
91 + msg.ProviderPeers = pb.PeerRoutingInfosToPBPeers(pri)
92 + return c.proxy.SendMessage(ctx, msg) // TODO wrap to hide remote
93 }
94
95 func (c *Client) FindPeer(ctx context.Context, id peer.ID) (peer.PeerInfo, error) {
routing/grandcentral/server.go
+14 -2
@@ -84,7 +84,13 @@ func (s *Server) handleMessage(
84
85 case dhtpb.Message_FIND_NODE:
86 p := s.peerstore.PeerInfo(peer.ID(req.GetKey()))
87 - response.CloserPeers = dhtpb.PeerInfosToPBPeers(s.dialer, []peer.PeerInfo{p})
87 + pri := []dhtpb.PeerRoutingInfo{
88 + dhtpb.PeerRoutingInfo{
89 + PeerInfo: p,
90 + // Connectedness: TODO
91 + },
92 + }
93 + response.CloserPeers = dhtpb.PeerRoutingInfosToPBPeers(pri)
94 return p.ID, response
95
96 case dhtpb.Message_ADD_PROVIDER:
@@ -116,7 +122,13 @@ func (s *Server) handleMessage(
122 dskey := util.Key(req.GetKey()).DsKey()
123 exists, err := s.datastore.Has(dskey)
124 if err == nil && exists {
119 - response.ProviderPeers = append(response.ProviderPeers, dhtpb.PeerInfosToPBPeers(s.dialer, []peer.PeerInfo{peer.PeerInfo{ID: s.local}})...)
125 + pri := []dhtpb.PeerRoutingInfo{
126 + dhtpb.PeerRoutingInfo{
127 + // Connectedness: TODO how is connectedness defined for the local node
128 + PeerInfo: peer.PeerInfo{ID: s.local},
129 + },
130 + }
131 + response.ProviderPeers = append(response.ProviderPeers, dhtpb.PeerRoutingInfosToPBPeers(pri)...)
132 }
133 // FIXME(btc) is this how we want to persist this data?
134 pkey := datastore.KeyWithNamespaces([]string{"routing", "providers", req.GetKey()})