Fix handling of additional-hosts with Mongo
Closes gh-36441
This commit is contained in:
parent
28b5b7a218
commit
fe123e5b10
|
@ -61,6 +61,7 @@ public class PropertiesMongoConnectionDetails implements MongoConnectionDetails
|
||||||
builder.append(this.properties.getPort());
|
builder.append(this.properties.getPort());
|
||||||
}
|
}
|
||||||
if (this.properties.getAdditionalHosts() != null) {
|
if (this.properties.getAdditionalHosts() != null) {
|
||||||
|
builder.append(",");
|
||||||
builder.append(String.join(",", this.properties.getAdditionalHosts()));
|
builder.append(String.join(",", this.properties.getAdditionalHosts()));
|
||||||
}
|
}
|
||||||
builder.append("/");
|
builder.append("/");
|
||||||
|
|
|
@ -16,6 +16,8 @@
|
||||||
|
|
||||||
package org.springframework.boot.autoconfigure.mongo;
|
package org.springframework.boot.autoconfigure.mongo;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.mongodb.ConnectionString;
|
import com.mongodb.ConnectionString;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
@ -102,6 +104,15 @@ class PropertiesMongoConnectionDetailsTests {
|
||||||
assertThat(connectionString.getRequiredReplicaSetName()).isEqualTo("test");
|
assertThat(connectionString.getRequiredReplicaSetName()).isEqualTo("test");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void whenAdditionalHostsAreConfiguredThenTheyAreIncludedInHostsOfConnectionString() {
|
||||||
|
this.properties.setHost("mongo1.example.com");
|
||||||
|
this.properties.setAdditionalHosts(List.of("mongo2.example.com", "mongo3.example.com"));
|
||||||
|
ConnectionString connectionString = getConnectionString();
|
||||||
|
assertThat(connectionString.getHosts()).containsExactly("mongo1.example.com", "mongo2.example.com",
|
||||||
|
"mongo3.example.com");
|
||||||
|
}
|
||||||
|
|
||||||
private PropertiesMongoConnectionDetails createConnectionDetails() {
|
private PropertiesMongoConnectionDetails createConnectionDetails() {
|
||||||
return new PropertiesMongoConnectionDetails(this.properties);
|
return new PropertiesMongoConnectionDetails(this.properties);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue