pub enum SampleRequest {
Set {
sample_parameters: SampleParameters,
control_handle: SampleControlHandle,
},
Commit {
sink: ClientEnd<SampleSinkMarker>,
responder: SampleCommitResponder,
},
#[non_exhaustive] _UnknownMethod {
ordinal: u64,
control_handle: SampleControlHandle,
method_type: MethodType,
},
}
Expand description
Configure Archivist to alert you periodically about the state of data
provided via SampleParameters
.
If the given configuration results in a hit, a BatchIterator
is sent
over the sink
provided. That iterator may be drained, and then the
sink
will go quiet until the next hit.
Archivist does not inform the client which data result in a success,
because it has not inherent advantaged ability to do so. Clients who
need to know which data was queried should cache their selectors and
use selectors::select_from_hierarchy
(or similar in C++).
Variants§
Set
Add sample parameters.
Since this is limited by channel size, this API paginates at 300 items. That should fit in a channel unless a selector is particularly gigantic.
Use Commit
to indicate that all samples are sent over.
Commit
Commit
returns errors quickly, as all configuration is validated
before the first sample is taken.
#[non_exhaustive]_UnknownMethod
An interaction was received which does not match any known method.
Fields
This variant is marked as non-exhaustive
control_handle: SampleControlHandle
method_type: MethodType
Implementations§
Source§impl SampleRequest
impl SampleRequest
pub fn into_set(self) -> Option<(SampleParameters, SampleControlHandle)>
pub fn into_commit( self, ) -> Option<(ClientEnd<SampleSinkMarker>, SampleCommitResponder)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL