Commit 53b6474b authored by nanamicat's avatar nanamicat

fix

parent ffc4001f
Pipeline #42005 passed with stages
in 32 seconds
......@@ -5,7 +5,7 @@ use crate::router::Router;
use crate::server::Server;
use crate::settings::{Settings, INTERVAL};
use config::Config;
use std::collections::HashMap;
use std::collections::BTreeMap;
use std::fs;
use std::time::SystemTime;
use tokio::net::UdpSocket;
......@@ -24,8 +24,8 @@ mod settings;
async fn main() -> anyhow::Result<()> {
let config: Settings = Config::builder().add_source(config::Environment::default()).build()?.try_deserialize()?;
let routers_data = serde_json::from_slice::<Vec<RouterData>>(&fs::read("import/data/Router.json")?)?;
let mut routers: HashMap<u8, Router> = routers_data.iter().map(|r| (r.id, Router::new(r, &config))).collect();
let connections = serde_json::from_slice::<HashMap<u8, HashMap<u8, Connection>>>(&fs::read("import/connections.json")?)?;
let mut routers: BTreeMap<u8, Router> = routers_data.iter().map(|r| (r.id, Router::new(r, &config))).collect();
let connections = serde_json::from_slice::<BTreeMap<u8, BTreeMap<u8, Connection>>>(&fs::read("import/connections.json")?)?;
// let groups: Vec<GatewayGroup> = serde_json::from_slice(&fs::read("import/GatewayGroup.json")?)?;
let mut server = Server::new(
......@@ -33,7 +33,7 @@ async fn main() -> anyhow::Result<()> {
// groups
// .iter()
// .map(|g| (g.id, g.routers(&groups, &routers_data)))
// .collect::<HashMap<u16, HashSet<u8>>>(),
// .collect::<BTreeMap<u16, HashSet<u8>>>(),
);
let mut hello = Hello { time: 0 };
......
......@@ -2,7 +2,7 @@ use crate::data::Router as RouterData;
use crate::protocol::{Hello, PeerQuality};
use crate::settings::{Settings, HISTORY, INTERVAL, TIMEOUT};
use average::Mean;
use std::collections::HashMap;
use std::collections::BTreeMap;
use std::net::{IpAddr, SocketAddr};
use std::time::SystemTime;
......@@ -15,7 +15,7 @@ pub struct Router {
}
impl Router {
pub fn get(routers: &mut HashMap<u8, Router>, link_address: SocketAddr) -> Option<&mut Router> {
pub fn get(routers: &mut BTreeMap<u8, Router>, link_address: SocketAddr) -> Option<&mut Router> {
match link_address {
SocketAddr::V4(addr) => {
let id = addr.ip().octets()[2];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment