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 2023/06/14 10:24:52 UTC
[camel] 01/03: CAMEL-19454: camel-jbang - Export should support --open-api
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.x
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 3b2787a56c672e9285203b15400f824c2ef94220
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Jun 14 09:58:12 2023 +0200
CAMEL-19454: camel-jbang - Export should support --open-api
---
.../camel/dsl/jbang/core/commands/Export.java | 2 +
.../dsl/jbang/core/commands/ExportBaseCommand.java | 7 ++-
.../dsl/jbang/core/commands/ExportQuarkus.java | 3 +-
.../camel/dsl/jbang/core/common/RuntimeUtil.java | 52 +++++++++++-----------
4 files changed, 36 insertions(+), 28 deletions(-)
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
index ea0e8253ce6..aaeaca73e42 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
@@ -66,6 +66,7 @@ public class Export extends ExportBaseCommand {
= "true".equals(prop.getProperty("camel.jbang.secretsRefresh", this.secretsRefresh ? "true" : "false"));
this.secretsRefreshProviders
= prop.getProperty("camel.jbang.secretsRefreshProviders", this.secretsRefreshProviders);
+ this.openapi = prop.getProperty("camel.jbang.openApi", this.openapi);
}
if (runtime == null) {
@@ -118,6 +119,7 @@ public class Export extends ExportBaseCommand {
cmd.additionalProperties = this.additionalProperties;
cmd.secretsRefresh = this.secretsRefresh;
cmd.secretsRefreshProviders = this.secretsRefreshProviders;
+ cmd.openapi = this.openapi;
// run export
return cmd.export();
}
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 7ead086b366..4c28a7e3419 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
@@ -145,6 +145,9 @@ abstract class ExportBaseCommand extends CamelCommand {
description = "Build tool to use (maven or gradle)")
protected String buildTool;
+ @CommandLine.Option(names = { "--open-api" }, description = "Adds an OpenAPI spec from the given file (json or yaml file)")
+ protected String openapi;
+
@CommandLine.Option(names = {
"--dir",
"--directory" }, description = "Directory where the project will be exported", defaultValue = ".")
@@ -254,8 +257,8 @@ abstract class ExportBaseCommand extends CamelCommand {
run.localKameletDir = localKameletDir;
run.dependencies = dependencies;
run.files = files;
- Integer code = run.runSilent();
- return code;
+ run.openapi = openapi;
+ return run.runSilent();
}
protected Set<String> resolveDependencies(File settings, File profile) throws Exception {
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 3939eabe67e..aa7cc6bce78 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
@@ -210,8 +210,9 @@ class ExportQuarkus extends Export {
private static String removeScheme(String s) {
if (s.contains(":")) {
- return StringHelper.after(s, ":");
+ s = StringHelper.after(s, ":");
}
+ s = s.replace(".camel-jbang/", "");
return s;
}
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 45becca7b0d..6465bca201e 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
@@ -55,32 +55,34 @@ public final class RuntimeUtil {
}
public static void setRootLoggingLevel(String level) {
- level = level.toLowerCase();
+ if (level != null) {
+ level = level.toLowerCase();
- switch (level) {
- case "off":
- Configurator.setRootLevel(Level.OFF);
- break;
- case "trace":
- Configurator.setRootLevel(Level.TRACE);
- break;
- case "debug":
- Configurator.setRootLevel(Level.DEBUG);
- break;
- case "info":
- Configurator.setRootLevel(Level.INFO);
- break;
- case "warn":
- Configurator.setRootLevel(Level.WARN);
- break;
- case "error":
- Configurator.setRootLevel(Level.ERROR);
- break;
- case "fatal":
- Configurator.setRootLevel(Level.FATAL);
- break;
- default: {
- Configurator.setRootLevel(Level.INFO);
+ switch (level) {
+ case "off":
+ Configurator.setRootLevel(Level.OFF);
+ break;
+ case "trace":
+ Configurator.setRootLevel(Level.TRACE);
+ break;
+ case "debug":
+ Configurator.setRootLevel(Level.DEBUG);
+ break;
+ case "info":
+ Configurator.setRootLevel(Level.INFO);
+ break;
+ case "warn":
+ Configurator.setRootLevel(Level.WARN);
+ break;
+ case "error":
+ Configurator.setRootLevel(Level.ERROR);
+ break;
+ case "fatal":
+ Configurator.setRootLevel(Level.FATAL);
+ break;
+ default: {
+ Configurator.setRootLevel(Level.INFO);
+ }
}
}
}