2019-08-20 16:18:15 +00:00
|
|
|
## Nim-LibP2P
|
2019-09-24 17:48:23 +00:00
|
|
|
## Copyright (c) 2019 Status Research & Development GmbH
|
2019-08-20 16:18:15 +00:00
|
|
|
## Licensed under either of
|
|
|
|
## * Apache License, version 2.0, ([LICENSE-APACHE](LICENSE-APACHE))
|
|
|
|
## * MIT license ([LICENSE-MIT](LICENSE-MIT))
|
|
|
|
## at your option.
|
|
|
|
## This file may not be copied, modified, or distributed except according to
|
|
|
|
## those terms.
|
|
|
|
|
2019-09-11 16:14:20 +00:00
|
|
|
import options
|
2019-08-20 16:18:15 +00:00
|
|
|
import peer, multiaddress
|
|
|
|
|
2019-12-04 04:44:54 +00:00
|
|
|
type
|
|
|
|
PeerInfo* = object of RootObj
|
|
|
|
peerId*: Option[PeerID]
|
|
|
|
addrs*: seq[MultiAddress]
|
|
|
|
protocols*: seq[string]
|
|
|
|
|
|
|
|
proc id*(p: PeerInfo): string =
|
|
|
|
if p.peerId.isSome:
|
|
|
|
result = p.peerId.get().pretty
|
|
|
|
|
|
|
|
proc `$`*(p: PeerInfo): string =
|
|
|
|
if p.peerId.isSome:
|
|
|
|
result.add("PeerID: ")
|
|
|
|
result.add(p.id & "\n")
|
|
|
|
|
|
|
|
if p.addrs.len > 0:
|
|
|
|
result.add("Peer Addrs: ")
|
|
|
|
for a in p.addrs:
|
|
|
|
result.add($a & "\n")
|
|
|
|
|
|
|
|
if p.protocols.len > 0:
|
|
|
|
result.add("Protocols: ")
|
|
|
|
for proto in p.protocols:
|
|
|
|
result.add(proto & "\n")
|