Deprecate constructor that uses namespace (#1285)

This commit is contained in:
erabii
2023-04-07 16:41:06 +03:00
committed by GitHub
parent b74a7ad66a
commit 55ce8454e0
3 changed files with 25 additions and 6 deletions

View File

@@ -67,8 +67,6 @@ public class KubernetesInformerDiscoveryClientAutoConfiguration {
}
@Deprecated(forRemoval = true)
@Bean
@ConditionalOnMissingBean
public KubernetesInformerDiscoveryClient kubernetesInformerDiscoveryClient(
KubernetesNamespaceProvider kubernetesNamespaceProvider, SharedInformerFactory sharedInformerFactory,
Lister<V1Service> serviceLister, Lister<V1Endpoints> endpointsLister,

View File

@@ -16,6 +16,8 @@
package org.springframework.cloud.kubernetes.client.discovery.reactive;
import java.util.Objects;
import io.kubernetes.client.informer.SharedInformer;
import io.kubernetes.client.informer.SharedInformerFactory;
import io.kubernetes.client.informer.cache.Lister;
@@ -29,7 +31,6 @@ import org.springframework.cloud.client.discovery.ReactiveDiscoveryClient;
import org.springframework.cloud.kubernetes.client.discovery.KubernetesInformerDiscoveryClient;
import org.springframework.cloud.kubernetes.commons.KubernetesNamespaceProvider;
import org.springframework.cloud.kubernetes.commons.discovery.KubernetesDiscoveryProperties;
import org.springframework.util.Assert;
/**
* @author Ryan Baxter
@@ -38,6 +39,7 @@ public class KubernetesInformerReactiveDiscoveryClient implements ReactiveDiscov
private final KubernetesInformerDiscoveryClient kubernetesDiscoveryClient;
@Deprecated(forRemoval = true)
public KubernetesInformerReactiveDiscoveryClient(KubernetesNamespaceProvider kubernetesNamespaceProvider,
SharedInformerFactory sharedInformerFactory, Lister<V1Service> serviceLister,
Lister<V1Endpoints> endpointsLister, SharedInformer<V1Service> serviceInformer,
@@ -47,6 +49,15 @@ public class KubernetesInformerReactiveDiscoveryClient implements ReactiveDiscov
serviceInformer, endpointsInformer, properties);
}
KubernetesInformerReactiveDiscoveryClient(
SharedInformerFactory sharedInformerFactory, Lister<V1Service> serviceLister,
Lister<V1Endpoints> endpointsLister, SharedInformer<V1Service> serviceInformer,
SharedInformer<V1Endpoints> endpointsInformer, KubernetesDiscoveryProperties properties) {
this.kubernetesDiscoveryClient = new KubernetesInformerDiscoveryClient(
sharedInformerFactory, serviceLister, endpointsLister,
serviceInformer, endpointsInformer, properties);
}
@Override
public String description() {
return "Kubernetes Reactive Discovery Client";
@@ -54,7 +65,7 @@ public class KubernetesInformerReactiveDiscoveryClient implements ReactiveDiscov
@Override
public Flux<ServiceInstance> getInstances(String serviceId) {
Assert.notNull(serviceId, "[Assertion failed] - the object argument must not be null");
Objects.requireNonNull(serviceId, "serviceId must be provided");
return Flux.defer(() -> Flux.fromIterable(kubernetesDiscoveryClient.getInstances(serviceId)))
.subscribeOn(Schedulers.boundedElastic());
}

View File

@@ -74,8 +74,7 @@ public class KubernetesInformerReactiveDiscoveryClientAutoConfiguration {
return healthIndicator;
}
@Bean
@ConditionalOnMissingBean
@Deprecated(forRemoval = true)
public KubernetesInformerReactiveDiscoveryClient kubernetesReactiveDiscoveryClient(
KubernetesNamespaceProvider kubernetesNamespaceProvider, SharedInformerFactory sharedInformerFactory,
Lister<V1Service> serviceLister, Lister<V1Endpoints> endpointsLister,
@@ -85,4 +84,15 @@ public class KubernetesInformerReactiveDiscoveryClientAutoConfiguration {
serviceLister, endpointsLister, serviceInformer, endpointsInformer, properties);
}
@Bean
@ConditionalOnMissingBean
KubernetesInformerReactiveDiscoveryClient kubernetesClientReactiveDiscoveryClient(
SharedInformerFactory sharedInformerFactory,
Lister<V1Service> serviceLister, Lister<V1Endpoints> endpointsLister,
SharedInformer<V1Service> serviceInformer, SharedInformer<V1Endpoints> endpointsInformer,
KubernetesDiscoveryProperties properties) {
return new KubernetesInformerReactiveDiscoveryClient(sharedInformerFactory,
serviceLister, endpointsLister, serviceInformer, endpointsInformer, properties);
}
}