pub trait ServiceBuilder: Send + Sync {
type Output: ?Sized;
// Required method
fn build<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
instance_name: &'life1 str,
context: &'life2 CompositionContext<'_>,
) -> Pin<Box<dyn Future<Output = Result<Arc<Self::Output>, Box<dyn Error + Send + Sync + 'static>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
}Expand description
This is the trait usually implemented on a per-store-type Config struct and used to instantiate it.
Required Associated Types§
Required Methods§
fn build<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
instance_name: &'life1 str,
context: &'life2 CompositionContext<'_>,
) -> Pin<Box<dyn Future<Output = Result<Arc<Self::Output>, Box<dyn Error + Send + Sync + 'static>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Trait Implementations§
Source§impl<T: ?Sized, S: ServiceBuilder<Output = T> + 'static> From<S> for Box<dyn ServiceBuilder<Output = T>>
impl<T: ?Sized, S: ServiceBuilder<Output = T> + 'static> From<S> for Box<dyn ServiceBuilder<Output = T>>
Implementors§
Source§impl ServiceBuilder for CombinedBlobServiceConfig
impl ServiceBuilder for CombinedBlobServiceConfig
type Output = dyn BlobService
Source§impl ServiceBuilder for GRPCBlobServiceConfig
impl ServiceBuilder for GRPCBlobServiceConfig
type Output = dyn BlobService
Source§impl ServiceBuilder for MemoryBlobServiceConfig
impl ServiceBuilder for MemoryBlobServiceConfig
type Output = dyn BlobService
Source§impl ServiceBuilder for ObjectStoreBlobServiceConfig
impl ServiceBuilder for ObjectStoreBlobServiceConfig
type Output = dyn BlobService
Source§impl ServiceBuilder for BigtableParameters
Available on crate feature cloud only.
impl ServiceBuilder for BigtableParameters
Available on crate feature
cloud only.