Migrating util/network from rust_serialize to serde (#5988)

This commit is contained in:
Dmitry Kashitsyn 2017-10-11 14:34:23 +07:00
parent dbd1976fc1
commit 504b2de4a8
4 changed files with 6 additions and 4 deletions

1
Cargo.lock generated
View File

@ -811,6 +811,7 @@ dependencies = [
"rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-hex 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"slab 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)",
"tiny-keccak 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",

View File

@ -34,6 +34,7 @@ path = { path = "../path" }
ethcore-logger = { path ="../../logger" }
ipnetwork = "0.12.6"
hash = { path = "../hash" }
serde_json = "1.0"
[features]
default = []

View File

@ -69,7 +69,6 @@ extern crate rand;
extern crate time;
extern crate ansi_term; //TODO: remove this
extern crate rustc_hex;
extern crate rustc_serialize;
extern crate igd;
extern crate libc;
extern crate slab;
@ -81,6 +80,7 @@ extern crate path;
extern crate ethcore_logger;
extern crate ipnetwork;
extern crate hash;
extern crate serde_json;
#[macro_use]
extern crate log;

View File

@ -32,7 +32,7 @@ use error::NetworkError;
use {AllowIP, IpFilter};
use discovery::{TableUpdates, NodeEntry};
use ip_utils::*;
pub use rustc_serialize::json::Json;
use serde_json::Value;
/// Node public key
pub type NodeId = H512;
@ -332,7 +332,7 @@ impl NodeTable {
return nodes;
}
}
let json = match Json::from_str(&buf) {
let json: Value = match ::serde_json::from_str(&buf) {
Ok(json) => json,
Err(e) => {
warn!("Error parsing node table file: {:?}", e);
@ -341,7 +341,7 @@ impl NodeTable {
};
if let Some(list) = json.as_object().and_then(|o| o.get("nodes")).and_then(|n| n.as_array()) {
for n in list.iter().filter_map(|n| n.as_object()) {
if let Some(url) = n.get("url").and_then(|u| u.as_string()) {
if let Some(url) = n.get("url").and_then(|u| u.as_str()) {
if let Ok(mut node) = Node::from_str(url) {
if let Some(failures) = n.get("failures").and_then(|f| f.as_u64()) {
node.failures = failures as u32;