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/05 14:30:53 UTC
[camel] branch camel-3.18.x updated: CAMEL-18690: camel-jbang - export package name with special symbols
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.18.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-3.18.x by this push:
new fc5c5e66e61 CAMEL-18690: camel-jbang - export package name with special symbols
fc5c5e66e61 is described below
commit fc5c5e66e6199a2c6b1ab2626826e4fa1374c441
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sat Nov 5 15:30:20 2022 +0100
CAMEL-18690: camel-jbang - export package name with special symbols
---
.../camel/dsl/jbang/core/commands/ExportBaseCommand.java | 13 +++++++++++++
.../camel/dsl/jbang/core/commands/ExportCamelMain.java | 2 +-
.../apache/camel/dsl/jbang/core/commands/ExportQuarkus.java | 2 +-
.../camel/dsl/jbang/core/commands/ExportSpringBoot.java | 2 +-
4 files changed, 16 insertions(+), 3 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 bc7351a350f..862c996445f 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
@@ -325,6 +325,19 @@ abstract class ExportBaseCommand extends CamelCommand {
// noop
}
+ protected String exportPackageName(String groupId, String artifactId) {
+ // for package name it must be in lower-case and alpha/numeric
+ String s = groupId + "." + artifactId;
+ StringBuilder sb = new StringBuilder();
+ for (char ch : s.toCharArray()) {
+ if (ch == '.' || Character.isAlphabetic(ch) || Character.isDigit(ch)) {
+ ch = Character.toLowerCase(ch);
+ sb.append(ch);
+ }
+ }
+ return sb.toString();
+ }
+
protected void copySettingsAndProfile(
File settings, File profile, File targetDir,
Function<Properties, Object> customize)
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
index e7512cd8b85..37d3f656511 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
@@ -68,7 +68,7 @@ class ExportCamelMain extends Export {
buildDir.mkdirs();
// copy source files
- String packageName = ids[0] + "." + ids[1];
+ String packageName = exportPackageName(ids[0], ids[1]);
File srcJavaDir = new File(BUILD_DIR, "src/main/java/" + packageName.replace('.', '/'));
srcJavaDir.mkdirs();
File srcResourcesDir = new File(BUILD_DIR, "src/main/resources");
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 eaffe07dcb7..946ab483919 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
@@ -88,7 +88,7 @@ class ExportQuarkus extends Export {
buildDir.mkdirs();
// copy source files
- String packageName = ids[0] + "." + ids[1];
+ String packageName = exportPackageName(ids[0], ids[1]);
File srcJavaDir = new File(BUILD_DIR, "src/main/java/" + packageName.replace('.', '/'));
srcJavaDir.mkdirs();
File srcResourcesDir = new File(BUILD_DIR, "src/main/resources");
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index befcdf202fc..732177b8474 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -76,7 +76,7 @@ class ExportSpringBoot extends Export {
buildDir.mkdirs();
// copy source files
- String packageName = ids[0] + "." + ids[1];
+ String packageName = exportPackageName(ids[0], ids[1]);
File srcJavaDir = new File(BUILD_DIR, "src/main/java/" + packageName.replace('.', '/'));
srcJavaDir.mkdirs();
File srcResourcesDir = new File(BUILD_DIR, "src/main/resources");