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 4a4f78d43c8 camel-jbang - Allow to specifiy port in jolokia command
4a4f78d43c8 is described below

commit 4a4f78d43c89c42ed0f1ffe052cdabaff64298a2
Author: Claus Ibsen <[email protected]>
AuthorDate: Sun Jun 2 17:56:29 2024 +0200

    camel-jbang - Allow to specifiy port in jolokia command
---
 .../camel/dsl/jbang/core/commands/process/Jolokia.java      | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/Jolokia.java
 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/Jolokia.java
index 111d5eeeda8..355c7f49124 100644
--- 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/Jolokia.java
+++ 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/process/Jolokia.java
@@ -36,6 +36,10 @@ public class Jolokia extends ProcessBaseCommand {
                         description = "Stops the Jolokia JVM Agent in the 
running Camel integration")
     boolean stop;
 
+    @CommandLine.Option(names = { "--port" },
+                        description = "To use a specific port number when 
attaching Jolokia JVM Agent (default a free port is found in range 8778-9999)")
+    int port;
+
     private volatile long pid;
 
     public Jolokia(CamelJBangMain main) {
@@ -60,10 +64,13 @@ public class Jolokia extends ProcessBaseCommand {
             if (stop) {
                 options = new OptionsAndArgs(null, "stop", Long.toString(pid));
             } else {
-                // find a new free port to use when starting a new connection
-                long port = AvailablePortFinder.getNextAvailable(8778, 10000);
+                long p = port;
+                if (p <= 0) {
+                    // find a new free port to use when starting a new 
connection
+                    p = AvailablePortFinder.getNextAvailable(8778, 10000);
+                }
                 options = new OptionsAndArgs(
-                        null, "--port", Long.toString(port), 
"--discoveryEnabled", "true", "start", Long.toString(pid));
+                        null, "--port", Long.toString(p), 
"--discoveryEnabled", "true", "start", Long.toString(pid));
             }
             VirtualMachineHandlerOperations vmHandler = 
PlatformUtils.createVMAccess(options);
             CommandDispatcher dispatcher = new CommandDispatcher(options);

Reply via email to