@Singleton
@Requires(env="k8s") @Requires(property="kubernetes.client.discovery.enabled",notEquals="false",defaultValue="true")
public class KubernetesDiscoveryClient
extends java.lang.Object
implements io.micronaut.discovery.DiscoveryClient
DiscoveryClient implementation for Kubernetes using the API.| Modifier and Type | Field and Description |
|---|---|
protected static org.slf4j.Logger |
LOG |
static java.lang.String |
SERVICE_ID |
| Constructor and Description |
|---|
KubernetesDiscoveryClient(io.micronaut.kubernetes.client.reactor.CoreV1ApiReactorClient client,
KubernetesConfiguration configuration,
KubernetesConfiguration.KubernetesDiscoveryConfiguration discoveryConfiguration,
java.util.List<KubernetesServiceConfiguration> serviceConfigurations,
java.util.List<KubernetesServiceInstanceProvider> instanceProviders,
KubernetesServiceInstanceList instanceList)
Creates discovery client that supports the discovery modes.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
java.lang.String |
getDescription() |
org.reactivestreams.Publisher<java.util.List<io.micronaut.discovery.ServiceInstance>> |
getInstances(java.lang.String serviceId) |
org.reactivestreams.Publisher<java.util.List<java.lang.String>> |
getServiceIds() |
public static final java.lang.String SERVICE_ID
protected static final org.slf4j.Logger LOG
@Inject
public KubernetesDiscoveryClient(io.micronaut.kubernetes.client.reactor.CoreV1ApiReactorClient client,
KubernetesConfiguration configuration,
KubernetesConfiguration.KubernetesDiscoveryConfiguration discoveryConfiguration,
java.util.List<KubernetesServiceConfiguration> serviceConfigurations,
java.util.List<KubernetesServiceInstanceProvider> instanceProviders,
KubernetesServiceInstanceList instanceList)
client - An HTTP Client to query the Kubernetes API.configuration - The configuration propertiesdiscoveryConfiguration - The discovery configuration propertiesserviceConfigurations - The manual service discovery configurationsinstanceProviders - The service instance provider implementationsinstanceList - The KubernetesServiceInstanceListpublic org.reactivestreams.Publisher<java.util.List<io.micronaut.discovery.ServiceInstance>> getInstances(java.lang.String serviceId)
getInstances in interface io.micronaut.discovery.DiscoveryClientpublic org.reactivestreams.Publisher<java.util.List<java.lang.String>> getServiceIds()
getServiceIds in interface io.micronaut.discovery.DiscoveryClient@NonNull public java.lang.String getDescription()
getDescription in interface io.micronaut.core.naming.Describedpublic void close()
close in interface java.io.Closeableclose in interface java.lang.AutoCloseable