mirror of
https://github.com/fluencelabs/rust-libp2p
synced 2025-06-24 15:21:33 +00:00
refactor(dcutr): reshape public API to follow naming guidelines (#3214)
With this patch, the naming of types follows the guidelines discussed in #2217.
This commit is contained in:
@ -55,21 +55,21 @@ enum EventType {
|
||||
DirectConnectionUpgradeFailed,
|
||||
}
|
||||
|
||||
impl From<&libp2p_dcutr::behaviour::Event> for EventType {
|
||||
fn from(event: &libp2p_dcutr::behaviour::Event) -> Self {
|
||||
impl From<&libp2p_dcutr::Event> for EventType {
|
||||
fn from(event: &libp2p_dcutr::Event) -> Self {
|
||||
match event {
|
||||
libp2p_dcutr::behaviour::Event::InitiatedDirectConnectionUpgrade {
|
||||
libp2p_dcutr::Event::InitiatedDirectConnectionUpgrade {
|
||||
remote_peer_id: _,
|
||||
local_relayed_addr: _,
|
||||
} => EventType::InitiateDirectConnectionUpgrade,
|
||||
libp2p_dcutr::behaviour::Event::RemoteInitiatedDirectConnectionUpgrade {
|
||||
libp2p_dcutr::Event::RemoteInitiatedDirectConnectionUpgrade {
|
||||
remote_peer_id: _,
|
||||
remote_relayed_addr: _,
|
||||
} => EventType::RemoteInitiatedDirectConnectionUpgrade,
|
||||
libp2p_dcutr::behaviour::Event::DirectConnectionUpgradeSucceeded {
|
||||
remote_peer_id: _,
|
||||
} => EventType::DirectConnectionUpgradeSucceeded,
|
||||
libp2p_dcutr::behaviour::Event::DirectConnectionUpgradeFailed {
|
||||
libp2p_dcutr::Event::DirectConnectionUpgradeSucceeded { remote_peer_id: _ } => {
|
||||
EventType::DirectConnectionUpgradeSucceeded
|
||||
}
|
||||
libp2p_dcutr::Event::DirectConnectionUpgradeFailed {
|
||||
remote_peer_id: _,
|
||||
error: _,
|
||||
} => EventType::DirectConnectionUpgradeFailed,
|
||||
@ -77,8 +77,8 @@ impl From<&libp2p_dcutr::behaviour::Event> for EventType {
|
||||
}
|
||||
}
|
||||
|
||||
impl super::Recorder<libp2p_dcutr::behaviour::Event> for Metrics {
|
||||
fn record(&self, event: &libp2p_dcutr::behaviour::Event) {
|
||||
impl super::Recorder<libp2p_dcutr::Event> for Metrics {
|
||||
fn record(&self, event: &libp2p_dcutr::Event) {
|
||||
self.events
|
||||
.get_or_create(&EventLabels {
|
||||
event: event.into(),
|
||||
|
@ -100,8 +100,8 @@ pub trait Recorder<Event> {
|
||||
}
|
||||
|
||||
#[cfg(feature = "dcutr")]
|
||||
impl Recorder<libp2p_dcutr::behaviour::Event> for Metrics {
|
||||
fn record(&self, event: &libp2p_dcutr::behaviour::Event) {
|
||||
impl Recorder<libp2p_dcutr::Event> for Metrics {
|
||||
fn record(&self, event: &libp2p_dcutr::Event) {
|
||||
self.dcutr.record(event)
|
||||
}
|
||||
}
|
||||
|
@ -7,8 +7,12 @@
|
||||
|
||||
- Require the node's local `PeerId` to be passed into the constructor of `libp2p_dcutr::Behaviour`. See [PR 3153].
|
||||
|
||||
- Rename types in public API to follow naming conventions defined in [issue 2217]. See [PR 3214].
|
||||
|
||||
[PR 3213]: https://github.com/libp2p/rust-libp2p/pull/3213
|
||||
[PR 3153]: https://github.com/libp2p/rust-libp2p/pull/3153
|
||||
[issue 2217]: https://github.com/libp2p/rust-libp2p/issues/2217
|
||||
[PR 3214]: https://github.com/libp2p/rust-libp2p/pull/3214
|
||||
|
||||
# 0.8.0
|
||||
|
||||
|
@ -114,7 +114,7 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
relay_client: Client,
|
||||
ping: ping::Behaviour,
|
||||
identify: identify::Behaviour,
|
||||
dcutr: dcutr::behaviour::Behaviour,
|
||||
dcutr: dcutr::Behaviour,
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
@ -123,7 +123,7 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
Ping(ping::Event),
|
||||
Identify(identify::Event),
|
||||
Relay(client::Event),
|
||||
Dcutr(dcutr::behaviour::Event),
|
||||
Dcutr(dcutr::Event),
|
||||
}
|
||||
|
||||
impl From<ping::Event> for Event {
|
||||
@ -144,8 +144,8 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
}
|
||||
}
|
||||
|
||||
impl From<dcutr::behaviour::Event> for Event {
|
||||
fn from(e: dcutr::behaviour::Event) -> Self {
|
||||
impl From<dcutr::Event> for Event {
|
||||
fn from(e: dcutr::Event) -> Self {
|
||||
Event::Dcutr(e)
|
||||
}
|
||||
}
|
||||
@ -157,7 +157,7 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
"/TODO/0.0.1".to_string(),
|
||||
local_key.public(),
|
||||
)),
|
||||
dcutr: dcutr::behaviour::Behaviour::new(local_peer_id),
|
||||
dcutr: dcutr::Behaviour::new(local_peer_id),
|
||||
};
|
||||
|
||||
let mut swarm = match ThreadPool::new() {
|
||||
|
@ -54,12 +54,12 @@ pub enum Event {
|
||||
},
|
||||
DirectConnectionUpgradeFailed {
|
||||
remote_peer_id: PeerId,
|
||||
error: UpgradeError,
|
||||
error: Error,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Debug, Error)]
|
||||
pub enum UpgradeError {
|
||||
pub enum Error {
|
||||
#[error("Failed to dial peer.")]
|
||||
Dial,
|
||||
#[error("Failed to establish substream: {0}.")]
|
||||
@ -164,7 +164,7 @@ impl Behaviour {
|
||||
.into(),
|
||||
NetworkBehaviourAction::GenerateEvent(Event::DirectConnectionUpgradeFailed {
|
||||
remote_peer_id: peer_id,
|
||||
error: UpgradeError::Dial,
|
||||
error: Error::Dial,
|
||||
})
|
||||
.into(),
|
||||
]);
|
||||
@ -236,7 +236,7 @@ impl NetworkBehaviour for Behaviour {
|
||||
self.queued_actions.push_back(
|
||||
NetworkBehaviourAction::GenerateEvent(Event::DirectConnectionUpgradeFailed {
|
||||
remote_peer_id: event_source,
|
||||
error: UpgradeError::Handler(error),
|
||||
error: Error::Handler(error),
|
||||
})
|
||||
.into(),
|
||||
);
|
||||
@ -260,7 +260,7 @@ impl NetworkBehaviour for Behaviour {
|
||||
self.queued_actions.push_back(
|
||||
NetworkBehaviourAction::GenerateEvent(Event::DirectConnectionUpgradeFailed {
|
||||
remote_peer_id: event_source,
|
||||
error: UpgradeError::Handler(error),
|
||||
error: Error::Handler(error),
|
||||
})
|
||||
.into(),
|
||||
);
|
@ -23,7 +23,7 @@
|
||||
|
||||
#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))]
|
||||
|
||||
pub mod behaviour;
|
||||
mod behaviour_impl; // TODO: Rename back `behaviour` once deprecation symbols are removed.
|
||||
mod handler;
|
||||
mod protocol;
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
@ -31,6 +31,35 @@ mod message_proto {
|
||||
include!(concat!(env!("OUT_DIR"), "/holepunch.pb.rs"));
|
||||
}
|
||||
|
||||
pub use behaviour_impl::Behaviour;
|
||||
pub use behaviour_impl::Error;
|
||||
pub use behaviour_impl::Event;
|
||||
pub use protocol::PROTOCOL_NAME;
|
||||
pub type InboundUpgradeError = protocol::inbound::UpgradeError;
|
||||
pub type OutboundUpgradeError = protocol::outbound::UpgradeError;
|
||||
pub mod inbound {
|
||||
pub use crate::protocol::inbound::UpgradeError;
|
||||
}
|
||||
pub mod outbound {
|
||||
pub use crate::protocol::outbound::UpgradeError;
|
||||
}
|
||||
|
||||
#[deprecated(
|
||||
since = "0.9.0",
|
||||
note = "Use `libp2p_dcutr::inbound::UpgradeError` instead.`"
|
||||
)]
|
||||
pub type InboundUpgradeError = inbound::UpgradeError;
|
||||
|
||||
#[deprecated(
|
||||
since = "0.9.0",
|
||||
note = "Use `libp2p_dcutr::outbound::UpgradeError` instead.`"
|
||||
)]
|
||||
pub type OutboundUpgradeError = outbound::UpgradeError;
|
||||
pub mod behaviour {
|
||||
#[deprecated(since = "0.9.0", note = "Use `libp2p_dcutr::Behaviour` instead.`")]
|
||||
pub type Behaviour = crate::Behaviour;
|
||||
|
||||
#[deprecated(since = "0.9.0", note = "Use `libp2p_dcutr::Event` instead.`")]
|
||||
pub type Event = crate::Event;
|
||||
|
||||
#[deprecated(since = "0.9.0", note = "Use `libp2p_dcutr::Error` instead.`")]
|
||||
pub type UpgradeError = crate::Error;
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ fn connect() {
|
||||
|
||||
pool.run_until(wait_for_connection_established(&mut src, &dst_relayed_addr));
|
||||
match pool.run_until(wait_for_dcutr_event(&mut src)) {
|
||||
dcutr::behaviour::Event::RemoteInitiatedDirectConnectionUpgrade {
|
||||
dcutr::Event::RemoteInitiatedDirectConnectionUpgrade {
|
||||
remote_peer_id,
|
||||
remote_relayed_addr,
|
||||
} if remote_peer_id == dst_peer_id && remote_relayed_addr == dst_relayed_addr => {}
|
||||
@ -126,7 +126,7 @@ fn build_client() -> Swarm<Client> {
|
||||
transport,
|
||||
Client {
|
||||
relay: behaviour,
|
||||
dcutr: dcutr::behaviour::Behaviour::new(local_peer_id),
|
||||
dcutr: dcutr::Behaviour::new(local_peer_id),
|
||||
},
|
||||
local_peer_id,
|
||||
)
|
||||
@ -154,13 +154,13 @@ where
|
||||
)]
|
||||
struct Client {
|
||||
relay: client::Client,
|
||||
dcutr: dcutr::behaviour::Behaviour,
|
||||
dcutr: dcutr::Behaviour,
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
enum ClientEvent {
|
||||
Relay(client::Event),
|
||||
Dcutr(dcutr::behaviour::Event),
|
||||
Dcutr(dcutr::Event),
|
||||
}
|
||||
|
||||
impl From<client::Event> for ClientEvent {
|
||||
@ -169,8 +169,8 @@ impl From<client::Event> for ClientEvent {
|
||||
}
|
||||
}
|
||||
|
||||
impl From<dcutr::behaviour::Event> for ClientEvent {
|
||||
fn from(event: dcutr::behaviour::Event) -> Self {
|
||||
impl From<dcutr::Event> for ClientEvent {
|
||||
fn from(event: dcutr::Event) -> Self {
|
||||
ClientEvent::Dcutr(event)
|
||||
}
|
||||
}
|
||||
@ -241,7 +241,7 @@ async fn wait_for_new_listen_addr(client: &mut Swarm<Client>, new_addr: &Multiad
|
||||
}
|
||||
}
|
||||
|
||||
async fn wait_for_dcutr_event(client: &mut Swarm<Client>) -> dcutr::behaviour::Event {
|
||||
async fn wait_for_dcutr_event(client: &mut Swarm<Client>) -> dcutr::Event {
|
||||
loop {
|
||||
match client.select_next_some().await {
|
||||
SwarmEvent::Behaviour(ClientEvent::Dcutr(e)) => return e,
|
||||
|
Reference in New Issue
Block a user