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§

source

fn new(service_type: ServiceType) -> Self

Creates a new MdnsBrowser that browses for the specified kind (e.g. _http._tcp)

source

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.

source

fn network_interface(&self) -> NetworkInterface

Returns the network interface on which to browse for services on.

source

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.

source

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.

source

fn context(&self) -> Option<&dyn Any>

Returns the optional user context to pass through to the callback.

source

fn browse_services(&mut self) -> Result<EventLoop>

Starts the browser. Returns an EventLoop which can be called to keep the browser alive.

Object Safety§

This trait is not object safe.

Implementors§