You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2021/12/15 12:34:21 UTC
[camel] 01/03: CAMEL-17339 - Avoid List as configuration parameter types in Endpoint configurations - Azure-CosmosDB
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 38c8e72db1f14e830261c7d61aa7d41cbced6194
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Wed Dec 15 13:12:13 2021 +0100
CAMEL-17339 - Avoid List<String> as configuration parameter types in Endpoint configurations - Azure-CosmosDB
---
.../camel/component/azure/cosmosdb/CosmosDbConfiguration.java | 6 +++---
.../component/azure/cosmosdb/client/CosmosDbClientFactory.java | 7 ++++++-
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/CosmosDbConfiguration.java b/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/CosmosDbConfiguration.java
index a947c02..c8d099b 100644
--- a/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/CosmosDbConfiguration.java
+++ b/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/CosmosDbConfiguration.java
@@ -51,7 +51,7 @@ public class CosmosDbConfiguration implements Cloneable {
@UriParam(label = "common", defaultValue = "SESSION")
private ConsistencyLevel consistencyLevel = ConsistencyLevel.SESSION;
@UriParam(label = "common")
- private List<String> preferredRegions;
+ private String preferredRegions;
@UriParam(label = "common", defaultValue = "false")
private boolean clientTelemetryEnabled;
@UriParam(label = "common", defaultValue = "false")
@@ -268,11 +268,11 @@ public class CosmosDbConfiguration implements Cloneable {
* When EnableEndpointDiscovery is true and PreferredRegions is non-empty, the SDK will prefer to use the regions in
* the container in the order they are specified to perform operations.
*/
- public List<String> getPreferredRegions() {
+ public String getPreferredRegions() {
return preferredRegions;
}
- public void setPreferredRegions(List<String> preferredRegions) {
+ public void setPreferredRegions(String preferredRegions) {
this.preferredRegions = preferredRegions;
}
diff --git a/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/client/CosmosDbClientFactory.java b/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/client/CosmosDbClientFactory.java
index cde387c..9d43858 100644
--- a/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/client/CosmosDbClientFactory.java
+++ b/components/camel-azure/camel-azure-cosmosdb/src/main/java/org/apache/camel/component/azure/cosmosdb/client/CosmosDbClientFactory.java
@@ -21,6 +21,9 @@ import com.azure.cosmos.CosmosClient;
import com.azure.cosmos.CosmosClientBuilder;
import org.apache.camel.component.azure.cosmosdb.CosmosDbConfiguration;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
public final class CosmosDbClientFactory {
private CosmosDbClientFactory() {
@@ -42,7 +45,9 @@ public final class CosmosDbClientFactory {
.endpoint(configuration.getDatabaseEndpoint())
.contentResponseOnWriteEnabled(configuration.isContentResponseOnWriteEnabled())
.consistencyLevel(configuration.getConsistencyLevel())
- .preferredRegions(configuration.getPreferredRegions())
+ .preferredRegions(Stream.of(configuration.getPreferredRegions().split(","))
+ .map(String::trim)
+ .collect(Collectors.toList()))
.connectionSharingAcrossClientsEnabled(configuration.isConnectionSharingAcrossClientsEnabled())
.clientTelemetryEnabled(configuration.isClientTelemetryEnabled())
.multipleWriteRegionsEnabled(configuration.isMultipleWriteRegionsEnabled())