Skip to content

Commit 951ff0c

Browse files
committed
feat: New property spring.cloud.loadbalancer.secondary-zones
1 parent 49d90ae commit 951ff0c

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/config/LoadBalancerAutoConfiguration.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818

1919
import java.util.Collections;
2020
import java.util.List;
21+
import java.util.Optional;
22+
23+
import io.netty.util.internal.StringUtil;
2124

2225
import org.springframework.beans.factory.ObjectProvider;
2326
import org.springframework.boot.autoconfigure.AutoConfigureBefore;
@@ -41,6 +44,7 @@
4144
/**
4245
* @author Spencer Gibb
4346
* @author Olga Maciaszek-Sharma
47+
* @author Jiwon Jeon
4448
*/
4549
@Configuration(proxyBeanMethods = false)
4650
@LoadBalancerClients
@@ -50,10 +54,14 @@
5054
@ConditionalOnProperty(value = "spring.cloud.loadbalancer.enabled", havingValue = "true", matchIfMissing = true)
5155
public class LoadBalancerAutoConfiguration {
5256

57+
private static final String ZONE_SPLITTER_COMMA = ",";
58+
5359
@Bean
5460
@ConditionalOnMissingBean
5561
public LoadBalancerZoneConfig zoneConfig(Environment environment) {
56-
return new LoadBalancerZoneConfig(environment.getProperty("spring.cloud.loadbalancer.zone"));
62+
return new LoadBalancerZoneConfig(environment.getProperty("spring.cloud.loadbalancer.zone"),
63+
List.of(Optional.ofNullable(environment.getProperty("spring.cloud.loadbalancer.secondary-zones"))
64+
.orElse(StringUtil.EMPTY_STRING).split(ZONE_SPLITTER_COMMA)));
5765
}
5866

5967
@ConditionalOnMissingBean

0 commit comments

Comments
 (0)