本文整理汇总了Golang中github.com/degdb/degdb/protocol.Message.GetPeerRequest方法的典型用法代码示例。如果您正苦于以下问题:Golang Message.GetPeerRequest方法的具体用法?Golang Message.GetPeerRequest怎么用?Golang Message.GetPeerRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/degdb/degdb/protocol.Message
的用法示例。
在下文中一共展示了Message.GetPeerRequest方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: handlePeerRequest
func (s *Server) handlePeerRequest(conn *Conn, msg *protocol.Message) {
// TODO(d4l3k): Handle keyspace check.
req := msg.GetPeerRequest()
var peers []*protocol.Peer
for id, v := range s.Peers {
if conn.Peer.Id == id || v == nil {
continue
}
peers = append(peers, v.Peer)
if req.Limit > 0 && int32(len(peers)) >= req.Limit {
break
}
}
err := conn.Send(&protocol.Message{Message: &protocol.Message_PeerNotify{
PeerNotify: &protocol.PeerNotify{
Peers: peers,
}}})
if err != nil {
log.Printf("ERR sending PeerNotify: %s", err)
}
}