pub trait SpuLocalStorePolicy<C> where
C: MetadataItem, {
Show 17 methods
fn online_status<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = HashSet<SpuId>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn online_spu_count<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = i32> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn spu_used_for_replica<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = i32> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn online_spu_ids<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<i32>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn spu_ids<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<i32>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn online_spus<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<SpuMetadata<C>>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn custom_spus<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<SpuMetadata<C>>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn get_by_id<'life0, 'async_trait>(
&'life0 self,
id: i32
) -> Pin<Box<dyn Future<Output = Option<SpuMetadata<C>>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn validate_spu_for_registered<'life0, 'async_trait>(
&'life0 self,
id: SpuId
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn all_names<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<String>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn table_fmt<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = String> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn spus_in_rack_count<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = i32> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn live_spu_rack_map_sorted<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<(String, Vec<i32>)>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn online_spu_rack_map<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = BTreeMap<String, Vec<i32>>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn online_spus_in_rack(rack_map: &[(String, Vec<i32>)]) -> Vec<i32>;
fn all_spus_to_spu_msgs<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Vec<SpuMsg>> + Send + 'async_trait>>
where
'life0: 'async_trait,
Self: 'async_trait;
fn quick(spus: Vec<(i32, bool, Option<String>)>) -> Self;
}