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();