pub struct ListenerSetting {
pub url: Url,
pub ssl: Option<SslConfig>,
pub max_socket: u64,
/* private fields */
}Expand description
Configuration struct of an network listener
use tokio::io;
use url::Url;
use prosa::io::stream::Stream;
use prosa::io::listener::{ListenerSetting, StreamListener};
async fn accepting() -> Result<(), io::Error> {
let wl_target = ListenerSetting::new(Url::parse("https://[::]").unwrap(), None);
let stream: StreamListener = wl_target.bind().await?;
// Use the StreamListener object to accept clients
Ok(())
}Fields§
§url: UrlUrl of the listening
ssl: Option<SslConfig>SSL configuration for target destination
max_socket: u64Maximum number of socket
Implementations§
Source§impl ListenerSetting
impl ListenerSetting
Sourcepub fn new(url: Url, ssl: Option<SslConfig>) -> ListenerSetting
pub fn new(url: Url, ssl: Option<SslConfig>) -> ListenerSetting
Method to create manually a target
Sourcepub fn init_ssl_context(&mut self, domain: Option<&str>)
Available on crate feature openssl only.
pub fn init_ssl_context(&mut self, domain: Option<&str>)
openssl only.Method to init the ssl context out of the ssl target configuration. Must be call when the configuration is retrieved
Sourcepub async fn bind(&self) -> Result<StreamListener, Error>
pub async fn bind(&self) -> Result<StreamListener, Error>
Method to connect a ProSA stream to the remote target using the configuration
Trait Implementations§
Source§impl Clone for ListenerSetting
impl Clone for ListenerSetting
Source§fn clone(&self) -> ListenerSetting
fn clone(&self) -> ListenerSetting
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ListenerSetting
impl Debug for ListenerSetting
Source§impl<'de> Deserialize<'de> for ListenerSetting
impl<'de> Deserialize<'de> for ListenerSetting
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for ListenerSetting
impl Display for ListenerSetting
Source§impl From<Url> for ListenerSetting
impl From<Url> for ListenerSetting
Auto Trait Implementations§
impl Freeze for ListenerSetting
impl RefUnwindSafe for ListenerSetting
impl Send for ListenerSetting
impl Sync for ListenerSetting
impl Unpin for ListenerSetting
impl UnwindSafe for ListenerSetting
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.