pub trait CatalogBackend: Send + Sync {
// Required methods
fn list_services<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
params: &'life2 ServiceListParameters,
) -> Pin<Box<dyn Future<Output = Result<Vec<Service>, CatalogProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn get_service<'a, 'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
id: &'a str,
) -> Pin<Box<dyn Future<Output = Result<Option<Service>, CatalogProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn list_endpoints<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
params: &'life2 EndpointListParameters,
) -> Pin<Box<dyn Future<Output = Result<Vec<Endpoint>, CatalogProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
fn get_endpoint<'a, 'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
id: &'a str,
) -> Pin<Box<dyn Future<Output = Result<Option<Endpoint>, CatalogProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
fn get_catalog<'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<Vec<(Service, Vec<Endpoint>)>, CatalogProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
}Required Methods§
Sourcefn list_services<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
params: &'life2 ServiceListParameters,
) -> Pin<Box<dyn Future<Output = Result<Vec<Service>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn list_services<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
params: &'life2 ServiceListParameters,
) -> Pin<Box<dyn Future<Output = Result<Vec<Service>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
List services
Sourcefn get_service<'a, 'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
id: &'a str,
) -> Pin<Box<dyn Future<Output = Result<Option<Service>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_service<'a, 'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
id: &'a str,
) -> Pin<Box<dyn Future<Output = Result<Option<Service>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get single service by ID
Sourcefn list_endpoints<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
params: &'life2 EndpointListParameters,
) -> Pin<Box<dyn Future<Output = Result<Vec<Endpoint>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn list_endpoints<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
params: &'life2 EndpointListParameters,
) -> Pin<Box<dyn Future<Output = Result<Vec<Endpoint>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
List Endpoints
Sourcefn get_endpoint<'a, 'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
id: &'a str,
) -> Pin<Box<dyn Future<Output = Result<Option<Endpoint>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_endpoint<'a, 'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
id: &'a str,
) -> Pin<Box<dyn Future<Output = Result<Option<Endpoint>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'a: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get single endpoint by ID
Sourcefn get_catalog<'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<Vec<(Service, Vec<Endpoint>)>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_catalog<'life0, 'life1, 'async_trait>(
&'life0 self,
state: &'life1 ServiceState,
enabled: bool,
) -> Pin<Box<dyn Future<Output = Result<Vec<(Service, Vec<Endpoint>)>, CatalogProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get Catalog (Services with Endpoints)