DHT stats in HTTP API
This commit is contained in:
parent
f00f522767
commit
98dff76c40
10 changed files with 111 additions and 62 deletions
|
|
@ -5,14 +5,7 @@ use std::{
|
|||
|
||||
use librqbit_core::id20::Id20;
|
||||
use log::debug;
|
||||
use serde::{Serialize, Serializer};
|
||||
|
||||
fn serialize_id20<S>(id: &Id20, ser: S) -> Result<S::Ok, S::Error>
|
||||
where
|
||||
S: Serializer,
|
||||
{
|
||||
ser.serialize_str(&id.as_string())
|
||||
}
|
||||
use serde::Serialize;
|
||||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
enum BucketTreeNode {
|
||||
|
|
@ -23,9 +16,9 @@ enum BucketTreeNode {
|
|||
#[derive(Debug, Clone, Serialize)]
|
||||
pub struct BucketTree {
|
||||
bits: u8,
|
||||
#[serde(serialize_with = "serialize_id20")]
|
||||
#[serde(serialize_with = "crate::utils::serialize_id20")]
|
||||
start: Id20,
|
||||
#[serde(serialize_with = "serialize_id20")]
|
||||
#[serde(serialize_with = "crate::utils::serialize_id20")]
|
||||
end_inclusive: Id20,
|
||||
data: BucketTreeNode,
|
||||
}
|
||||
|
|
@ -314,7 +307,7 @@ impl Default for BucketTree {
|
|||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
pub struct RoutingTableNode {
|
||||
#[serde(serialize_with = "serialize_id20")]
|
||||
#[serde(serialize_with = "crate::utils::serialize_id20")]
|
||||
id: Id20,
|
||||
addr: SocketAddr,
|
||||
#[serde(skip)]
|
||||
|
|
@ -372,7 +365,7 @@ impl RoutingTableNode {
|
|||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
pub struct RoutingTable {
|
||||
#[serde(serialize_with = "serialize_id20")]
|
||||
#[serde(serialize_with = "crate::utils::serialize_id20")]
|
||||
id: Id20,
|
||||
size: usize,
|
||||
buckets: BucketTree,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue