remove usage of deprecated methods in sdk example
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
use nym_sdk::mixnet;
|
||||
use nym_sdk::mixnet::MixnetMessageSender;
|
||||
use nym_topology::provider_trait::{async_trait, TopologyProvider};
|
||||
use nym_topology::NymTopology;
|
||||
use nym_topology::{NymTopology, NymTopologyMetadata};
|
||||
use url::Url;
|
||||
|
||||
struct MyTopologyProvider {
|
||||
@@ -25,27 +25,33 @@ impl MyTopologyProvider {
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
let mut base_topology = NymTopology::new_empty(rewarded_set);
|
||||
|
||||
let mixnodes = self
|
||||
let mixnodes_response = self
|
||||
.validator_client
|
||||
.get_all_basic_active_mixing_assigned_nodes()
|
||||
.get_all_basic_active_mixing_assigned_nodes_with_metadata()
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
let metadata = NymTopologyMetadata::new(
|
||||
mixnodes_response.metadata.rotation_id,
|
||||
mixnodes_response.metadata.absolute_epoch_id,
|
||||
);
|
||||
let mut base_topology = NymTopology::new(metadata, rewarded_set, Vec::new());
|
||||
|
||||
// in our topology provider only use mixnodes that have node_id divisible by 3
|
||||
// and has exactly 100 performance score
|
||||
// why? because this is just an example to showcase arbitrary uses and capabilities of this trait
|
||||
let filtered_mixnodes = mixnodes
|
||||
let filtered_mixnodes = mixnodes_response
|
||||
.nodes
|
||||
.into_iter()
|
||||
.filter(|mix| mix.node_id % 3 == 0 && mix.performance.is_hundred())
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
let gateways = self
|
||||
.validator_client
|
||||
.get_all_basic_entry_assigned_nodes()
|
||||
.get_all_basic_entry_assigned_nodes_v2()
|
||||
.await
|
||||
.unwrap();
|
||||
.unwrap()
|
||||
.nodes;
|
||||
|
||||
base_topology.add_skimmed_nodes(&filtered_mixnodes);
|
||||
base_topology.add_skimmed_nodes(&gateways);
|
||||
|
||||
Reference in New Issue
Block a user