veilid_core/rpc_processor/
sender_peer_info.rs1use super::*;
2
3#[derive(Default, Debug, Clone)]
5pub(in crate::rpc_processor) struct SenderPeerInfo {
6 opt_peer_info: Option<Arc<PeerInfo>>,
8 target_node_info_ts: Timestamp,
10}
11impl SenderPeerInfo {
12 pub fn new_no_peer_info(target_node_info_ts: Timestamp) -> Self {
13 Self {
14 opt_peer_info: None,
15 target_node_info_ts,
16 }
17 }
18 pub fn new(peer_info: Arc<PeerInfo>, target_node_info_ts: Timestamp) -> Self {
19 Self {
20 opt_peer_info: Some(peer_info),
21 target_node_info_ts,
22 }
23 }
24 pub fn opt_peer_info(&self) -> Option<Arc<PeerInfo>> {
25 self.opt_peer_info.clone()
26 }
27 pub fn target_node_info_ts(&self) -> Timestamp {
28 self.target_node_info_ts
29 }
30}