class Controller

Defined at line 650 of file fidling/gen/sdk/fidl/fuchsia.cobalt/fuchsia.cobalt/hlcpp/fuchsia/cobalt/cpp/fidl.h

The Controller is primarily useful for testing the Cobalt service.

Cobalt clients should use the Logger.

Public Members

static const char[] Name_

Public Methods

void ~Controller ()
void RequestSendSoon (RequestSendSoonCallback callback)

Requests that the collection of Observations that are currently cached

locally be sent to the Cobalt server soon. Cobalt will send the

Observations in one or more batches and will retry several times upon

failure. The response occurs only after that procedure is completed. A

return value of true indicates that all Observations were successfully

sent. A return value of false indicates otherwise.

void GenerateAggregatedObservations (uint32_t day_index, ::std::vector< ::fuchsia::cobalt::ReportSpec> report_specs, GenerateAggregatedObservationsCallback callback)

Triggers Cobalt to generate Observations based on locally aggregated

event data and write them to the local ObservationStore. In a non-test

environment this would normally be done periodically by a background

thread. In a test environment this method should be invoked against an

instance of the Cobalt FIDL service that was passed the flag

--start_event_aggregator_worker=false.

`day_index` The index of the day for which locally aggregated

Observations should be generated.

`report_specs` A vector of specifications identifying the reports to

return the number of observations for.

Returns a vector whose k-th element is the number of observations

generated for the k-th element of `report_specs`. If `report_specs`

is the empty vector, then an empty vector is returned.

void ListenForInitialized (ListenForInitializedCallback callback)

Requests that the caller be notified after the Cobalt FIDL service

is in the fully-initialized state.

Cobalt starts serving requests before it is fully initialized. In this

pre-initialized state it will buffer incoming log events in memory

but not complete their processing. After Cobalt becomes fully

initialized the events in the bufer are fully processed.

A partial list of things that must happen before Cobalt enters the

fully-initialized state are:

- Cobalt must by notified by the timekeeper service that the system

clock has become accurate--usually because the time has been

fetched from a trusted network resource.

The callback to this method will be invoked after Cobalt transistions