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 f31bd55d491 CAMEL-18521: camel-jbang - Sort rows allow to use - to negate sorting Z..A f31bd55d491 is described below commit f31bd55d491d3bc943c4d8647ff22301294684e4 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Tue Sep 20 20:40:34 2022 +0200 CAMEL-18521: camel-jbang - Sort rows allow to use - to negate sorting Z..A --- .../dsl/jbang/core/commands/action/CamelThreadDump.java | 12 +++++++++--- .../jbang/core/commands/process/CamelContextStatus.java | 12 +++++++++--- .../dsl/jbang/core/commands/process/CamelContextTop.java | 14 ++++++++++---- .../jbang/core/commands/process/CamelProcessorStatus.java | 12 +++++++++--- .../dsl/jbang/core/commands/process/CamelRouteStatus.java | 12 +++++++++--- .../camel/dsl/jbang/core/commands/process/ListProcess.java | 12 +++++++++--- .../camel/dsl/jbang/core/commands/process/ListVault.java | 10 ++++++++-- 7 files changed, 63 insertions(+), 21 deletions(-) diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelThreadDump.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelThreadDump.java index 0e067f1ccea..b8a838e72e9 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelThreadDump.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/action/CamelThreadDump.java @@ -178,13 +178,19 @@ public class CamelThreadDump extends ActionBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "id": - return Long.compare(o1.id, o2.id); + return Long.compare(o1.id, o2.id) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; case "state": - return o1.state.compareToIgnoreCase(o2.state); + return o1.state.compareToIgnoreCase(o2.state) * negate; default: return 0; } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextStatus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextStatus.java index 2c2f2ba4927..47b94ea9c86 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextStatus.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextStatus.java @@ -156,13 +156,19 @@ public class CamelContextStatus extends ProcessBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "pid": - return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)); + return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; case "age": - return Long.compare(o1.uptime, o2.uptime); + return Long.compare(o1.uptime, o2.uptime) * negate; default: return 0; } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextTop.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextTop.java index 475f23bb465..675c7664828 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextTop.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelContextTop.java @@ -158,15 +158,21 @@ public class CamelContextTop extends ProcessBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "pid": - return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)); + return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; case "mem": - return Long.compare(o1.heapMemUsed, o2.heapMemUsed) * -1; // we want the biggest first + return Long.compare(o1.heapMemUsed, o2.heapMemUsed) * negate * -1; // we want the biggest first case "age": - return Long.compare(o1.uptime, o2.uptime); + return Long.compare(o1.uptime, o2.uptime) * negate; default: return 0; } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelProcessorStatus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelProcessorStatus.java index d75c7f3f527..d5073c16a2d 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelProcessorStatus.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelProcessorStatus.java @@ -200,13 +200,19 @@ public class CamelProcessorStatus extends ProcessBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "pid": - return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)); + return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; case "age": - return Long.compare(o1.uptime, o2.uptime); + return Long.compare(o1.uptime, o2.uptime) * negate; default: return 0; } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java index 26fe273058d..b5f00d9ea8f 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/CamelRouteStatus.java @@ -177,13 +177,19 @@ public class CamelRouteStatus extends ProcessBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "pid": - return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)); + return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; case "age": - return Long.compare(o1.uptime, o2.uptime); + return Long.compare(o1.uptime, o2.uptime) * negate; default: return 0; } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java index b104522c50f..3730aab9cfc 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/ListProcess.java @@ -90,13 +90,19 @@ public class ListProcess extends ProcessBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "pid": - return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)); + return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; case "age": - return Long.compare(o1.uptime, o2.uptime); + return Long.compare(o1.uptime, o2.uptime) * negate; default: return 0; } 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 34ea955845d..ee1f08ff7b5 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 @@ -105,11 +105,17 @@ public class ListVault extends ProcessBaseCommand { } protected int sortRow(Row o1, Row o2) { + String s = sort; + int negate = 1; + if (s.startsWith("-")) { + s = s.substring(1); + negate = -1; + } switch (sort) { case "pid": - return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)); + return Long.compare(Long.parseLong(o1.pid), Long.parseLong(o2.pid)) * negate; case "name": - return o1.name.compareToIgnoreCase(o2.name); + return o1.name.compareToIgnoreCase(o2.name) * negate; default: return 0; }