From d8425015363cc0ac4742f938dc3f8e9d0beaa933 Mon Sep 17 00:00:00 2001 From: hozan23 Date: Thu, 30 Nov 2023 23:29:25 +0300 Subject: net: rename `Listener` trait to `ConnListener` --- net/src/lib.rs | 2 +- net/src/listener.rs | 9 ++++++--- net/src/transports/tcp.rs | 6 +++--- net/src/transports/tls.rs | 14 +++++++------- net/src/transports/unix.rs | 6 +++--- 5 files changed, 20 insertions(+), 17 deletions(-) (limited to 'net') diff --git a/net/src/lib.rs b/net/src/lib.rs index 61069ef..813a090 100644 --- a/net/src/lib.rs +++ b/net/src/lib.rs @@ -7,7 +7,7 @@ mod transports; pub use { connection::{dial, Conn, Connection}, endpoint::{Addr, Endpoint, Port}, - listener::{listen, Listener}, + listener::{listen, ConnListener, Listener}, transports::{ tcp::{dial_tcp, listen_tcp, TcpConn}, tls, diff --git a/net/src/listener.rs b/net/src/listener.rs index c6c3d94..fcd1175 100644 --- a/net/src/listener.rs +++ b/net/src/listener.rs @@ -5,9 +5,12 @@ use crate::{ Conn, Endpoint, Error, Result, }; -/// Listener is a generic network listener. +/// Alias for `Box` +pub type Listener = Box; + +/// ConnListener is a generic network listener. #[async_trait] -pub trait Listener: Send + Sync { +pub trait ConnListener: Send + Sync { fn local_endpoint(&self) -> Result; async fn accept(&self) -> Result; } @@ -29,7 +32,7 @@ pub trait Listener: Send + Sync { /// }; /// /// ``` -pub async fn listen(endpoint: &Endpoint) -> Result> { +pub async fn listen(endpoint: &Endpoint) -> Result> { match endpoint { Endpoint::Tcp(addr, port) => Ok(Box::new(tcp::listen_tcp(addr, port).await?)), Endpoint::Unix(addr) => Ok(Box::new(unix::listen_unix(addr)?)), diff --git a/net/src/transports/tcp.rs b/net/src/transports/tcp.rs index 37ad860..7cd7127 100644 --- a/net/src/transports/tcp.rs +++ b/net/src/transports/tcp.rs @@ -9,7 +9,7 @@ use smol::{ use crate::{ connection::Connection, endpoint::{Addr, Endpoint, Port}, - listener::Listener, + listener::ConnListener, Error, Result, }; @@ -57,7 +57,7 @@ impl Connection for TcpConn { } #[async_trait] -impl Listener for TcpListener { +impl ConnListener for TcpListener { fn local_endpoint(&self) -> Result { Ok(Endpoint::new_tcp_addr(&self.local_addr()?)) } @@ -90,7 +90,7 @@ impl From for Box { } } -impl From for Box { +impl From for Box { fn from(listener: TcpListener) -> Self { Box::new(listener) } diff --git a/net/src/transports/tls.rs b/net/src/transports/tls.rs index cbb3d99..bc928b0 100644 --- a/net/src/transports/tls.rs +++ b/net/src/transports/tls.rs @@ -11,7 +11,7 @@ use smol::{ use crate::{ connection::Connection, endpoint::{Addr, Endpoint, Port}, - listener::Listener, + listener::ConnListener, Error, Result, }; @@ -92,14 +92,14 @@ pub async fn dial( .await .map(|c| Box::new(c) as Box) } -/// Tls network listener implementation of the [`Listener`] trait. +/// Tls network listener implementation of the `Listener` [`ConnListener`] trait. pub struct TlsListener { acceptor: TlsAcceptor, listener: TcpListener, } #[async_trait] -impl Listener for TlsListener { +impl ConnListener for TlsListener { fn local_endpoint(&self) -> Result { Ok(Endpoint::new_tls_addr(&self.listener.local_addr()?)) } @@ -124,11 +124,11 @@ pub async fn listen_tls( Ok(TlsListener { acceptor, listener }) } -/// Listens on the given TLS endpoint, returns [`Listener`]. +/// Listens on the given TLS endpoint, returns `Listener` [`ConnListener`]. pub async fn listen( endpoint: &Endpoint, config: rustls::ServerConfig, -) -> Result> { +) -> Result> { match endpoint { Endpoint::Tcp(..) | Endpoint::Tls(..) => {} _ => return Err(Error::InvalidEndpoint(endpoint.to_string())), @@ -136,7 +136,7 @@ pub async fn listen( listen_tls(endpoint.addr()?, endpoint.port()?, config) .await - .map(|l| Box::new(l) as Box) + .map(|l| Box::new(l) as Box) } impl From> for Box { @@ -145,7 +145,7 @@ impl From> for Box { } } -impl From for Box { +impl From for Box { fn from(listener: TlsListener) -> Self { Box::new(listener) } diff --git a/net/src/transports/unix.rs b/net/src/transports/unix.rs index 0698975..c546333 100644 --- a/net/src/transports/unix.rs +++ b/net/src/transports/unix.rs @@ -6,7 +6,7 @@ use smol::{ net::unix::{UnixListener, UnixStream}, }; -use crate::{connection::Connection, endpoint::Endpoint, listener::Listener, Error, Result}; +use crate::{connection::Connection, endpoint::Endpoint, listener::ConnListener, Error, Result}; /// Unix domain socket implementation of the [`Connection`] trait. pub struct UnixConn { @@ -52,7 +52,7 @@ impl Connection for UnixConn { } #[async_trait] -impl Listener for UnixListener { +impl ConnListener for UnixListener { fn local_endpoint(&self) -> Result { Ok(Endpoint::new_unix_addr(&self.local_addr()?)) } @@ -81,7 +81,7 @@ impl From for Box { } } -impl From for Box { +impl From for Box { fn from(listener: UnixListener) -> Self { Box::new(listener) } -- cgit v1.2.3