Trait sc_network::service::traits::NetworkDHTProvider
source · pub trait NetworkDHTProvider {
// Required methods
fn get_value(&self, key: &KademliaKey);
fn put_value(&self, key: KademliaKey, value: Vec<u8>);
fn put_record_to(
&self,
record: Record,
peers: HashSet<PeerId>,
update_local_storage: bool,
);
fn store_record(
&self,
key: KademliaKey,
value: Vec<u8>,
publisher: Option<PeerId>,
expires: Option<Instant>,
);
fn start_providing(&self, key: KademliaKey);
fn stop_providing(&self, key: KademliaKey);
fn get_providers(&self, key: KademliaKey);
}
Expand description
Provides access to the networking DHT.
Required Methods§
sourcefn get_value(&self, key: &KademliaKey)
fn get_value(&self, key: &KademliaKey)
Start getting a value from the DHT.
sourcefn put_value(&self, key: KademliaKey, value: Vec<u8>)
fn put_value(&self, key: KademliaKey, value: Vec<u8>)
Start putting a value in the DHT.
sourcefn put_record_to(
&self,
record: Record,
peers: HashSet<PeerId>,
update_local_storage: bool,
)
fn put_record_to( &self, record: Record, peers: HashSet<PeerId>, update_local_storage: bool, )
Start putting the record to peers
.
If update_local_storage
is true the local storage is udpated as well.
sourcefn store_record(
&self,
key: KademliaKey,
value: Vec<u8>,
publisher: Option<PeerId>,
expires: Option<Instant>,
)
fn store_record( &self, key: KademliaKey, value: Vec<u8>, publisher: Option<PeerId>, expires: Option<Instant>, )
Store a record in the DHT memory store.
sourcefn start_providing(&self, key: KademliaKey)
fn start_providing(&self, key: KademliaKey)
Register this node as a provider for key
on the DHT.
sourcefn stop_providing(&self, key: KademliaKey)
fn stop_providing(&self, key: KademliaKey)
Deregister this node as a provider for key
on the DHT.
sourcefn get_providers(&self, key: KademliaKey)
fn get_providers(&self, key: KademliaKey)
Start getting the list of providers for key
on the DHT.