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 cbca57a14d2 camel-jbang - Make the commands for controlling routes more intuitive. cbca57a14d2 is described below commit cbca57a14d2d0d1dfd9ff583a8e358e90a9cfe55 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Thu May 16 10:09:38 2024 +0200 camel-jbang - Make the commands for controlling routes more intuitive. --- .../user-manual/modules/ROOT/pages/camel-jbang.adoc | 21 ++++++++++++++++++--- .../core/commands/action/CamelRouteAction.java | 12 +----------- .../jbang/core/commands/action/LoggerAction.java | 14 ++++---------- .../dsl/jbang/core/commands/process/ListMetric.java | 3 ++- .../jbang/core/commands/process/ListVariable.java | 1 - .../dsl/jbang/core/commands/process/ListVault.java | 6 +++++- 6 files changed, 30 insertions(+), 27 deletions(-) diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc index c5a22c954c0..0336598c967 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc @@ -1595,18 +1595,33 @@ To start the routes, you can do: camel cmd start-route chuck ---- -To stop _all_ routes in every Camel integration you need to use the `--all` flag as follows: +To stop _all_ routes in every Camel integration: [source,bash] ---- -camel cmd stop-route --all +camel cmd stop-route ---- And you can start _all_ routes using: [source,bash] ---- -camel cmd start-route --all +camel cmd start-route +---- + +To start a specific route, you need to use `--id` parameter such as the following, +which will start routes named `route1` in all running integrations: + +[source,bash] +---- +camel cmd start-route --id=route1 +---- + +If you want to do this in a specific integration you must include the name or pid: + +[source,bash] +---- +camel cmd start-route bar --id=route1 ---- TIP: You can stop one or more route by their ids by separating using diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelRouteAction.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelRouteAction.java index a23d3602b6f..850449baa0e 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelRouteAction.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelRouteAction.java @@ -27,11 +27,7 @@ import picocli.CommandLine; public abstract class CamelRouteAction extends ActionBaseCommand { @CommandLine.Parameters(description = "Name or pid of running Camel integration", arity = "0..1") - String name; - - @CommandLine.Option(names = { "--all" }, - description = "To select all running Camel integrations") - boolean all; + String name = "*"; @CommandLine.Option(names = { "--id" }, description = "Route ids (multiple ids can be separated by comma)", defaultValue = "*") @@ -43,12 +39,6 @@ public abstract class CamelRouteAction extends ActionBaseCommand { @Override public Integer doCall() throws Exception { - if (!all && name == null) { - return 0; - } else if (all) { - name = "*"; - } - List<Long> pids = findPids(name); for (long pid : pids) { diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/LoggerAction.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/LoggerAction.java index a68a390c9d0..dafe576727f 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/LoggerAction.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/LoggerAction.java @@ -39,17 +39,13 @@ import picocli.CommandLine; description = "List or change logging levels", sortOptions = false) public class LoggerAction extends ActionBaseCommand { + @CommandLine.Parameters(description = "Name or pid of running Camel integration", arity = "0..1") + String name = "*"; + @CommandLine.Option(names = { "--sort" }, completionCandidates = PidNameAgeCompletionCandidates.class, description = "Sort by pid, name or age", defaultValue = "pid") String sort; - @CommandLine.Parameters(description = "Name or pid of running Camel integration", arity = "0..1") - String name; - - @CommandLine.Option(names = { "--all" }, - description = "To select all running Camel integrations") - boolean all; - @CommandLine.Option(names = { "--logging-level" }, completionCandidates = LoggingLevelCompletionCandidates.class, description = "To change logging level") String loggingLevel; @@ -67,9 +63,7 @@ public class LoggerAction extends ActionBaseCommand { if (loggingLevel == null) { return callList(); } - if (!all && name == null) { - return 0; - } else if (all) { + if (name == null) { name = "*"; } return callChangeLoggingLevel(); diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListMetric.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListMetric.java index c92d63dd714..c4e4da14942 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListMetric.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListMetric.java @@ -38,7 +38,8 @@ import picocli.CommandLine.Command; description = "Get metrics (micrometer) of running Camel integrations", sortOptions = false) public class ListMetric extends ProcessWatchCommand { - @CommandLine.Parameters(description = "Name or pid of running Camel integration", arity = "0..1") + @CommandLine.Parameters(description = "Name or pid of running Camel integration", + arity = "0..1") String name = "*"; @CommandLine.Option(names = { "--sort" }, completionCandidates = PidNameAgeCompletionCandidates.class, diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVariable.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVariable.java index 177dff83302..c5910e354aa 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVariable.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVariable.java @@ -63,7 +63,6 @@ public class ListVariable extends ProcessWatchCommand { List<Row> rows = new ArrayList<>(); List<Long> pids = findPids(name); - ProcessHandle.allProcesses() .filter(ph -> pids.contains(ph.pid())) .forEach(ph -> { diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java index 978103dbd19..c9eaa599c1c 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListVault.java @@ -49,6 +49,10 @@ public class ListVault extends ProcessWatchCommand { } + @CommandLine.Parameters(description = "Name or pid of running Camel integration", + arity = "0..1") + String name = "*"; + @CommandLine.Option(names = { "--sort" }, completionCandidates = PidNameCompletionCandidates.class, description = "Sort by pid, name", defaultValue = "pid") String sort; @@ -61,7 +65,7 @@ public class ListVault extends ProcessWatchCommand { public Integer doProcessWatchCall() throws Exception { List<Row> rows = new ArrayList<>(); - List<Long> pids = findPids("*"); + List<Long> pids = findPids(name); ProcessHandle.allProcesses() .filter(ph -> pids.contains(ph.pid())) .forEach(ph -> {