class MonitorClients
Defined at line 22 of file ../../src/sys/fuzzing/common/monitor-clients.h
This class encapsulates the pool of |fuchsia.fuzzer.Monitor| connections managed by the runner.
Public Methods
void MonitorClients (ExecutorPtr executor)
Defined at line 17 of file ../../src/sys/fuzzing/common/monitor-clients.cc
void Add (fidl::InterfaceHandle<Monitor> monitor)
Adds a subscriber for status updates.
Defined at line 19 of file ../../src/sys/fuzzing/common/monitor-clients.cc
void ~MonitorClients ()
Defined at line 25 of file ../../src/sys/fuzzing/common/monitor-clients.h
void Update (UpdateReason reason)
Collects the current status, labels it with the given |reason|, and schedules a promise to send
it to all the attached |Monitor|s. Multiple calls to |Update| are guaraneteed to be performed
in sequence. If |reason| is |DONE|, this will |CloseAll| connections on completion of the
scheduled promise.
Defined at line 26 of file ../../src/sys/fuzzing/common/monitor-clients.cc
bool active ()
Defined at line 27 of file ../../src/sys/fuzzing/common/monitor-clients.h
Status status ()
Defined at line 29 of file ../../src/sys/fuzzing/common/monitor-clients.h
void set_status (Status && status)
Defined at line 30 of file ../../src/sys/fuzzing/common/monitor-clients.h
Promise<> AwaitAcknowledgement ()
Returns a promise that waits for a previous |Update| to be acknowledged by the monitors. This
is mostly useful when testing; in normal operation |Update|s can be treated as "fire and
forget".
Defined at line 55 of file ../../src/sys/fuzzing/common/monitor-clients.cc
void CloseAll ()
Closes all monitor connections.
Defined at line 60 of file ../../src/sys/fuzzing/common/monitor-clients.cc