Skip to content

Commit

Permalink
Merge pull request #861 from assimbly/feature/mongo-client-provider-d…
Browse files Browse the repository at this point in the history
…ynamic-mongo-container-name

MongoClientProvider - set mongo container name dynamically
  • Loading branch information
skin27 authored Oct 25, 2024
2 parents d9ca8c5 + d2d2c1c commit a0ee859
Showing 1 changed file with 12 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoDatabase;
import org.apache.commons.lang3.StringUtils;
import org.springframework.context.annotation.Configuration;

import java.io.Serializable;
Expand All @@ -18,6 +19,8 @@
@Configuration
public class MongoClientProvider implements Serializable {

private final String MONGO_CONTAINER_NAME = "MONGO_CONTAINER_NAME";

private static final MongoClientProvider INSTANCE = new MongoClientProvider();

private static MongoClient client;
Expand Down Expand Up @@ -48,8 +51,16 @@ MongoDatabase getDatabase(String name) {
private void init() {
client = MongoClients.create(MongoClientSettings.builder()
.applyToClusterSettings(builder ->
builder.hosts(Arrays.asList(new ServerAddress("flux-mongo", 27017))))
builder.hosts(Arrays.asList(new ServerAddress(getMongoContainerName(), 27017))))
.build());
}

private String getMongoContainerName() {
String mongoContainer = System.getenv(MONGO_CONTAINER_NAME);
if (StringUtils.isNotEmpty(mongoContainer)) {
return mongoContainer;
}
return "flux-mongo"; // by default
}

}

0 comments on commit a0ee859

Please sign in to comment.