From a7274ddce299f33d23dbe8af5bbe6219f07c559a Mon Sep 17 00:00:00 2001 From: Wenbin <85331908+Wenbin1002@users.noreply.github.com> Date: Wed, 12 Mar 2025 21:53:42 +0800 Subject: [PATCH] add more trait for peer (#222) --- src/v1/meta.rs | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/v1/meta.rs b/src/v1/meta.rs index 4d83169..3071ddd 100644 --- a/src/v1/meta.rs +++ b/src/v1/meta.rs @@ -17,6 +17,7 @@ tonic::include_proto!("greptime.v1.meta"); mod mailbox; use std::collections::HashMap; +use std::fmt::{Display, Formatter}; use std::hash::{Hash, Hasher}; pub const PROTOCOL_VERSION: u64 = 1; @@ -57,6 +58,27 @@ impl Hash for Peer { impl Eq for Peer {} +impl Display for Peer { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + write!(f, "peer-{}({})", self.id, self.addr) + } +} + +impl Peer { + pub fn new(id: u64, addr: impl Into) -> Self { + Self { + id, + addr: addr.into(), + } + } + pub fn empty(id: u64) -> Self { + Self { + id, + addr: String::new(), + } + } +} + impl RequestHeader { #[inline] pub fn new(member_id: u64, role: Role, tracing_context: HashMap) -> Self {