pub struct RestServiceConfig {
pub name: String,
pub mode: String,
pub server: RestServerSection,
pub log: LogSection,
pub auth: Option<RestAuthSection>,
pub middlewares: RestMiddlewaresSection,
pub rpc_clients: BTreeMap<String, RpcClientSection>,
pub database: Option<DatabaseSection>,
}Expand description
REST service configuration loaded by generated services.
Fields§
§name: StringService name.
mode: StringDeployment mode.
server: RestServerSectionServer listener and request limits.
log: LogSectionLogging configuration.
auth: Option<RestAuthSection>Optional JWT auth configuration.
middlewares: RestMiddlewaresSectionMiddleware toggles.
rpc_clients: BTreeMap<String, RpcClientSection>Outbound RPC clients used by this REST service.
database: Option<DatabaseSection>Optional database used by model repositories.
Implementations§
Source§impl RestServiceConfig
impl RestServiceConfig
Sourcepub fn load(basename: &str, env_prefix: &str) -> Result<Self, ConfigError>
pub fn load(basename: &str, env_prefix: &str) -> Result<Self, ConfigError>
Loads REST service configuration from basename and env vars with env_prefix.
Sourcepub fn addr(&self) -> CoreResult<SocketAddr>
pub fn addr(&self) -> CoreResult<SocketAddr>
Returns the listening address.
Sourcepub fn log_config(&self) -> LogConfig
pub fn log_config(&self) -> LogConfig
Converts to runtime logging config.
Sourcepub fn rest_config(&self) -> RestConfig
pub fn rest_config(&self) -> RestConfig
Converts to runtime REST config.
Sourcepub fn validate_features(&self) -> Vec<ConfigFeatureWarning>
pub fn validate_features(&self) -> Vec<ConfigFeatureWarning>
Returns warnings for config options that are unavailable in this Cargo feature build.
Sourcepub fn jwt_expires(&self) -> Option<u64>
pub fn jwt_expires(&self) -> Option<u64>
Returns configured JWT expiration in seconds, with JWT_AUTH_EXPIRES precedence.
Sourcepub fn rpc_client(&self, name: &str) -> CoreResult<&RpcClientSection>
pub fn rpc_client(&self, name: &str) -> CoreResult<&RpcClientSection>
Returns one outbound RPC client dependency by logical name.
Sourcepub fn rpc_client_config(&self, name: &str) -> CoreResult<RpcClientConfig>
pub fn rpc_client_config(&self, name: &str) -> CoreResult<RpcClientConfig>
Converts one outbound RPC client dependency to runtime RPC config.
Sourcepub fn database_config(&self) -> Option<DatabaseConfig>
pub fn database_config(&self) -> Option<DatabaseConfig>
Converts the optional database dependency to runtime database config.
Trait Implementations§
Source§impl Clone for RestServiceConfig
impl Clone for RestServiceConfig
Source§fn clone(&self) -> RestServiceConfig
fn clone(&self) -> RestServiceConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RestServiceConfig
impl Debug for RestServiceConfig
Source§impl Default for RestServiceConfig
impl Default for RestServiceConfig
Source§impl<'de> Deserialize<'de> for RestServiceConfigwhere
RestServiceConfig: Default,
impl<'de> Deserialize<'de> for RestServiceConfigwhere
RestServiceConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for RestServiceConfig
impl PartialEq for RestServiceConfig
Source§fn eq(&self, other: &RestServiceConfig) -> bool
fn eq(&self, other: &RestServiceConfig) -> bool
self and other values to be equal, and is used by ==.impl Eq for RestServiceConfig
impl StructuralPartialEq for RestServiceConfig
Auto Trait Implementations§
impl Freeze for RestServiceConfig
impl RefUnwindSafe for RestServiceConfig
impl Send for RestServiceConfig
impl Sync for RestServiceConfig
impl Unpin for RestServiceConfig
impl UnsafeUnpin for RestServiceConfig
impl UnwindSafe for RestServiceConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request