pub trait TMdnsBrowser {
// Required methods
fn new(service_type: ServiceType) -> Self;
fn set_network_interface(&mut self, interface: NetworkInterface);
fn network_interface(&self) -> NetworkInterface;
fn set_service_discovered_callback(
&mut self,
service_discovered_callback: Box<ServiceDiscoveredCallback>,
);
fn set_context(&mut self, context: Box<dyn Any>);
fn context(&self) -> Option<&dyn Any>;
fn browse_services(&mut self) -> Result<EventLoop>;
}
Expand description
Interface for interacting with underlying mDNS implementation service browsing capabilities.
Required Methods§
Sourcefn new(service_type: ServiceType) -> Self
fn new(service_type: ServiceType) -> Self
Creates a new MdnsBrowser
that browses for the specified kind
(e.g. _http._tcp
)
Sourcefn set_network_interface(&mut self, interface: NetworkInterface)
fn set_network_interface(&mut self, interface: NetworkInterface)
Sets the network interface on which to browse for services on.
Most applications will want to use the default value NetworkInterface::Unspec
to browse
on all available interfaces.
Sourcefn network_interface(&self) -> NetworkInterface
fn network_interface(&self) -> NetworkInterface
Returns the network interface on which to browse for services on.
Sourcefn set_service_discovered_callback(
&mut self,
service_discovered_callback: Box<ServiceDiscoveredCallback>,
)
fn set_service_discovered_callback( &mut self, service_discovered_callback: Box<ServiceDiscoveredCallback>, )
Sets the ServiceDiscoveredCallback
that is invoked when the browser has discovered and
resolved a service.
Sourcefn set_context(&mut self, context: Box<dyn Any>)
fn set_context(&mut self, context: Box<dyn Any>)
Sets the optional user context to pass through to the callback. This is useful if you need
to share state between pre and post-callback. The context type must implement Any
.
Sourcefn context(&self) -> Option<&dyn Any>
fn context(&self) -> Option<&dyn Any>
Returns the optional user context to pass through to the callback.
Sourcefn browse_services(&mut self) -> Result<EventLoop>
fn browse_services(&mut self) -> Result<EventLoop>
Starts the browser. Returns an EventLoop
which can be called to keep the browser alive.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.