template <>
class WireServer
Defined at line 401 of file fidling/gen/sdk/fidl/fuchsia.net.routes/fuchsia.net.routes/cpp/fidl/fuchsia.net.routes/cpp/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fidl::ClientEnd
<
::fuchsia_net_routes::WatcherV4>|
and |::fidl::ServerEnd
<
::fuchsia_net_routes::WatcherV4>|).
Public Methods
void Watch (WatchCompleter::Sync & completer)
Hanging-Get style API for observing routing changes.
Clients must only have one pending `Watch` call at a time. Calling
`Watch` while a request is already pending will cause the protocol to
close.
The first N events will always be `existing` where N is the number of
IPv4 routes that already existed when the server-end of the protocol was
initialized. The following event will be `idle` signaling the end of the
`existing` events. At this point the client has watched all existing
state and will never again observe an `existing` event.
Events are returned in batches of up to `MAX_EVENTS` events. There is no
correlation between the batch size/boundary and it's contents: it is
perfectly valid for the server to split the block of `existing` events,
across several batches. Clients should view this API as providing a
stream of events, where batches are used to reduce IPC load on the
system.
- response `events` A vector of at most `MAX_EVENTS` events.
void WireServer ()
Defined at line 404 of file fidling/gen/sdk/fidl/fuchsia.net.routes/fuchsia.net.routes/cpp/fidl/fuchsia.net.routes/cpp/wire_messaging.h
Handler bind_handler (async_dispatcher_t * dispatcher)
|bind_handler| returns a handler that binds incoming connections to this
server implementation.
The returned handler borrows the server instance.
The server must outlive the provided |dispatcher|. Only after
the dispatcher is shutdown will it be safe to destroy the servers.
The server should not be moved.
void ~WireServer ()
Defined at line 405 of file fidling/gen/sdk/fidl/fuchsia.net.routes/fuchsia.net.routes/cpp/fidl/fuchsia.net.routes/cpp/wire_messaging.h