Skip to main content

BatchIteratorServerHandler

Trait BatchIteratorServerHandler 

Source
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§

Source

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.
Source

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§

Source

fn on_unknown_interaction( &mut self, ordinal: u64, ) -> impl Future<Output = ()> + Send

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.

Implementors§