Repository: camel Updated Branches: refs/heads/master f5848e39c -> a2aaa544b
CAMEL-10959: Make it easy to get RuntimeCamelCatalog from CamelContext Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a2aaa544 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a2aaa544 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a2aaa544 Branch: refs/heads/master Commit: a2aaa544b4328d9be41ba0af6327827628a2d7ce Parents: f5848e3 Author: Claus Ibsen <davscl...@apache.org> Authored: Wed Mar 8 19:15:48 2017 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Wed Mar 8 19:18:22 2017 +0100 ---------------------------------------------------------------------- .../src/main/java/org/apache/camel/CamelContext.java | 6 ++++++ .../java/org/apache/camel/impl/DefaultCamelContext.java | 8 ++++++++ .../apache/camel/catalog/RuntimeCamelCatalogTest.java | 11 ++++++----- 3 files changed, 20 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/a2aaa544/camel-core/src/main/java/org/apache/camel/CamelContext.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/CamelContext.java b/camel-core/src/main/java/org/apache/camel/CamelContext.java index 08a319c..aadd886 100644 --- a/camel-core/src/main/java/org/apache/camel/CamelContext.java +++ b/camel-core/src/main/java/org/apache/camel/CamelContext.java @@ -29,6 +29,7 @@ import org.apache.camel.api.management.mbean.ManagedCamelContextMBean; import org.apache.camel.api.management.mbean.ManagedProcessorMBean; import org.apache.camel.api.management.mbean.ManagedRouteMBean; import org.apache.camel.builder.ErrorHandlerBuilder; +import org.apache.camel.catalog.RuntimeCamelCatalog; import org.apache.camel.model.DataFormatDefinition; import org.apache.camel.model.ProcessorDefinition; import org.apache.camel.model.RouteDefinition; @@ -1927,4 +1928,9 @@ public interface CamelContext extends SuspendableService, RuntimeConfiguration { */ void setReloadStrategy(ReloadStrategy reloadStrategy); + /** + * Gets the associated {@link RuntimeCamelCatalog} for this CamelContext. + */ + RuntimeCamelCatalog getRuntimeCamelCatalog(); + } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/a2aaa544/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java ---------------------------------------------------------------------- diff --git a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java index 4f4648f..28ed39a 100644 --- a/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java +++ b/camel-core/src/main/java/org/apache/camel/impl/DefaultCamelContext.java @@ -86,6 +86,8 @@ import org.apache.camel.api.management.mbean.ManagedRouteMBean; import org.apache.camel.builder.DefaultFluentProducerTemplate; import org.apache.camel.builder.ErrorHandlerBuilder; import org.apache.camel.builder.ErrorHandlerBuilderSupport; +import org.apache.camel.catalog.DefaultRuntimeCamelCatalog; +import org.apache.camel.catalog.RuntimeCamelCatalog; import org.apache.camel.component.properties.PropertiesComponent; import org.apache.camel.impl.converter.BaseTypeConverterRegistry; import org.apache.camel.impl.converter.DefaultTypeConverter; @@ -292,6 +294,7 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon private List<ValidatorDefinition> validators = new ArrayList<>(); private ValidatorRegistry<ValidatorKey> validatorRegistry; private ReloadStrategy reloadStrategy; + private final RuntimeCamelCatalog runtimeCamelCatalog = new DefaultRuntimeCamelCatalog(this, true); /** * Creates the {@link CamelContext} using {@link JndiRegistry} as registry, @@ -4358,6 +4361,11 @@ public class DefaultCamelContext extends ServiceSupport implements ModelCamelCon return validatorRegistry; } + @Override + public RuntimeCamelCatalog getRuntimeCamelCatalog() { + return runtimeCamelCatalog; + } + protected Map<String, RouteService> getRouteServices() { return routeServices; } http://git-wip-us.apache.org/repos/asf/camel/blob/a2aaa544/camel-core/src/test/java/org/apache/camel/catalog/RuntimeCamelCatalogTest.java ---------------------------------------------------------------------- diff --git a/camel-core/src/test/java/org/apache/camel/catalog/RuntimeCamelCatalogTest.java b/camel-core/src/test/java/org/apache/camel/catalog/RuntimeCamelCatalogTest.java index 64637d6..78e51a2 100644 --- a/camel-core/src/test/java/org/apache/camel/catalog/RuntimeCamelCatalogTest.java +++ b/camel-core/src/test/java/org/apache/camel/catalog/RuntimeCamelCatalogTest.java @@ -16,20 +16,15 @@ */ package org.apache.camel.catalog; -import java.io.FileInputStream; import java.util.HashMap; -import java.util.List; import java.util.Map; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.camel.impl.DefaultCamelContext; import org.junit.BeforeClass; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import static org.apache.camel.catalog.CatalogHelper.loadText; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; @@ -47,6 +42,12 @@ public class RuntimeCamelCatalogTest { } @Test + public void testFromCamelContext() throws Exception { + String schema = new DefaultCamelContext().getRuntimeCamelCatalog().modelJSonSchema("choice"); + assertNotNull(schema); + } + + @Test public void testJsonSchema() throws Exception { String schema = catalog.modelJSonSchema("aggregate"); assertNotNull(schema);