pub trait BatchIteratorServerHandler<___T: Transport = Channel> {
// Required methods
fn get_next(
&mut self,
responder: Responder<GetNext, ___T>,
) -> impl Future<Output = ()> + Send;
fn wait_for_ready(
&mut self,
responder: Responder<WaitForReady, ___T>,
) -> impl Future<Output = ()> + Send;
// Provided method
fn on_unknown_interaction(
&mut self,
ordinal: u64,
) -> impl Future<Output = ()> + Send { ... }
}Expand description
A server handler for the BatchIterator protocol.
See BatchIterator for more details.
Required Methods§
Sourcefn get_next(
&mut self,
responder: Responder<GetNext, ___T>,
) -> impl Future<Output = ()> + Send
fn get_next( &mut self, responder: Responder<GetNext, ___T>, ) -> impl Future<Output = ()> + Send
Returns a vector of [fuchsia.diagnostics/FormattedContent] structs with a format dictated by the format_settings argument provided to the Reader protocol which spawned this BatchIterator.
An empty vector implies that the data hierarchy has been fully iterated, and subsequent GetNext calls will always return the empty vector.
When the BatchIterator is serving results via subscription model, calls to GetNext will hang until there is new data available, it will not return an empty vector.
- returns a vector of FormattedContent structs. Clients connected to a Batch are expected to call GetNext() until an empty vector is returned, denoting that the entire data hierarchy has been read.
- error a [fuchsia.diagnostics/ReaderError]
value indicating that there was an issue reading the underlying data hierarchies
or formatting those hierarchies to populate the
batch. Note, these issues do not include a single component’s data hierarchy failing to be read. The iterator is tolerant of individual component data sources failing to be read, whether that failure is a timeout or a malformed binary file. In the event that a GetNext call fails, that subset of the data hierarchy results is dropped, but future calls to GetNext will provide new subsets of FormattedDataHierarchies.
Sourcefn wait_for_ready(
&mut self,
responder: Responder<WaitForReady, ___T>,
) -> impl Future<Output = ()> + Send
fn wait_for_ready( &mut self, responder: Responder<WaitForReady, ___T>, ) -> impl Future<Output = ()> + Send
Indicates that the BatchIterator has been connected. If the BatchIterator hasn’t been connected, this method will hang until it is.
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.