This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch tc-loader in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/tc-loader by this push: new 51bde0e CAMEL-13313: Add support for generating type converter loader source code to be able to load component type converters in a faster way 51bde0e is described below commit 51bde0e3000c006c1fa00f5ac43214c4b353e05c Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Sat Mar 16 13:22:21 2019 +0100 CAMEL-13313: Add support for generating type converter loader source code to be able to load component type converters in a faster way --- .../apache/camel/impl/converter/TypeConverterLoaderRegistry.java | 2 ++ .../apache/camel/core/xml/AbstractCamelContextFactoryBean.java | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/converter/TypeConverterLoaderRegistry.java b/core/camel-base/src/main/java/org/apache/camel/impl/converter/TypeConverterLoaderRegistry.java index 63f2e70..5b3bb93 100644 --- a/core/camel-base/src/main/java/org/apache/camel/impl/converter/TypeConverterLoaderRegistry.java +++ b/core/camel-base/src/main/java/org/apache/camel/impl/converter/TypeConverterLoaderRegistry.java @@ -43,6 +43,8 @@ import org.slf4j.LoggerFactory; */ public class TypeConverterLoaderRegistry extends BaseTypeConverterRegistry { + // TODO: Maybe it should be named FastTypeConverterRegistry + public static final String META_INF_SERVICES = "META-INF/services/org/apache/camel/TypeConverterLoader"; private static final Logger LOG = LoggerFactory.getLogger(TypeConverterLoaderRegistry.class); diff --git a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java index 68e51ac..44e761c 100644 --- a/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java +++ b/core/camel-core-xml/src/main/java/org/apache/camel/core/xml/AbstractCamelContextFactoryBean.java @@ -109,6 +109,7 @@ import org.apache.camel.spi.ShutdownStrategy; import org.apache.camel.spi.StreamCachingStrategy; import org.apache.camel.spi.ThreadPoolFactory; import org.apache.camel.spi.ThreadPoolProfile; +import org.apache.camel.spi.TypeConverterRegistry; import org.apache.camel.spi.UnitOfWorkFactory; import org.apache.camel.spi.UuidGenerator; import org.apache.camel.support.CamelContextHelper; @@ -167,6 +168,13 @@ public abstract class AbstractCamelContextFactoryBean<T extends ModelCamelContex getContext().setPackageScanClassResolver(packageResolver); } + // set the package scan resolver as soon as possible + TypeConverterRegistry tcr = getBeanForType(TypeConverterRegistry.class); + if (tcr != null) { + LOG.info("Using custom TypeConverterRegistry: {}", tcr); + getContext().setTypeConverterRegistry(tcr); + } + // then set custom properties Map<String, String> mergedOptions = new HashMap<>(); if (getGlobalOptions() != null) {