Skip to main content

MetadataCollector

Trait MetadataCollector 

Source
pub trait MetadataCollector {
    // Required methods
    fn name(&self) -> &'static str;
    fn watch<'life0, 'life1, 'async_trait>(
        &'life0 mut self,
        operations_tx: &'life1 mut Sender<MetadataOperation>,
    ) -> Pin<Box<dyn Future<Output = Result<(), GenericError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait;
}
Expand description

A metadata collector.

Metadata collectors are responsible for collecting metadata from the environment, both at startup and over time as changes to the workload occur. This metadata can represent many things, from basic key/value pairs about specific entities, to fixed relationships between entities, to more dynamic information like the current state of a workload.

Required Methods§

Source

fn name(&self) -> &'static str

Get the name of this collector.

Source

fn watch<'life0, 'life1, 'async_trait>( &'life0 mut self, operations_tx: &'life1 mut Sender<MetadataOperation>, ) -> Pin<Box<dyn Future<Output = Result<(), GenericError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Watch for metadata changes.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§