Repository: camel Updated Branches: refs/heads/master 01f08a626 -> 87c9a9da4
CAMEL-7644: Make using Main easier to get the CamelContext before its started, which we need for Scala users. Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/c0db627b Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/c0db627b Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/c0db627b Branch: refs/heads/master Commit: c0db627b8fc360848259875647397242407fddad Parents: 01f08a6 Author: Claus Ibsen <davscl...@apache.org> Authored: Tue Mar 3 10:40:12 2015 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Tue Mar 3 10:40:12 2015 +0100 ---------------------------------------------------------------------- .../src/main/java/org/apache/camel/main/Main.java | 16 ++++++++++++++-- .../java/org/apache/camel/main/MainSupport.java | 1 - 2 files changed, 14 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/c0db627b/camel-core/src/main/java/org/apache/camel/main/Main.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/main/Main.java b/camel-core/src/main/java/org/apache/camel/main/Main.java index e674c18..a7871cd 100644 --- a/camel-core/src/main/java/org/apache/camel/main/Main.java +++ b/camel-core/src/main/java/org/apache/camel/main/Main.java @@ -18,7 +18,6 @@ package org.apache.camel.main; import java.util.HashMap; import java.util.Map; - import javax.xml.bind.JAXBException; import org.apache.camel.CamelContext; @@ -99,7 +98,20 @@ public class Main extends MainSupport { */ public <T> Map<String, T> lookupByType(Class<T> type) { return registry.findByTypeWithName(type); - } + } + + /** + * Gets or creates the {@link org.apache.camel.CamelContext} this main class is using. + */ + public CamelContext getOrCreateCamelContext() { + // force init + Map<String, CamelContext> map = getCamelContextMap(); + if (map.size() >= 1) { + return map.values().iterator().next(); + } else { + throw new IllegalStateException("Error creating CamelContext"); + } + } // Implementation methods // ------------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/c0db627b/camel-core/src/main/java/org/apache/camel/main/MainSupport.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/main/MainSupport.java b/camel-core/src/main/java/org/apache/camel/main/MainSupport.java index 3e0cb95..4fb30fe 100644 --- a/camel-core/src/main/java/org/apache/camel/main/MainSupport.java +++ b/camel-core/src/main/java/org/apache/camel/main/MainSupport.java @@ -27,7 +27,6 @@ import java.util.Set; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; - import javax.xml.bind.JAXBException; import org.apache.camel.CamelContext;