template <>

class WireServer

Defined at line 2653 of file fidling/gen/sdk/fidl/fuchsia.net.filter/fuchsia.net.filter/cpp/fidl/fuchsia.net.filter/cpp/wire_messaging.h

Pure-virtual interface to be implemented by a server.

This interface uses typed channels (i.e. |::fidl::ClientEnd

<

::fuchsia_net_filter::Watcher>|

and |::fidl::ServerEnd

<

::fuchsia_net_filter::Watcher>|).

Public Methods

void Watch (WatchCompleter::Sync & completer)

Hanging get for filtering resource changes.

Clients should only have one pending call of this method outstanding at

a time; a second call to this method while a call is already pending

will cause the server to close the channel.

The first N events returned by this method will be [`Event.existing`],

enumerating all existing N filtering resources, followed by a single

[`Event.idle`] indicating that all existing resources have been sent.

Subsequent calls will immediately return with new events if there is at

least one to be reported, or will otherwise block until an event occurs.

In order to communicate atomic updates, after the initial state is

provided followed by [`Event.idle`], a sequence of events that occurred

atomically will always be followed by [`Event.end_of_update`],

demarcating the end of the atomic update.

Note that each non-sentinel event is scoped to a controller; the

[`ControllerId`] is provided along with the event to allow the client to

disambiguate.

void WireServer ()

Defined at line 2656 of file fidling/gen/sdk/fidl/fuchsia.net.filter/fuchsia.net.filter/cpp/fidl/fuchsia.net.filter/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 2657 of file fidling/gen/sdk/fidl/fuchsia.net.filter/fuchsia.net.filter/cpp/fidl/fuchsia.net.filter/cpp/wire_messaging.h