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 649ab14 CAMEL-13313: Add support for generating type converter loader source code to be able to load component type converters in a faster way 649ab14 is described below commit 649ab1410d789ab8600f38a9509a05499712bb06 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Fri Mar 15 11:36:12 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 --- MIGRATION.md | 5 +++++ .../camel/component/cxf/converter/CxfConverter.java | 3 +-- .../component/cxf/converter/CxfPayloadConverter.java | 3 +-- .../camel/component/file/GenericFileConverter.java | 3 +-- .../jackson/converter/JacksonTypeConverters.java | 5 ++--- .../jacksonxml/converter/JacksonXMLTypeConverters.java | 3 +-- .../camel/component/jclouds/JcloudsPayloadConverter.java | 5 ++--- .../org/apache/camel/component/jetty/JettyConverter.java | 3 +-- .../org/apache/camel/component/mail/MailConverters.java | 3 +-- .../mongodb3/converters/MongoDbFallbackConverter.java | 3 +-- .../camel/component/netty4/http/NettyHttpConverter.java | 5 ++--- .../reactive/streams/ReactiveStreamsConverter.java | 3 +-- .../org/apache/camel/converter/saxon/SaxonConverter.java | 3 +-- .../apache/camel/component/sparkrest/SparkConverter.java | 5 ++--- .../main/java/org/apache/camel/FallbackConverter.java | 1 + .../impl/converter/AnnotationTypeConverterLoader.java | 16 +++++++--------- .../camel/core/osgi/other/MyOtherTypeConverter.java | 3 +-- .../org/apache/camel/core/osgi/test/MyTypeConverter.java | 3 +-- .../org/apache/camel/component/bean/BeanConverter.java | 2 -- .../myconverter/InstanceDummyFallbackConverter.java | 3 +-- .../myconverter/MyFallbackPromoteConverter.java | 3 +-- .../myconverter/StaticDummyFallbackConverter.java | 3 +-- 22 files changed, 35 insertions(+), 51 deletions(-) diff --git a/MIGRATION.md b/MIGRATION.md index 87f017d..686c7a9 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -297,6 +297,11 @@ The class `XsltAggregationStrategy` has been moved from `org.apache.camel.builde When using the option `groupedExchange` on the aggregator EIP then the output of the aggregation is now longer also stored in the exchange property `Exchange.GROUPED_EXCHANGE`. This behaviour was already deprecated from Camel 2.13 onwards. +### Fallback type converters + +The `@FallbackConverter` annotation has been removed, and you should use `@Converter(fallback = true)` instead. Also you can set `@Converter(loader = true)` on the converter class to allow Camel to generate source code for loading type converters in a faster way. + + ### Other changes The default for use breadcrumbs has been changed from `true` to `false`. diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java index 653f407..6e094ff 100644 --- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java +++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java @@ -28,7 +28,6 @@ import javax.xml.soap.SOAPMessage; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.component.cxf.DataFormat; import org.apache.camel.converter.stream.CachedOutputStream; @@ -135,7 +134,7 @@ public final class CxfConverter { * @return the converted value of the desired type or null if no suitable converter found */ @SuppressWarnings("unchecked") - @FallbackConverter + @Converter(fallback = true) public static <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) { diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfPayloadConverter.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfPayloadConverter.java index ea26664..7d8bcdf 100644 --- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfPayloadConverter.java +++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfPayloadConverter.java @@ -36,7 +36,6 @@ import org.w3c.dom.NodeList; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.RuntimeCamelException; import org.apache.camel.StreamCache; import org.apache.camel.TypeConverter; @@ -120,7 +119,7 @@ public final class CxfPayloadConverter { } @SuppressWarnings("unchecked") - @FallbackConverter + @Converter(fallback = true) public static <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // use fallback type converter, so we can probably convert into // CxfPayloads from other types diff --git a/components/camel-file/src/main/java/org/apache/camel/component/file/GenericFileConverter.java b/components/camel-file/src/main/java/org/apache/camel/component/file/GenericFileConverter.java index 5d27cf0..4623f74 100644 --- a/components/camel-file/src/main/java/org/apache/camel/component/file/GenericFileConverter.java +++ b/components/camel-file/src/main/java/org/apache/camel/component/file/GenericFileConverter.java @@ -33,7 +33,6 @@ import java.util.function.Supplier; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.NoTypeConversionAvailableException; import org.apache.camel.TypeConverter; import org.apache.camel.spi.TypeConverterRegistry; @@ -56,7 +55,7 @@ public final class GenericFileConverter { // Helper Class } - @FallbackConverter + @Converter(fallback = true) public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) throws IOException, NoTypeConversionAvailableException { diff --git a/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/converter/JacksonTypeConverters.java b/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/converter/JacksonTypeConverters.java index 7a2d5d2..454c027 100644 --- a/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/converter/JacksonTypeConverters.java +++ b/components/camel-jackson/src/main/java/org/apache/camel/component/jackson/converter/JacksonTypeConverters.java @@ -26,7 +26,6 @@ import com.fasterxml.jackson.module.jaxb.JaxbAnnotationModule; import org.apache.camel.CamelContext; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.component.jackson.JacksonConstants; import org.apache.camel.spi.Registry; import org.apache.camel.spi.TypeConverterRegistry; @@ -34,7 +33,7 @@ import org.apache.camel.spi.TypeConverterRegistry; /** * Jackson {@link org.apache.camel.TypeConverter} that allows converting json to/from POJOs and other types. * <br/> - * This implementation uses a {@link FallbackConverter}. + * This implementation uses a fallback converter. * <p/> * The converter is disabled by default. To enable then set the property * {@link JacksonConstants#ENABLE_TYPE_CONVERTER} to <tt>true</tt> on {@link CamelContext#getGlobalOptions()}. @@ -58,7 +57,7 @@ public final class JacksonTypeConverters { defaultMapper.registerModule(module); } - @FallbackConverter + @Converter(fallback = true) public <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) throws Exception { // only do this if enabled (disabled by default) diff --git a/components/camel-jacksonxml/src/main/java/org/apache/camel/component/jacksonxml/converter/JacksonXMLTypeConverters.java b/components/camel-jacksonxml/src/main/java/org/apache/camel/component/jacksonxml/converter/JacksonXMLTypeConverters.java index c211d2d..0ca1387 100644 --- a/components/camel-jacksonxml/src/main/java/org/apache/camel/component/jacksonxml/converter/JacksonXMLTypeConverters.java +++ b/components/camel-jacksonxml/src/main/java/org/apache/camel/component/jacksonxml/converter/JacksonXMLTypeConverters.java @@ -23,7 +23,6 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.xml.XmlMapper; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.component.jacksonxml.JacksonXMLConstants; import org.apache.camel.spi.Registry; import org.apache.camel.spi.TypeConverterRegistry; @@ -38,7 +37,7 @@ public final class JacksonXMLTypeConverters { public JacksonXMLTypeConverters() { } - @FallbackConverter + @Converter(fallback = true) public <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // only do this if enabled diff --git a/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsPayloadConverter.java b/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsPayloadConverter.java index 401c45e..ca053e7 100644 --- a/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsPayloadConverter.java +++ b/components/camel-jclouds/src/main/java/org/apache/camel/component/jclouds/JcloudsPayloadConverter.java @@ -29,7 +29,6 @@ import com.google.common.io.ByteStreams; import com.google.common.io.Files; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.WrappedFile; import org.apache.camel.converter.stream.StreamSourceCache; @@ -127,9 +126,9 @@ public final class JcloudsPayloadConverter { return payload; } - @FallbackConverter + @Converter(fallback = true) @SuppressWarnings("unchecked") - public static <T extends Payload> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) throws IOException { + public static <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) { Class<?> sourceType = value.getClass(); if (type == Payload.class && WrappedFile.class.isAssignableFrom(sourceType)) { // attempt to convert to JClouds Payload from a file diff --git a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyConverter.java b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyConverter.java index c8a1e05..1ae53c1 100644 --- a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyConverter.java +++ b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyConverter.java @@ -18,7 +18,6 @@ package org.apache.camel.component.jetty; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.spi.TypeConverterRegistry; import org.eclipse.jetty.server.Request; import org.eclipse.jetty.server.Response; @@ -37,7 +36,7 @@ public final class JettyConverter { return response.toString(); } - @FallbackConverter + @Converter(fallback = true) @SuppressWarnings("unchecked") public static <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) { if (value != null) { diff --git a/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConverters.java b/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConverters.java index 65360ec..14c2d1e 100644 --- a/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConverters.java +++ b/components/camel-mail/src/main/java/org/apache/camel/component/mail/MailConverters.java @@ -36,7 +36,6 @@ import javax.mail.search.SearchTerm; import com.sun.mail.imap.SortTerm; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.NoTypeConversionAvailableException; import org.apache.camel.TypeConverter; import org.apache.camel.spi.TypeConverterRegistry; @@ -125,7 +124,7 @@ public final class MailConverters { * Converts a JavaMail multipart into a body of any type a String can be * converted into. The content-type of the part must be text based. */ - @FallbackConverter + @Converter(fallback = true) public static <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) throws MessagingException, IOException { if (Multipart.class.isAssignableFrom(value.getClass())) { TypeConverter tc = registry.lookup(type, String.class); diff --git a/components/camel-mongodb3/src/main/java/org/apache/camel/component/mongodb3/converters/MongoDbFallbackConverter.java b/components/camel-mongodb3/src/main/java/org/apache/camel/component/mongodb3/converters/MongoDbFallbackConverter.java index 01d1dcc..3f62bf7 100644 --- a/components/camel-mongodb3/src/main/java/org/apache/camel/component/mongodb3/converters/MongoDbFallbackConverter.java +++ b/components/camel-mongodb3/src/main/java/org/apache/camel/component/mongodb3/converters/MongoDbFallbackConverter.java @@ -26,7 +26,6 @@ import com.mongodb.DBObject; import com.mongodb.util.JSON; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.InvalidPayloadException; import org.apache.camel.spi.TypeConverterRegistry; import org.bson.Document; @@ -40,7 +39,7 @@ public final class MongoDbFallbackConverter { private MongoDbFallbackConverter() { } - @FallbackConverter + @Converter(fallback = true) @SuppressWarnings("unchecked") public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) throws InvalidPayloadException { diff --git a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConverter.java b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConverter.java index 66bdd68..4bb181d 100644 --- a/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConverter.java +++ b/components/camel-netty4-http/src/main/java/org/apache/camel/component/netty4/http/NettyHttpConverter.java @@ -25,7 +25,6 @@ import io.netty.handler.codec.http.HttpRequest; import io.netty.handler.codec.http.HttpResponse; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.component.netty4.NettyConverter; import org.apache.camel.spi.TypeConverterRegistry; @@ -39,7 +38,7 @@ public final class NettyHttpConverter { /** * A fallback converter that allows us to easily call Java beans and use the raw Netty {@link HttpRequest} as parameter types. */ - @FallbackConverter + @Converter(fallback = true) public static Object convertToHttpRequest(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // if we want to covert to HttpRequest if (value != null && HttpRequest.class.isAssignableFrom(type)) { @@ -67,7 +66,7 @@ public final class NettyHttpConverter { /** * A fallback converter that allows us to easily call Java beans and use the raw Netty {@link HttpRequest} as parameter types. */ - @FallbackConverter + @Converter(fallback = true) public static Object convertToHttpResponse(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // if we want to covert to convertToHttpResponse if (value != null && HttpResponse.class.isAssignableFrom(type)) { diff --git a/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/ReactiveStreamsConverter.java b/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/ReactiveStreamsConverter.java index 08cb29b..415d4f4 100644 --- a/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/ReactiveStreamsConverter.java +++ b/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/ReactiveStreamsConverter.java @@ -20,7 +20,6 @@ import org.apache.camel.CamelContext; import org.apache.camel.CamelContextAware; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.component.reactive.streams.util.MonoPublisher; import org.apache.camel.spi.TypeConverterRegistry; import org.reactivestreams.Publisher; @@ -34,7 +33,7 @@ public final class ReactiveStreamsConverter implements CamelContextAware { public ReactiveStreamsConverter() { } - @FallbackConverter + @Converter(fallback = true) public Object convertToPublisher(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { if (type.isAssignableFrom(Publisher.class)) { return new MonoPublisher<>(value); diff --git a/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java b/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java index defc7c4..2362e04 100644 --- a/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java +++ b/components/camel-saxon/src/main/java/org/apache/camel/converter/saxon/SaxonConverter.java @@ -34,7 +34,6 @@ import net.sf.saxon.trans.XPathException; import net.sf.saxon.type.Type; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.spi.TypeConverterRegistry; @@ -81,7 +80,7 @@ public final class SaxonConverter { return new DOMNodeList(domNodeList); } - @FallbackConverter + @Converter(fallback = true) public static <T> T convertTo(Class<T> type, Exchange exchange, Object value, TypeConverterRegistry registry) { if (NodeInfo.class.isAssignableFrom(value.getClass())) { // use a fallback type converter so we can convert the embedded body if the value is NodeInfo diff --git a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkConverter.java b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkConverter.java index 8c49e94..5da904c 100644 --- a/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkConverter.java +++ b/components/camel-spark-rest/src/main/java/org/apache/camel/component/sparkrest/SparkConverter.java @@ -18,7 +18,6 @@ package org.apache.camel.component.sparkrest; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.spi.TypeConverterRegistry; import spark.Request; import spark.Response; @@ -32,7 +31,7 @@ public final class SparkConverter { /** * A fallback converter that allows us to easily call Java beans and use the raw Spark {@link Request} as parameter types. */ - @FallbackConverter + @Converter(fallback = true) public static Object convertToRequest(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // if we want to covert to Request if (value != null && Request.class.isAssignableFrom(type)) { @@ -57,7 +56,7 @@ public final class SparkConverter { /** * A fallback converter that allows us to easily call Java beans and use the raw Spark {@link Response} as parameter types. */ - @FallbackConverter + @Converter(fallback = true) public static Object convertToResponse(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // if we want to covert to Response if (value != null && Response.class.isAssignableFrom(type)) { diff --git a/core/camel-api/src/main/java/org/apache/camel/FallbackConverter.java b/core/camel-api/src/main/java/org/apache/camel/FallbackConverter.java index 4cff97c..5d72fab 100644 --- a/core/camel-api/src/main/java/org/apache/camel/FallbackConverter.java +++ b/core/camel-api/src/main/java/org/apache/camel/FallbackConverter.java @@ -35,6 +35,7 @@ import java.lang.annotation.Target; * if it can not handle the types to convert from/to. * * @see org.apache.camel.component.file.GenericFileConverter GenericFileConverter for an example. + * @deprecated use @Converter(fallback = true) instead */ @Retention(RetentionPolicy.RUNTIME) @Documented diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/converter/AnnotationTypeConverterLoader.java b/core/camel-base/src/main/java/org/apache/camel/impl/converter/AnnotationTypeConverterLoader.java index 87d5f02..b557a72 100644 --- a/core/camel-base/src/main/java/org/apache/camel/impl/converter/AnnotationTypeConverterLoader.java +++ b/core/camel-base/src/main/java/org/apache/camel/impl/converter/AnnotationTypeConverterLoader.java @@ -36,7 +36,6 @@ import static java.lang.reflect.Modifier.isStatic; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.TypeConverterLoaderException; import org.apache.camel.spi.PackageScanClassResolver; @@ -271,13 +270,12 @@ public class AnnotationTypeConverterLoader implements TypeConverterLoader { if (method.getAnnotation(Converter.class) != null) { allowNull = method.getAnnotation(Converter.class).allowNull(); } - injector = handleHasConverterAnnotation(registry, type, injector, method, allowNull); - } else if (ObjectHelper.hasAnnotation(method, FallbackConverter.class, true)) { - boolean allowNull = false; - if (method.getAnnotation(FallbackConverter.class) != null) { - allowNull = method.getAnnotation(FallbackConverter.class).allowNull(); + boolean fallback = method.getAnnotation(Converter.class).fallback(); + if (fallback) { + injector = handleHasFallbackConverterAnnotation(registry, type, injector, method, allowNull); + } else { + injector = handleHasConverterAnnotation(registry, type, injector, method, allowNull); } - injector = handleHasFallbackConverterAnnotation(registry, type, injector, method, allowNull); } } @@ -379,8 +377,8 @@ public class AnnotationTypeConverterLoader implements TypeConverterLoader { protected void registerFallbackTypeConverter(TypeConverterRegistry registry, TypeConverter typeConverter, Method method) { boolean canPromote = false; // check whether the annotation may indicate it can promote - if (method.getAnnotation(FallbackConverter.class) != null) { - canPromote = method.getAnnotation(FallbackConverter.class).canPromote(); + if (method.getAnnotation(Converter.class) != null) { + canPromote = method.getAnnotation(Converter.class).fallbackCanPromote(); } registry.addFallbackTypeConverter(typeConverter, canPromote); } diff --git a/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/other/MyOtherTypeConverter.java b/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/other/MyOtherTypeConverter.java index dd8ea95..0ee71fe 100644 --- a/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/other/MyOtherTypeConverter.java +++ b/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/other/MyOtherTypeConverter.java @@ -18,7 +18,6 @@ package org.apache.camel.core.osgi.other; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.component.file.GenericFile; import org.apache.camel.spi.TypeConverterRegistry; @@ -52,7 +51,7 @@ public final class MyOtherTypeConverter { return false; } - @FallbackConverter + @Converter(fallback = true) public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // use a fallback type converter so we can convert the embedded body if the value is GenericFile if (GenericFile.class.isAssignableFrom(value.getClass())) { diff --git a/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MyTypeConverter.java b/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MyTypeConverter.java index be98bbe..6c95461 100644 --- a/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MyTypeConverter.java +++ b/core/camel-core-osgi/src/test/java/org/apache/camel/core/osgi/test/MyTypeConverter.java @@ -18,7 +18,6 @@ package org.apache.camel.core.osgi.test; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.component.file.GenericFile; import org.apache.camel.spi.TypeConverterRegistry; @@ -52,7 +51,7 @@ public final class MyTypeConverter { return false; } - @FallbackConverter + @Converter(fallback = true) public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // use a fallback type converter so we can convert the embedded body if the value is GenericFile if (GenericFile.class.isAssignableFrom(value.getClass())) { diff --git a/core/camel-core/src/main/java/org/apache/camel/component/bean/BeanConverter.java b/core/camel-core/src/main/java/org/apache/camel/component/bean/BeanConverter.java index 6fb808f..b8b6f55 100644 --- a/core/camel-core/src/main/java/org/apache/camel/component/bean/BeanConverter.java +++ b/core/camel-core/src/main/java/org/apache/camel/component/bean/BeanConverter.java @@ -18,7 +18,6 @@ package org.apache.camel.component.bean; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.TypeConverter; import org.apache.camel.spi.TypeConverterRegistry; @@ -35,7 +34,6 @@ public final class BeanConverter { } @Converter(fallback = true) - @FallbackConverter public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { // use a fallback type converter so we can convert the embedded body if the value is BeanInvocation if (BeanInvocation.class.isAssignableFrom(value.getClass())) { diff --git a/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/InstanceDummyFallbackConverter.java b/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/InstanceDummyFallbackConverter.java index dfc6304..870de8b 100644 --- a/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/InstanceDummyFallbackConverter.java +++ b/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/InstanceDummyFallbackConverter.java @@ -22,7 +22,6 @@ import org.apache.camel.CamelContext; import org.apache.camel.CamelContextAware; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.spi.TypeConverterRegistry; @Converter @@ -40,7 +39,7 @@ public class InstanceDummyFallbackConverter implements CamelContextAware { this.camelContext = camelContext; } - @FallbackConverter + @Converter(fallback = true) public Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { if (Currency.class.isAssignableFrom(value.getClass())) { return "Money talks says " + camelContext.getName(); diff --git a/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/MyFallbackPromoteConverter.java b/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/MyFallbackPromoteConverter.java index 040bfbc..de4adc3 100644 --- a/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/MyFallbackPromoteConverter.java +++ b/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/MyFallbackPromoteConverter.java @@ -18,14 +18,13 @@ package org.apache.camel.converter.myconverter; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.converter.MyCoolBean; import org.apache.camel.spi.TypeConverterRegistry; @Converter public class MyFallbackPromoteConverter { - @FallbackConverter(canPromote = true) + @Converter(fallback = true, fallbackCanPromote = true) public Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { if (MyCoolBean.class.isAssignableFrom(value.getClass())) { return "This is cool: " + value.toString(); diff --git a/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/StaticDummyFallbackConverter.java b/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/StaticDummyFallbackConverter.java index cea018c..56c0e5c 100644 --- a/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/StaticDummyFallbackConverter.java +++ b/core/camel-core/src/test/java/org/apache/camel/converter/myconverter/StaticDummyFallbackConverter.java @@ -20,7 +20,6 @@ import java.util.TimeZone; import org.apache.camel.Converter; import org.apache.camel.Exchange; -import org.apache.camel.FallbackConverter; import org.apache.camel.spi.TypeConverterRegistry; @Converter @@ -29,7 +28,7 @@ public final class StaticDummyFallbackConverter { private StaticDummyFallbackConverter() { } - @FallbackConverter + @Converter(fallback = true) public static Object convertTo(Class<?> type, Exchange exchange, Object value, TypeConverterRegistry registry) { if (TimeZone.class.isAssignableFrom(value.getClass())) { return "Time talks";