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 2019/10/03 13:37:34 UTC
[camel] 02/02: Additional fixes according feedback provided in PR
#3217
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 5926e27969c8fc4ac40e0522144213e94585cf87
Author: Pasquale Congiusti <pa...@gmail.com>
AuthorDate: Thu Oct 3 09:53:05 2019 +0200
Additional fixes according feedback provided in PR #3217
---
...tion.java => ConnectionParamsConfiguration.java} | 11 +++--------
.../mongodb/meta/MongoDBMetaExtension.java | 14 ++++++++------
.../verifier/MongoComponentVerifierExtension.java | 8 ++++----
.../component/mongodb/AbstractMongoDbTest.java | 21 +++++++++++++++------
4 files changed, 30 insertions(+), 24 deletions(-)
diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/conf/MongoConfiguration.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/conf/ConnectionParamsConfiguration.java
similarity index 91%
rename from components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/conf/MongoConfiguration.java
rename to components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/conf/ConnectionParamsConfiguration.java
index 1d8509f..c671462 100644
--- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/conf/MongoConfiguration.java
+++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/conf/ConnectionParamsConfiguration.java
@@ -18,25 +18,20 @@ package org.apache.camel.component.mongodb.conf;
import java.util.Map;
-public class MongoConfiguration {
+public class ConnectionParamsConfiguration {
private String host = "localhost:27017";
private String user;
private String password;
private String adminDB = "admin";
- public MongoConfiguration() {
- super();
- }
-
- public MongoConfiguration(Map<String, String> parameters) {
- super();
+ public ConnectionParamsConfiguration(Map<String, String> parameters) {
this.host = parameters.get("host");
this.user = parameters.get("user");
this.password = parameters.get("password");
// Optional parameters
String optionalAdminDB = parameters.getOrDefault("adminDB", "");
- if (!"".equals(optionalAdminDB)) {
+ if (!optionalAdminDB.isEmpty()) {
this.adminDB = optionalAdminDB;
}
}
diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/meta/MongoDBMetaExtension.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/meta/MongoDBMetaExtension.java
index 5c493f3..bca0131 100644
--- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/meta/MongoDBMetaExtension.java
+++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/meta/MongoDBMetaExtension.java
@@ -29,8 +29,7 @@ import com.mongodb.client.model.Filters;
import org.apache.camel.CamelContext;
import org.apache.camel.component.extension.metadata.AbstractMetaDataExtension;
import org.apache.camel.component.extension.metadata.MetaDataBuilder;
-import org.apache.camel.component.mongodb.MongoDbComponent;
-import org.apache.camel.component.mongodb.conf.MongoConfiguration;
+import org.apache.camel.component.mongodb.conf.ConnectionParamsConfiguration;
import org.bson.Document;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -56,17 +55,20 @@ public class MongoDBMetaExtension extends AbstractMetaDataExtension {
Map<String, String> textParameters = cast(parameters);
LOGGER.debug("Fetching mongodb meta information with params: {}", textParameters);
- MongoConfiguration mongoConf = new MongoConfiguration(textParameters);
+ ConnectionParamsConfiguration mongoConf = new ConnectionParamsConfiguration(textParameters);
MongoClientURI connectionURI = new MongoClientURI(mongoConf.getMongoClientURI());
- JsonNode collectionInfoRoot = null;
+ JsonNode collectionInfoRoot;
try (MongoClient mongoConnection = new MongoClient(connectionURI)) {
Document collectionInfo = mongoConnection.getDatabase(textParameters.get("database"))
.listCollections()
- .filter(Filters.eq("name", textParameters.get("collection"))).first();
+ .filter(Filters.eq("name", textParameters.get("collection")))
+ .first();
LOGGER.debug("Collection info: {}", collectionInfo);
if (collectionInfo == null) {
- LOGGER.error("Cannot read information for collection {}.{}", textParameters.get("database"),
+ LOGGER.error(
+ "Cannot read information for collection {}.{}",
+ textParameters.get("database"),
textParameters.get("collection"));
return Optional.empty();
}
diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/verifier/MongoComponentVerifierExtension.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/verifier/MongoComponentVerifierExtension.java
index 99d05c9..0cc390f 100644
--- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/verifier/MongoComponentVerifierExtension.java
+++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/verifier/MongoComponentVerifierExtension.java
@@ -27,7 +27,7 @@ import org.apache.camel.component.extension.verifier.DefaultComponentVerifierExt
import org.apache.camel.component.extension.verifier.ResultBuilder;
import org.apache.camel.component.extension.verifier.ResultErrorBuilder;
import org.apache.camel.component.extension.verifier.ResultErrorHelper;
-import org.apache.camel.component.mongodb.conf.MongoConfiguration;
+import org.apache.camel.component.mongodb.conf.ConnectionParamsConfiguration;
import org.bson.Document;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -60,7 +60,7 @@ public class MongoComponentVerifierExtension extends DefaultComponentVerifierExt
}
private void verifyCredentials(ResultBuilder builder, Map<String, Object> parameters) {
- MongoConfiguration mongoConf = new MongoConfiguration(cast(parameters));
+ ConnectionParamsConfiguration mongoConf = new ConnectionParamsConfiguration(cast(parameters));
MongoClientOptions.Builder optionsBuilder = MongoClientOptions.builder();
// Avoid retry and long timeout
optionsBuilder.connectTimeout(CONNECTION_TIMEOUT);
@@ -80,8 +80,8 @@ public class MongoComponentVerifierExtension extends DefaultComponentVerifierExt
builder.error(errorBuilder.build());
} catch (MongoTimeoutException e) {
// When there is any connection exception, the driver tries to reconnect until timeout is reached
- // wrapping the original socket exception into a timeout exception
- String description = null;
+ // wrapping the original security/socket exception into a timeout exception
+ String description;
VerificationError.StandardCode code = VerificationError.StandardCode.GENERIC;
if (e.getMessage().contains("com.mongodb.MongoSecurityException")) {
code = VerificationError.StandardCode.AUTHENTICATION;
diff --git a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java
index ad361d3..53d2210 100644
--- a/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java
+++ b/components/camel-mongodb/src/test/java/org/apache/camel/component/mongodb/AbstractMongoDbTest.java
@@ -96,14 +96,23 @@ public abstract class AbstractMongoDbTest extends CamelTestSupport {
MongoDatabase admin = mongo.getDatabase("admin");
MongoCollection<Document> usersCollection = admin.getCollection("system.users");
if (usersCollection.count() == 0) {
- usersCollection.insertOne(Document.parse("{\n" + " \"_id\": \"admin.test-user\",\n"
- + " \"user\": \"test-user\",\n" + " \"db\": \"admin\",\n" + " \"credentials\": {\n"
- + " \"SCRAM-SHA-1\": {\n" + " \"iterationCount\": 10000,\n"
+ usersCollection.insertOne(Document.parse("{\n"
+ + " \"_id\": \"admin.test-user\",\n"
+ + " \"user\": \"test-user\",\n"
+ + " \"db\": \"admin\",\n"
+ + " \"credentials\": {\n"
+ + " \"SCRAM-SHA-1\": {\n"
+ + " \"iterationCount\": 10000,\n"
+ " \"salt\": \"gmmPAoNdvFSWCV6PGnNcAw==\",\n"
+ " \"storedKey\": \"qE9u1Ax7Y40hisNHL2b8/LAvG7s=\",\n"
- + " \"serverKey\": \"RefeJcxClt9JbOP/VnrQ7YeQh6w=\"\n" + " }\n" + " },\n"
- + " \"roles\": [\n" + " {\n" + " \"role\": \"readWrite\",\n"
- + " \"db\": \"test\"\n" + " }\n" + " ]\n" + "}" + ""));
+ + " \"serverKey\": \"RefeJcxClt9JbOP/VnrQ7YeQh6w=\"\n"
+ + " }\n" + " },\n"
+ + " \"roles\": [\n" + " {\n"
+ + " \"role\": \"readWrite\",\n"
+ + " \"db\": \"test\"\n"
+ + " }\n"
+ + " ]\n"
+ + "}"));
}
}