pub struct ClientSynchronousProxy { /* private fields */ }
Implementations§
Source§impl ClientSynchronousProxy
impl ClientSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<ClientEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<ClientEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn watch_servers(
&self,
___deadline: MonotonicInstant,
) -> Result<Vec<DnsServer_>, Error>
pub fn watch_servers( &self, ___deadline: MonotonicInstant, ) -> Result<Vec<DnsServer_>, Error>
Returns a list of DNS servers.
First call always returns a snapshot of the current list of servers or blocks if an empty list would be returned. Subsequent calls will block until the list of servers changes.
The list of servers changes over time by configuration or network topology changes,
expiration, etc. Callers must repeatedly call WatchServers
and replace any previously
returned servers
with new ones to avoid using stale or expired entries.
It is invalid to call this method while a previous call is pending. Doing so will cause the server end of the protocol to be closed.
- response
servers
The list of servers to use for DNS resolution, in priority order.
Sourcepub fn watch_address(
&self,
___deadline: MonotonicInstant,
) -> Result<(Subnet, AddressParameters, ServerEnd<AddressStateProviderMarker>), Error>
pub fn watch_address( &self, ___deadline: MonotonicInstant, ) -> Result<(Subnet, AddressParameters, ServerEnd<AddressStateProviderMarker>), Error>
Returns an address and its parameters.
Yields a value for every address acquired by the client.
It is invalid to call this method while a previous call is pending. Doing so will cause the server end of the protocol to be closed.
- response
address
the assigned address. - response
address_parameters
the parameters of the address. - response
address_state_provider
provides address assignment state and enables updating address properties; client end is closed if the address becomes invalid (its valid lifetime expires and Renew and Rebind fail).
Sourcepub fn watch_prefixes(
&self,
___deadline: MonotonicInstant,
) -> Result<Vec<Prefix>, Error>
pub fn watch_prefixes( &self, ___deadline: MonotonicInstant, ) -> Result<Vec<Prefix>, Error>
Hanging get for prefix leases.
The first call to this method will return when there is at least one lease to report (the first call is guaranteed to return with a non-empty vector). Subsequent calls will return immediately if there is a change to report, or block until a change occurs.
It is invalid to call this method while a previous call is pending. Doing so will cause the server end of the protocol to be closed.
- response
prefixes
the assigned prefixes and their lifetimes.
Sourcepub fn shutdown(
&self,
___deadline: MonotonicInstant,
) -> Result<ClientShutdownResult, Error>
pub fn shutdown( &self, ___deadline: MonotonicInstant, ) -> Result<ClientShutdownResult, Error>
Gracefully tears down the underlying object.
Blocks until any held addresses are gracefully released, as described in RFC 8415, Section 18.2.7.
The server end of the protocol is closed after this method returns.
- error a
zx.Status
if any of the addresses were not gracefully released, e.g. the client times out waiting for Reply to Release, or the interface is down and sending Release fails.
Trait Implementations§
Source§impl Debug for ClientSynchronousProxy
impl Debug for ClientSynchronousProxy
Source§impl SynchronousProxy for ClientSynchronousProxy
impl SynchronousProxy for ClientSynchronousProxy
Source§type Proxy = ClientProxy
type Proxy = ClientProxy
Source§type Protocol = ClientMarker
type Protocol = ClientMarker
Proxy
controls.