Class LoadBalancerClientFactory
- java.lang.Object
-
- org.springframework.cloud.context.named.NamedContextFactory<LoadBalancerClientSpecification>
-
- org.springframework.cloud.loadbalancer.support.LoadBalancerClientFactory
-
- All Implemented Interfaces:
org.springframework.beans.factory.Aware,org.springframework.beans.factory.DisposableBean,ReactiveLoadBalancer.Factory<ServiceInstance>,org.springframework.context.ApplicationContextAware
public class LoadBalancerClientFactory extends NamedContextFactory<LoadBalancerClientSpecification> implements ReactiveLoadBalancer.Factory<ServiceInstance>
A factory that creates client, load balancer and client configuration instances. It creates a Spring ApplicationContext per client name, and extracts the beans that it needs from there.- Author:
- Spencer Gibb, Dave Syer, Olga Maciaszek-Sharma
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.springframework.cloud.context.named.NamedContextFactory
NamedContextFactory.Specification
-
-
Field Summary
Fields Modifier and Type Field Description static StringNAMESPACEProperty source name for load balancer.static StringPROPERTY_NAMEProperty for client name within the load balancer namespace.
-
Constructor Summary
Constructors Constructor Description LoadBalancerClientFactory()Deprecated.LoadBalancerClientFactory(LoadBalancerClientsProperties properties)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ReactiveLoadBalancer<ServiceInstance>getInstance(String serviceId)static StringgetName(org.springframework.core.env.Environment environment)LoadBalancerPropertiesgetProperties(String serviceId)-
Methods inherited from class org.springframework.cloud.context.named.NamedContextFactory
createContext, destroy, generateDisplayName, getContext, getContextNames, getInstance, getInstance, getInstance, getInstances, getLazyProvider, getParent, getProvider, setApplicationContext, setConfigurations
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.springframework.cloud.client.loadbalancer.reactive.ReactiveLoadBalancer.Factory
getInstance, getInstances
-
-
-
-
Field Detail
-
NAMESPACE
public static final String NAMESPACE
Property source name for load balancer.- See Also:
- Constant Field Values
-
PROPERTY_NAME
public static final String PROPERTY_NAME
Property for client name within the load balancer namespace.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
LoadBalancerClientFactory
@Deprecated public LoadBalancerClientFactory()
Deprecated.
-
LoadBalancerClientFactory
public LoadBalancerClientFactory(LoadBalancerClientsProperties properties)
-
-
Method Detail
-
getName
public static String getName(org.springframework.core.env.Environment environment)
-
getInstance
public ReactiveLoadBalancer<ServiceInstance> getInstance(String serviceId)
- Specified by:
getInstancein interfaceReactiveLoadBalancer.Factory<ServiceInstance>
-
getProperties
public LoadBalancerProperties getProperties(String serviceId)
- Specified by:
getPropertiesin interfaceReactiveLoadBalancer.Factory<ServiceInstance>
-
-