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 <[email protected]>
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 -> {