|
|
|
@ -23,6 +23,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
@@ -23,6 +23,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
|
|
|
|
|
import org.springframework.boot.context.properties.EnableConfigurationProperties; |
|
|
|
|
import org.springframework.context.annotation.Bean; |
|
|
|
|
import org.springframework.context.annotation.Configuration; |
|
|
|
|
import org.springframework.context.annotation.Lazy; |
|
|
|
|
|
|
|
|
|
import com.netflix.client.config.DefaultClientConfigImpl; |
|
|
|
|
import com.netflix.client.config.IClientConfig; |
|
|
|
@ -87,7 +88,17 @@ public class RibbonClientConfiguration {
@@ -87,7 +88,17 @@ public class RibbonClientConfiguration {
|
|
|
|
|
return serverList; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Create a Netflix {@link RestClient} integrated with Ribbon if none already exists in the |
|
|
|
|
* application context. It is not required for Ribbon to work properly and is therefore |
|
|
|
|
* created lazily if ever another component requires it. |
|
|
|
|
* |
|
|
|
|
* @param config the configuration to use by the underlying Ribbon instance |
|
|
|
|
* @param loadBalancer the load balancer to use by the underlying Ribbon instance |
|
|
|
|
* @return a {@link RestClient} instances backed by Ribbon |
|
|
|
|
*/ |
|
|
|
|
@Bean |
|
|
|
|
@Lazy |
|
|
|
|
@ConditionalOnMissingBean |
|
|
|
|
public RestClient ribbonRestClient(IClientConfig config, ILoadBalancer loadBalancer) { |
|
|
|
|
RestClient client = new OverrideRestClient(config); |
|
|
|
|