This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 9085572a87ad1f747c861fd64096593cf73aaf3e
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Fri Jan 29 11:30:09 2021 +0100

    CAMEL-16072: camel-main - Be less verbose when stopping. And return exit 
code from run method.
---
 .../org/apache/camel/main/DefaultMainShutdownStrategy.java     |  2 +-
 core/camel-main/src/main/java/org/apache/camel/main/Main.java  |  8 +++++---
 .../java/org/apache/camel/main/MainCommandLineSupport.java     | 10 +++++++---
 .../main/java/org/apache/camel/main/MainLifecycleStrategy.java |  2 +-
 4 files changed, 14 insertions(+), 8 deletions(-)

diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/DefaultMainShutdownStrategy.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/DefaultMainShutdownStrategy.java
index a715066..9958622 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/DefaultMainShutdownStrategy.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/DefaultMainShutdownStrategy.java
@@ -72,7 +72,7 @@ public class DefaultMainShutdownStrategy extends 
SimpleMainShutdownStrategy {
     }
 
     private void handleHangup() {
-        LOG.info("Received hangup signal, stopping the main instance.");
+        LOG.debug("Received hangup signal, stopping the main instance.");
         // and shutdown listener to allow camel context to graceful shutdown 
if JVM shutdown hook is triggered
         // as otherwise the JVM terminates before Camel is graceful shutdown
         addShutdownListener(() -> {
diff --git a/core/camel-main/src/main/java/org/apache/camel/main/Main.java 
b/core/camel-main/src/main/java/org/apache/camel/main/Main.java
index fcc4633..e666bc0 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/Main.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/Main.java
@@ -41,9 +41,11 @@ public class Main extends MainCommandLineSupport {
     public static void main(String... args) throws Exception {
         Main main = new Main();
         instance = main;
-        main.run(args);
-
-        System.exit(main.getExitCode());
+        int code = main.run(args);
+        if (code != 0) {
+            System.exit(code);
+        }
+        // normal exit
     }
 
     /**
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/MainCommandLineSupport.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/MainCommandLineSupport.java
index e82a7f0..9ad7322 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/MainCommandLineSupport.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/MainCommandLineSupport.java
@@ -159,12 +159,16 @@ public abstract class MainCommandLineSupport extends 
MainSupport {
     }
 
     /**
-     * Parses the command line arguments then runs the program.
+     * Parses the command line arguments then runs the program. The run method 
will keep blocking until the program is
+     * stopped.
+     *
+     * @return the exit code, usually 0 for normal termination.
      */
-    public void run(String[] args) throws Exception {
+    public int run(String[] args) throws Exception {
         parseArguments(args);
         run();
-        LOG.info("MainSupport exiting code: {}", getExitCode());
+
+        return getExitCode();
     }
 
     /**
diff --git 
a/core/camel-main/src/main/java/org/apache/camel/main/MainLifecycleStrategy.java
 
b/core/camel-main/src/main/java/org/apache/camel/main/MainLifecycleStrategy.java
index 080aaea..ddeb075 100644
--- 
a/core/camel-main/src/main/java/org/apache/camel/main/MainLifecycleStrategy.java
+++ 
b/core/camel-main/src/main/java/org/apache/camel/main/MainLifecycleStrategy.java
@@ -35,7 +35,7 @@ public class MainLifecycleStrategy extends 
LifecycleStrategySupport {
 
     @Override
     public void onContextStopping(CamelContext context) {
-        LOG.info("CamelContext: {} has been shutdown, triggering shutdown of 
the JVM.", context.getName());
+        LOG.debug("CamelContext: {} is stopping, triggering shutdown of the 
JVM.", context.getName());
 
         // trigger stopping the Main
         shutdownStrategy.shutdown();

Reply via email to