CAMEL-6094: Add option to type converter registry to control what to do if a type converter already exists.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/7ad8a7e1 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/7ad8a7e1 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/7ad8a7e1 Branch: refs/heads/master Commit: 7ad8a7e1625c065fa2a6cb20bdd36ff3bbecdb27 Parents: debe667 Author: Claus Ibsen <[email protected]> Authored: Sun Aug 9 09:12:18 2015 +0200 Committer: Claus Ibsen <[email protected]> Committed: Sun Aug 9 09:29:19 2015 +0200 ---------------------------------------------------------------------- .../apache/camel/core/osgi/OsgiTypeConverter.java | 18 ++++++++++++++++++ .../core/osgi/test/MockTypeConverterRegistry.java | 18 ++++++++++++++++++ 2 files changed, 36 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/7ad8a7e1/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java ---------------------------------------------------------------------- diff --git a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java b/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java index cd1de17..c25e479 100644 --- a/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java +++ b/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java @@ -23,9 +23,11 @@ import java.util.List; import java.util.Set; import org.apache.camel.Exchange; +import org.apache.camel.LoggingLevel; import org.apache.camel.NoTypeConversionAvailableException; import org.apache.camel.RuntimeCamelException; import org.apache.camel.TypeConverter; +import org.apache.camel.TypeConverterExists; import org.apache.camel.TypeConverters; import org.apache.camel.impl.DefaultPackageScanClassResolver; import org.apache.camel.impl.converter.DefaultTypeConverter; @@ -171,6 +173,22 @@ public class OsgiTypeConverter extends ServiceSupport implements TypeConverter, return getDelegate().size(); } + public LoggingLevel getTypeConverterExistsLoggingLevel() { + return getDelegate().getTypeConverterExistsLoggingLevel(); + } + + public void setTypeConverterExistsLoggingLevel(LoggingLevel loggingLevel) { + getDelegate().setTypeConverterExistsLoggingLevel(loggingLevel); + } + + public TypeConverterExists getTypeConverterExists() { + return getDelegate().getTypeConverterExists(); + } + + public void setTypeConverterExists(TypeConverterExists typeConverterExists) { + getDelegate().setTypeConverterExists(typeConverterExists); + } + public synchronized DefaultTypeConverter getDelegate() { if (delegate == null) { delegate = createRegistry(); http://git-wip-us.apache.org/repos/asf/camel/blob/7ad8a7e1/components/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MockTypeConverterRegistry.java ---------------------------------------------------------------------- diff --git a/components/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MockTypeConverterRegistry.java b/components/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MockTypeConverterRegistry.java index e9c8777..28cbdc3 100644 --- a/components/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MockTypeConverterRegistry.java +++ b/components/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MockTypeConverterRegistry.java @@ -19,7 +19,9 @@ package org.apache.camel.core.osgi.test; import java.util.ArrayList; import java.util.List; +import org.apache.camel.LoggingLevel; import org.apache.camel.TypeConverter; +import org.apache.camel.TypeConverterExists; import org.apache.camel.TypeConverters; import org.apache.camel.spi.Injector; import org.apache.camel.spi.TypeConverterRegistry; @@ -77,6 +79,22 @@ public class MockTypeConverterRegistry implements TypeConverterRegistry { return typeConverters.size(); } + public LoggingLevel getTypeConverterExistsLoggingLevel() { + return LoggingLevel.WARN; + } + + public void setTypeConverterExistsLoggingLevel(LoggingLevel loggingLevel) { + // noop + } + + public TypeConverterExists getTypeConverterExists() { + return TypeConverterExists.Override; + } + + public void setTypeConverterExists(TypeConverterExists typeConverterExists) { + // noop + } + public void start() throws Exception { // noop }
