GetNodeAddrCache gets node addr by node id, if cache missed try RPC.
(id *proto.RawNodeID)
| 89 | |
| 90 | // GetNodeAddrCache gets node addr by node id, if cache missed try RPC. |
| 91 | func GetNodeAddrCache(id *proto.RawNodeID) (addr string, err error) { |
| 92 | initResolver() |
| 93 | if id == nil { |
| 94 | return "", ErrNilNodeID |
| 95 | } |
| 96 | resolver.RLock() |
| 97 | defer resolver.RUnlock() |
| 98 | addr, ok := resolver.cache[*id] |
| 99 | if !ok { |
| 100 | return "", ErrUnknownNodeID |
| 101 | } |
| 102 | return |
| 103 | } |
| 104 | |
| 105 | // setNodeAddrCache sets node id and addr. |
| 106 | func setNodeAddrCache(id *proto.RawNodeID, addr string) (err error) { |