Module io.helidon.common.config
Package io.helidon.common.config
Interface ConfiguredProvider<T extends NamedService>
- Type Parameters:
T
- type of the service this provider provides
- All Known Subinterfaces:
ContentEncodingProvider
,JdbcConnectionPoolProvider
,MediaSupportProvider
,ObserveProvider
,OpenApiManagerProvider
,OpenApiServiceProvider
,ProtocolConfigProvider<T>
,ProtocolConfigProvider<T>
,ServerFeatureProvider<T>
,TlsManagerProvider
,WebClientServiceProvider
- All Known Implementing Classes:
AccessLogFeatureProvider
,ConfigObserveProvider
,ContextFeatureProvider
,CorsFeatureProvider
,DefaultOciCertificatesTlsManagerProvider
,DeflateEncodingProvider
,GrpcProtocolConfigProvider
,GzipEncodingProvider
,HealthObserveProvider
,HikariConnectionPoolProvider
,Http1ProtocolConfigProvider
,Http1ProtocolConfigProvider
,Http2ProtocolConfigProvider
,Http2ProtocolConfigProvider
,InfoObserveProvider
,JacksonMediaSupportProvider
,JsonbMediaSupportProvider
,JsonpMediaSupportProvider
,LogObserveProvider
,MetricsObserveProvider
,MultiPartSupportProvider
,ObserveFeatureProvider
,OpenApiFeatureProvider
,OpenApiUiProvider
,SecurityFeatureProvider
,TracingObserveProvider
,WebClientMetricsProvider
,WebClientSecurityProvider
,WebClientTracingProvider
,WsProtocolConfigProvider
,WsProtocolConfigProvider
public interface ConfiguredProvider<T extends NamedService>
Providers that can be loaded from configuration should implement this interface.
The configuration is expected to be similar to this (using YAML as an example):
configured-option: discover-services: true # this is the default providers: provider1-config-key: provider1-config: value provider2-config-key: provider2-config: value
-
Method Summary
-
Method Details
-
configKey
String configKey()Key this service implementation is stored under. This is also considered the service "type" when used in a list in configuration, to allow the same service defined more than once.- Returns:
- key of this implementation
-
create
Create a new instance from the configuration located on the provided node.- Parameters:
config
- located atconfigKey()
nodename
- name of the configured implementation- Returns:
- a new instance created from this config node
-