Peer Discovery Interface (#123)
* added file * basic interface modeled on go repo * fixed linting * updated based on comments
This commit is contained in:
parent
e3e3ac30b1
commit
17c778de15
16
libp2p/discovery/advertiser_interface.py
Normal file
16
libp2p/discovery/advertiser_interface.py
Normal file
|
@ -0,0 +1,16 @@
|
|||
from abc import ABC, abstractmethod
|
||||
# pylint: disable=too-few-public-methods
|
||||
|
||||
class IAdvertiser(ABC):
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def advertise(self, service):
|
||||
"""
|
||||
Advertise providing a specific service to the network
|
||||
:param service: service that you provide
|
||||
:raise Exception: network error
|
||||
"""
|
||||
|
17
libp2p/discovery/discoverer_interface.py
Normal file
17
libp2p/discovery/discoverer_interface.py
Normal file
|
@ -0,0 +1,17 @@
|
|||
from abc import ABC, abstractmethod
|
||||
# pylint: disable=too-few-public-methods
|
||||
|
||||
|
||||
class IDiscoverer(ABC):
|
||||
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def find_peers(self, service):
|
||||
"""
|
||||
Find peers on the networking providing a particular service
|
||||
:param service: service that peers must provide
|
||||
:return: PeerInfo generator that yields PeerInfo objects for discovered peers
|
||||
:raise Exception: network error
|
||||
"""
|
Loading…
Reference in New Issue
Block a user