py-libp2p/peer
Christophe de Carvalho 611de28aca Add basic support for multiaddr addresses and improvement around peer id (#75)
* Improved peer ID construction and usage

* peer id object is directly passed to the network

no need to cast from a string to an ID

* don't base64 encode the peer id when loading from public key

* use proper multiaddr address

- keep multiaddr object into peerstore instead of string
- update network code to use new multiaddr lib
- update tests and example

* don't instanciate peerstore object in constructor

This has side effect where the same peerstore
is used for different instance of Libp2p

* add connect method to basic_host

* use zaibon's fork of sbuss/py-multiaddr

* lint
2018-11-29 10:06:40 -05:00
..
__init__.py added linter 2018-10-15 01:52:25 -04:00
addrbook_interface.py WIP CI Build Errors (#76) 2018-11-26 18:24:29 -05:00
id.py Add basic support for multiaddr addresses and improvement around peer id (#75) 2018-11-29 10:06:40 -05:00
peerdata_interface.py WIP CI Build Errors (#76) 2018-11-26 18:24:29 -05:00
peerdata.py WIP CI Build Errors (#76) 2018-11-26 18:24:29 -05:00
peerinfo.py Add basic support for multiaddr addresses and improvement around peer id (#75) 2018-11-29 10:06:40 -05:00
peermetadata_interface.py WIP CI Build Errors (#76) 2018-11-26 18:24:29 -05:00
peerstore_interface.py WIP CI Build Errors (#76) 2018-11-26 18:24:29 -05:00
peerstore.py Add basic support for multiaddr addresses and improvement around peer id (#75) 2018-11-29 10:06:40 -05:00
README.md Change peerinfo to a class rather than a dictionary 2018-10-29 14:09:47 +01:00

PeerStore

The PeerStore contains a mapping of peer IDs to PeerData objects. Each PeerData object represents a peer, and each PeerData contains a collection of protocols, addresses, and a mapping of metadata. PeerStore implements the IPeerStore (peer protocols), IAddrBook (address book), and IPeerMetadata (peer metadata) interfaces, which allows the peer store to effectively function as a dictionary for peer ID to protocol, address, and metadata.

Note: PeerInfo represents a read-only summary of a PeerData object. Only the attributes assigned in PeerInfo are readable by references to PeerInfo objects.