This is an automated email from the ASF dual-hosted git repository. jamesnetherton pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit 3fd8d6c155259132e966480b822bbda47bcab74e Author: Pasquale Congiusti <pasquale.congiu...@gmail.com> AuthorDate: Wed Sep 2 10:36:24 2020 +0200 fix(mongodb): support for named clients Adding the possibility to use @MongoClientName to annotate and name a mongo client and use inside the route. Closes #1608 --- .../deployment/SupportMongoDBProcessor.java | 23 ++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/extensions-support/mongodb/deployment/src/main/java/org/apache/camel/quarkus/support/mongodb/deployment/SupportMongoDBProcessor.java b/extensions-support/mongodb/deployment/src/main/java/org/apache/camel/quarkus/support/mongodb/deployment/SupportMongoDBProcessor.java index ada330c..31b1b95 100644 --- a/extensions-support/mongodb/deployment/src/main/java/org/apache/camel/quarkus/support/mongodb/deployment/SupportMongoDBProcessor.java +++ b/extensions-support/mongodb/deployment/src/main/java/org/apache/camel/quarkus/support/mongodb/deployment/SupportMongoDBProcessor.java @@ -35,20 +35,23 @@ class SupportMongoDBProcessor { } @BuildStep - void registerCamelMongoClientProducer( + void registerCamelMongoClientProducers( List<MongoClientBuildItem> mongoClients, BuildProducer<CamelRuntimeBeanBuildItem> runtimeBeans) { for (MongoClientBuildItem mongoClient : mongoClients) { - // If there is a default mongo client instance, then bind it to the camel registry - // with the default mongo client name used by the camel-mongodb component - if (MongoClientBeanUtil.isDefault(mongoClient.getName())) { - runtimeBeans.produce( - new CamelRuntimeBeanBuildItem( - "camelMongoClient", - "com.mongodb.client.MongoClient", - mongoClient.getClient())); - } + String clientName = getMongoClientName(mongoClient.getName()); + runtimeBeans.produce( + new CamelRuntimeBeanBuildItem( + clientName, + "com.mongodb.client.MongoClient", + mongoClient.getClient())); } } + + private String getMongoClientName(String clientName) { + // Use the default mongo client instance name if it is the default connection + return MongoClientBeanUtil.isDefault(clientName) ? "camelMongoClient" : clientName; + } + }