You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2022/11/22 08:27:21 UTC
[camel] branch main updated: Fixed Camel 18719 : camel-jbang - Adding the dependency of camel-quarkus-core creates two entries in exported POM.xml (#8749)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 683e697689b Fixed Camel 18719 : camel-jbang - Adding the dependency of camel-quarkus-core creates two entries in exported POM.xml (#8749)
683e697689b is described below
commit 683e697689baa24983e71f197181f93887be274c
Author: Mrinal Sharma <mr...@users.noreply.github.com>
AuthorDate: Tue Nov 22 03:27:13 2022 -0500
Fixed Camel 18719 : camel-jbang - Adding the dependency of camel-quarkus-core creates two entries in exported POM.xml (#8749)
* Fixed CAMEL-18719
* Update dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/RuntimeUtil.java
Co-authored-by: Nicolas Filotto <es...@users.noreply.github.com>
* Incorporated review comments
* Incorporated more comments
* In case application.properties is missing, getDependencies will throw NPE. With the fix, NPE will not be thrown
Co-authored-by: Nicolas Filotto <es...@users.noreply.github.com>
---
.../dsl/jbang/core/commands/ExportBaseCommand.java | 4 ++--
.../camel/dsl/jbang/core/commands/ExportQuarkus.java | 5 +++++
.../org/apache/camel/dsl/jbang/core/commands/Run.java | 18 +++++++++---------
.../camel/dsl/jbang/core/common/RuntimeUtil.java | 16 ++++++++++++++++
4 files changed, 32 insertions(+), 11 deletions(-)
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 592079b57bc..8219f6438a3 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -265,8 +265,8 @@ abstract class ExportBaseCommand extends CamelCommand {
if (profile != null && profile.exists()) {
Properties prop = new CamelCaseOrderedProperties();
RuntimeUtil.loadProperties(prop, profile);
- String deps = prop.getProperty("camel.jbang.dependencies");
- if (deps != null) {
+ String deps = RuntimeUtil.getDependencies(prop);
+ if (!deps.isBlank()) {
for (String d : deps.split(",")) {
answer.add(d.trim());
}
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index c3941c6822d..a8cf18110dc 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -354,6 +354,11 @@ class ExportQuarkus extends Export {
StringBuilder sb = new StringBuilder();
for (MavenGav gav : gavs) {
+ //Special case, quarkus-pom.tmpl already have them included.
+ if ("camel-quarkus-core".equals(gav.getArtifactId()) || "camel-quarkus-platform-http".equals(gav.getArtifactId())
+ || "camel-quarkus-microprofile-health".equals(gav.getArtifactId())) {
+ continue;
+ }
sb.append(" <dependency>\n");
sb.append(" <groupId>").append(gav.getGroupId()).append("</groupId>\n");
sb.append(" <artifactId>").append(gav.getArtifactId()).append("</artifactId>\n");
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
index af75380840e..d0125ec5ef6 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
@@ -342,15 +342,15 @@ class Run extends CamelCommand {
writeSetting(main, profileProperties, "camel.jbang.console", console ? "true" : "false");
writeSetting(main, profileProperties, "camel.main.routesCompileDirectory", WORK_DIR);
// merge existing dependencies with --deps
- String dep = profileProperties != null ? profileProperties.getProperty("camel.jbang.dependencies") : null;
- if (dep == null) {
- dep = dependencies;
- } else if (dependencies != null && !dependencies.equals(dep)) {
- dep += "," + dependencies;
- }
- if (dep != null) {
- main.addInitialProperty("camel.jbang.dependencies", dep);
- writeSettings("camel.jbang.dependencies", dep);
+ String deps = RuntimeUtil.getDependencies(profileProperties);
+ if (deps.isBlank()) {
+ deps = dependencies != null ? dependencies : "";
+ } else if (dependencies != null && !dependencies.equals(deps)) {
+ deps += "," + dependencies;
+ }
+ if (!deps.isBlank()) {
+ main.addInitialProperty("camel.jbang.dependencies", deps);
+ writeSettings("camel.jbang.dependencies", deps);
}
// command line arguments
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/RuntimeUtil.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/RuntimeUtil.java
index d496de8a0e0..edd832c98f8 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/RuntimeUtil.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/RuntimeUtil.java
@@ -83,4 +83,20 @@ public final class RuntimeUtil {
}
}
+ public static String getDependencies(Properties properties) {
+ String deps = properties != null ? properties.getProperty("camel.jbang.dependencies") : null;
+ if (deps != null) {
+ deps = deps.trim();
+ if (deps.length() > 0 && deps.charAt(0) == ',') {
+ deps = deps.substring(1);
+ }
+ if (deps.length() > 0 && deps.charAt(deps.length() - 1) == ',') {
+ deps = deps.substring(0, deps.lastIndexOf(","));
+ }
+ } else {
+ deps = "";
+ }
+ return deps;
+ }
+
}