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
commit 7db716734066fab618411936d691663b852e6cbc Author: Claus Ibsen <[email protected]> AuthorDate: Mon May 23 11:00:16 2022 +0200 camel-jbang - Polished --- .../apache/camel/dsl/jbang/core/commands/Bind.java | 7 +++++-- .../camel/dsl/jbang/core/commands/Build.java | 12 +++++++----- .../dsl/jbang/core/commands/CamelJBangMain.java | 22 +++++++++++----------- .../dsl/jbang/core/commands/CodeGenerator.java | 8 +++++--- .../dsl/jbang/core/commands/CodeRestGenerator.java | 7 +++++-- .../camel/dsl/jbang/core/commands/Deploy.java | 8 +++++--- .../camel/dsl/jbang/core/commands/Image.java | 7 +++++-- .../apache/camel/dsl/jbang/core/commands/Init.java | 7 +++++-- .../camel/dsl/jbang/core/commands/Manifest.java | 7 +++++-- .../camel/dsl/jbang/core/commands/Package.java | 11 ++++++----- .../apache/camel/dsl/jbang/core/commands/Pipe.java | 2 -- .../camel/dsl/jbang/core/commands/UberJar.java | 1 - .../camel/dsl/jbang/core/commands/Undeploy.java | 7 +++++-- 13 files changed, 64 insertions(+), 42 deletions(-) diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Bind.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Bind.java index eb0df0d8641..7a6b2d0c8c8 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Bind.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Bind.java @@ -21,7 +21,6 @@ import java.io.InputStream; import java.net.URL; import java.util.Iterator; import java.util.Set; -import java.util.concurrent.Callable; import org.apache.camel.github.GitHubResourceResolver; import org.apache.camel.impl.engine.DefaultResourceResolvers; @@ -44,7 +43,7 @@ import static org.apache.camel.dsl.yaml.common.YamlDeserializerSupport.asText; import static org.apache.camel.dsl.yaml.common.YamlDeserializerSupport.nodeAt; @Command(name = "bind", description = "Bind source and sink Kamelets as a new Camel integration") -class Bind implements Callable<Integer> { +class Bind extends CamelCommand { @CommandLine.Parameters(description = "Source such as a Kamelet or Camel endpoint uri", arity = "1") private String source; @@ -60,6 +59,10 @@ class Bind implements Callable<Integer> { private boolean helpRequested = false; //CHECKSTYLE:ON + public Bind(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { // the kamelet binding source and sink can either be a kamelet or an uri diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Build.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Build.java index 0385a73c9f7..8738f189e6c 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Build.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Build.java @@ -16,23 +16,25 @@ */ package org.apache.camel.dsl.jbang.core.commands; -import java.util.concurrent.Callable; - import picocli.CommandLine; import picocli.CommandLine.Command; import picocli.CommandLine.Option; -@Command(name = "build", description = "Build Camel container image and resources") -class Build implements Callable<Integer> { +@Command(name = "build", description = "Build Camel container image and resources (use --help to see sub commands)") +class Build extends CamelCommand { + //CHECKSTYLE:OFF @Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested = false; + + public Build(CamelJBangMain main) { + super(main); + } //CHECKSTYLE:ON @Override public Integer call() throws Exception { new CommandLine(this).execute("--help"); - return 0; } } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CamelJBangMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CamelJBangMain.java index fc22b313500..5d4b3b13ac0 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CamelJBangMain.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CamelJBangMain.java @@ -35,18 +35,18 @@ public class CamelJBangMain implements Callable<Integer> { CamelJBangMain main = new CamelJBangMain(); commandLine = new CommandLine(main) .addSubcommand("run", new CommandLine(new Run(main))) - .addSubcommand("init", new CommandLine(new Init())) - .addSubcommand("bind", new CommandLine(new Bind())) + .addSubcommand("init", new CommandLine(new Init(main))) + .addSubcommand("bind", new CommandLine(new Bind(main))) .addSubcommand("pipe", new CommandLine(new Pipe(main))) - .addSubcommand("package", new CommandLine(new Package()) - .addSubcommand("uber-jar", new UberJar(main))) - .addSubcommand("generate", new CommandLine(new CodeGenerator()) - .addSubcommand("rest", new CodeRestGenerator())) - .addSubcommand("build", new CommandLine(new Build()) - .addSubcommand("manifests", new Manifest()) - .addSubcommand("image", new Image())) - .addSubcommand("deploy", new CommandLine(new Deploy())) - .addSubcommand("undeploy", new CommandLine(new Undeploy())); + .addSubcommand("package", new CommandLine(new Package(main)) + .addSubcommand("uber-jar", new CommandLine(new UberJar(main)))) + .addSubcommand("generate", new CommandLine(new CodeGenerator(main)) + .addSubcommand("rest", new CommandLine(new CodeRestGenerator(main)))) + .addSubcommand("build", new CommandLine(new Build(main)) + .addSubcommand("manifests", new CommandLine(new Manifest(main))) + .addSubcommand("image", new CommandLine(new Image(main)))) + .addSubcommand("deploy", new CommandLine(new Deploy(main))) + .addSubcommand("undeploy", new CommandLine(new Undeploy(main))); /* // TODO: do not show commands that are deprecated and to be either removed or reworked .addSubcommand("search", new CommandLine(new Search()) .addSubcommand("kamelets", new SearchKamelets()) diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeGenerator.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeGenerator.java index 7ce03afb3f4..17ca4d56027 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeGenerator.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeGenerator.java @@ -16,16 +16,18 @@ */ package org.apache.camel.dsl.jbang.core.commands; -import java.util.concurrent.Callable; - import picocli.CommandLine; @CommandLine.Command(name = "generate", description = "Generate source code (use --help to see sub commands)") -public class CodeGenerator implements Callable<Integer> { +public class CodeGenerator extends CamelCommand { @CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested = true; + public CodeGenerator(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { new CommandLine(this).execute("--help"); diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeRestGenerator.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeRestGenerator.java index 885e4733116..d50b669d4d5 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeRestGenerator.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/CodeRestGenerator.java @@ -18,7 +18,6 @@ package org.apache.camel.dsl.jbang.core.commands; import java.nio.file.Files; import java.nio.file.Paths; -import java.util.concurrent.Callable; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; @@ -32,7 +31,7 @@ import org.apache.logging.log4j.core.config.Configurator; import picocli.CommandLine; @CommandLine.Command(name = "rest", description = "Generate REST DSL source code from OpenApi specification") -public class CodeRestGenerator implements Callable<Integer> { +public class CodeRestGenerator extends CamelCommand { @CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested; @@ -45,6 +44,10 @@ public class CodeRestGenerator implements Callable<Integer> { @CommandLine.Option(names = { "-r", "--routes" }, description = "Generate routes (YAML)") private boolean generateRoutes; + public CodeRestGenerator(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { final ObjectMapper mapper = new ObjectMapper(); diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Deploy.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Deploy.java index a88072e5a1c..d601a6eda7d 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Deploy.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Deploy.java @@ -16,8 +16,6 @@ */ package org.apache.camel.dsl.jbang.core.commands; -import java.util.concurrent.Callable; - import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.Status; import io.fabric8.kubernetes.api.model.apps.Deployment; @@ -30,7 +28,7 @@ import io.fabric8.openshift.client.OpenShiftClient; import picocli.CommandLine; @CommandLine.Command(name = "deploy", description = "Deploy resources to Kubernetes, OpenShift, Minikube") -public class Deploy implements Callable<Integer> { +public class Deploy extends CamelCommand { @CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested; @@ -63,6 +61,10 @@ public class Deploy implements Callable<Integer> { @CommandLine.Option(names = { "-p", "--password" }, description = "Password") private String password; + public Deploy(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { if (openshift) { diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Image.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Image.java index 8232e7f7c01..20150493511 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Image.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Image.java @@ -23,7 +23,6 @@ import java.io.InputStreamReader; import java.io.Reader; import java.nio.file.Paths; import java.util.Arrays; -import java.util.concurrent.Callable; import java.util.concurrent.TimeUnit; import java.util.function.Consumer; @@ -43,7 +42,7 @@ import io.fabric8.openshift.client.OpenShiftClient; import picocli.CommandLine; @CommandLine.Command(name = "image", description = "Create Docker and OCI container images") -public class Image implements Callable<Integer> { +public class Image extends CamelCommand { private static final int LOG_TAIL_SIZE = 10; @@ -81,6 +80,10 @@ public class Image implements Callable<Integer> { defaultValue = "java:openjdk-11-ubi8") private String sourceImage; + public Image(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { File jarFile = Paths.get(jar).toFile(); diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java index b2da2b4cbc1..792bb7d61b8 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Init.java @@ -19,7 +19,6 @@ package org.apache.camel.dsl.jbang.core.commands; import java.io.FileOutputStream; import java.io.InputStream; import java.util.StringJoiner; -import java.util.concurrent.Callable; import org.apache.camel.CamelContext; import org.apache.camel.dsl.jbang.core.common.exceptions.ResourceDoesNotExist; @@ -39,7 +38,7 @@ import static org.apache.camel.dsl.jbang.core.commands.GitHubHelper.asGithubSing import static org.apache.camel.dsl.jbang.core.commands.GitHubHelper.fetchGithubUrls; @Command(name = "init", description = "Initialize empty Camel integration") -class Init implements Callable<Integer> { +class Init extends CamelCommand { @CommandLine.Parameters(description = "Name of integration file", arity = "1") private String file; @@ -53,6 +52,10 @@ class Init implements Callable<Integer> { private boolean helpRequested = false; //CHECKSTYLE:ON + public Init(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Manifest.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Manifest.java index e7efd0195e1..9f9887250c8 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Manifest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Manifest.java @@ -22,7 +22,6 @@ import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.concurrent.Callable; import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.apps.Deployment; @@ -33,7 +32,7 @@ import io.fabric8.openshift.api.model.Route; import picocli.CommandLine; @CommandLine.Command(name = "manifests", description = "Create Kubernetes resources") -public class Manifest implements Callable<Integer> { +public class Manifest extends CamelCommand { @CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested; @@ -65,6 +64,10 @@ public class Manifest implements Callable<Integer> { @CommandLine.Option(names = { "-j", "--jar" }, description = "Jar file", defaultValue = "camel-runner.jar") private String jar; + public Manifest(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { try { diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Package.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Package.java index 76f31f318aa..016e821bdbf 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Package.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Package.java @@ -16,23 +16,24 @@ */ package org.apache.camel.dsl.jbang.core.commands; -import java.util.concurrent.Callable; - import picocli.CommandLine; import picocli.CommandLine.Command; import picocli.CommandLine.Option; -@Command(name = "package", description = "Package Camel application") -class Package implements Callable<Integer> { +@Command(name = "package", description = "Package Camel application (use --help to see sub commands)") +class Package extends CamelCommand { //CHECKSTYLE:OFF @Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested = false; //CHECKSTYLE:ON + public Package(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { new CommandLine(this).execute("--help"); - return 0; } } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Pipe.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Pipe.java index 39d915d54b4..de3e27e4358 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Pipe.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Pipe.java @@ -16,8 +16,6 @@ */ package org.apache.camel.dsl.jbang.core.commands; -import java.util.concurrent.Callable; - import picocli.CommandLine; @CommandLine.Command(name = "pipe", description = "Run Camel in pipe and filters mode for terminal scripting") diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/UberJar.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/UberJar.java index 709167c4d9c..76b92e80b89 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/UberJar.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/UberJar.java @@ -29,7 +29,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.concurrent.Callable; import java.util.jar.JarEntry; import java.util.jar.JarInputStream; import java.util.jar.JarOutputStream; diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Undeploy.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Undeploy.java index 21effdf524a..f2dc038af23 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Undeploy.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Undeploy.java @@ -17,7 +17,6 @@ package org.apache.camel.dsl.jbang.core.commands; import java.util.Map; -import java.util.concurrent.Callable; import io.fabric8.kubernetes.client.DefaultKubernetesClient; import io.fabric8.kubernetes.client.KubernetesClient; @@ -26,7 +25,7 @@ import io.fabric8.openshift.client.OpenShiftClient; import picocli.CommandLine; @CommandLine.Command(name = "undeploy", description = "Undeploy resources from Kubernetes, OpenShift, Minikube") -public class Undeploy implements Callable<Integer> { +public class Undeploy extends CamelCommand { @CommandLine.Option(names = { "-h", "--help" }, usageHelp = true, description = "Display the help and sub-commands") private boolean helpRequested; @@ -47,6 +46,10 @@ public class Undeploy implements Callable<Integer> { @CommandLine.Option(names = { "-p", "--password" }, description = "Password") private String password; + public Undeploy(CamelJBangMain main) { + super(main); + } + @Override public Integer call() throws Exception { Map labels = KubernetesHelper.getLabels(name, version);
