Author: raulk Date: Mon Dec 17 23:54:06 2012 New Revision: 1423228 URL: http://svn.apache.org/viewvc?rev=1423228&view=rev Log: CAMEL-5866 Pass Exchange param to TypeConverter.convertTo calls where possible
Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java camel/trunk/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java camel/trunk/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java camel/trunk/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java camel/trunk/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java camel/trunk/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java camel/trunk/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java Mon Dec 17 23:54:06 2012 @@ -166,7 +166,7 @@ public class XPathBuilder extends Servic public <T> T evaluate(Exchange exchange, Class<T> type) { try { Object result = evaluate(exchange); - return exchange.getContext().getTypeConverter().convertTo(type, result); + return exchange.getContext().getTypeConverter().convertTo(type, exchange, result); } finally { // remove the thread local after usage this.exchange.remove(); @@ -1122,11 +1122,11 @@ public class XPathBuilder extends Servic // let's try coercing some common types into something JAXP work with the best for special types if (body instanceof WrappedFile) { // special for files so we can work with them out of the box - InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, body); + InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, exchange, body); answer = new InputSource(is); } else if (body instanceof BeanInvocation) { // if its a null bean invocation then handle that specially - BeanInvocation bi = exchange.getContext().getTypeConverter().convertTo(BeanInvocation.class, body); + BeanInvocation bi = exchange.getContext().getTypeConverter().convertTo(BeanInvocation.class, exchange, body); if (bi.getArgs() != null && bi.getArgs().length == 1 && bi.getArgs()[0] == null) { // its a null argument from the bean invocation so use null as answer answer = null; Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java Mon Dec 17 23:54:06 2012 @@ -464,7 +464,7 @@ public class MethodInfo { Object answer = null; // convert the parameter value to a String - String exp = exchange.getContext().getTypeConverter().convertTo(String.class, parameterValue); + String exp = exchange.getContext().getTypeConverter().convertTo(String.class, exchange, parameterValue); if (exp != null) { // must trim first as there may be spaces between parameters exp = exp.trim(); Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java Mon Dec 17 23:54:06 2012 @@ -59,7 +59,7 @@ public class LanguageProducer extends De String script; InputStream is = getEndpoint().getResourceAsInputStream(); try { - script = getEndpoint().getCamelContext().getTypeConverter().convertTo(String.class, is); + script = getEndpoint().getCamelContext().getTypeConverter().convertTo(String.class, exchange, is); } finally { IOHelper.close(is); } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java Mon Dec 17 23:54:06 2012 @@ -628,7 +628,7 @@ public class MockEndpoint extends Defaul } else if (expectedValue != null) { String from = actualValue.getClass().getName(); String to = expectedValue.getClass().getName(); - actualValue = getCamelContext().getTypeConverter().convertTo(expectedValue.getClass(), actualValue); + actualValue = getCamelContext().getTypeConverter().convertTo(expectedValue.getClass(), exchange, actualValue); assertTrue("There is no type conversion possible from " + from + " to " + to, actualValue != null); } return actualValue; Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java Mon Dec 17 23:54:06 2012 @@ -513,7 +513,7 @@ public class XmlConverter { @Converter public StreamSource toStreamSource(byte[] in, Exchange exchange) throws TransformerException { if (in != null) { - InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, in); + InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, exchange, in); return new StreamSource(is); } return null; @@ -522,7 +522,7 @@ public class XmlConverter { @Converter public StreamSource toStreamSource(ByteBuffer in, Exchange exchange) throws TransformerException { if (in != null) { - InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, in); + InputStream is = exchange.getContext().getTypeConverter().convertTo(InputStream.class, exchange, in); return new StreamSource(is); } return null; Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java Mon Dec 17 23:54:06 2012 @@ -64,7 +64,7 @@ public final class StreamCacheConverter @Converter public static StreamCache convertToStreamCache(SAXSource source, Exchange exchange) throws TransformerException { - String data = exchange.getContext().getTypeConverter().convertTo(String.class, source); + String data = exchange.getContext().getTypeConverter().convertTo(String.class, exchange, source); return new SourceCache(data); } @@ -77,7 +77,7 @@ public final class StreamCacheConverter @Converter public static StreamCache convertToStreamCache(Reader reader, Exchange exchange) throws IOException { - String data = exchange.getContext().getTypeConverter().convertTo(String.class, reader); + String data = exchange.getContext().getTypeConverter().convertTo(String.class, exchange, reader); return new ReaderCache(data); } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java Mon Dec 17 23:54:06 2012 @@ -46,7 +46,7 @@ public class StreamSourceCache extends S setSystemId(source.getSystemId()); stream = (InputStream) streamCache; } else if (source.getReader() != null) { - String data = exchange.getContext().getTypeConverter().convertTo(String.class, source.getReader()); + String data = exchange.getContext().getTypeConverter().convertTo(String.class, exchange, source.getReader()); readCache = new ReaderCache(data); streamCache = null; setReader(readCache); Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java Mon Dec 17 23:54:06 2012 @@ -155,7 +155,7 @@ public class DefaultConsumerTemplate ext Exchange exchange = receive(endpointUri); try { answer = extractResultBody(exchange); - answer = camelContext.getTypeConverter().convertTo(type, answer); + answer = camelContext.getTypeConverter().convertTo(type, exchange, answer); } finally { doneUoW(exchange); } @@ -172,7 +172,7 @@ public class DefaultConsumerTemplate ext Exchange exchange = receive(endpointUri, timeout); try { answer = extractResultBody(exchange); - answer = camelContext.getTypeConverter().convertTo(type, answer); + answer = camelContext.getTypeConverter().convertTo(type, exchange, answer); } finally { doneUoW(exchange); } @@ -189,7 +189,7 @@ public class DefaultConsumerTemplate ext Exchange exchange = receiveNoWait(endpointUri); try { answer = extractResultBody(exchange); - answer = camelContext.getTypeConverter().convertTo(type, answer); + answer = camelContext.getTypeConverter().convertTo(type, exchange, answer); } finally { doneUoW(exchange); } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java Mon Dec 17 23:54:06 2012 @@ -210,7 +210,7 @@ public final class DefaultExchange imple } // fallback to use type converter - return context.getTypeConverter().convertTo(type, in); + return context.getTypeConverter().convertTo(type, this, in); } public void setIn(Message in) { @@ -242,7 +242,7 @@ public final class DefaultExchange imple } // fallback to use type converter - return context.getTypeConverter().convertTo(type, out); + return context.getTypeConverter().convertTo(type, this, out); } public boolean hasOut() { Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java Mon Dec 17 23:54:06 2012 @@ -29,7 +29,7 @@ import org.apache.camel.util.IOHelper; public class GzipDataFormat implements DataFormat { public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception { - InputStream is = exchange.getContext().getTypeConverter().mandatoryConvertTo(InputStream.class, graph); + InputStream is = exchange.getContext().getTypeConverter().mandatoryConvertTo(InputStream.class, exchange, graph); GZIPOutputStream zipOutput = new GZIPOutputStream(stream); try { Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java Mon Dec 17 23:54:06 2012 @@ -41,7 +41,7 @@ public class ZipDataFormat implements Da public void marshal(Exchange exchange, Object graph, OutputStream stream) throws Exception { // ask for a mandatory type conversion to avoid a possible NPE beforehand as we do copy from the InputStream - InputStream is = exchange.getContext().getTypeConverter().mandatoryConvertTo(InputStream.class, graph); + InputStream is = exchange.getContext().getTypeConverter().mandatoryConvertTo(InputStream.class, exchange, graph); DeflaterOutputStream zipOutput = new DeflaterOutputStream(stream, new Deflater(compressionLevel)); try { Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java Mon Dec 17 23:54:06 2012 @@ -130,7 +130,7 @@ public class BeanExpression implements E public <T> T evaluate(Exchange exchange, Class<T> type) { Object result = evaluate(exchange); - return exchange.getContext().getTypeConverter().convertTo(type, result); + return exchange.getContext().getTypeConverter().convertTo(type, exchange, result); } public boolean matches(Exchange exchange) { Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java Mon Dec 17 23:54:06 2012 @@ -34,7 +34,7 @@ public abstract class ExpressionAdapter public <T> T evaluate(Exchange exchange, Class<T> type) { Object value = evaluate(exchange); - return exchange.getContext().getTypeConverter().convertTo(type, value); + return exchange.getContext().getTypeConverter().convertTo(type, exchange, value); } } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java Mon Dec 17 23:54:06 2012 @@ -734,7 +734,7 @@ public final class ExchangeHelper { if (result instanceof Exchange) { Exchange exchange = (Exchange) result; Object answer = ExchangeHelper.extractResultBody(exchange, exchange.getPattern()); - return context.getTypeConverter().convertTo(type, answer); + return context.getTypeConverter().convertTo(type, exchange, answer); } return context.getTypeConverter().convertTo(type, result); } Modified: camel/trunk/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java URL: http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java?rev=1423228&r1=1423227&r2=1423228&view=diff ============================================================================== --- camel/trunk/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java (original) +++ camel/trunk/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java Mon Dec 17 23:54:06 2012 @@ -159,7 +159,7 @@ public final class MessageHelper { if (message.getExchange() != null) { String property = message.getExchange().getContext().getProperty(Exchange.LOG_DEBUG_BODY_STREAMS); if (property != null) { - streams = message.getExchange().getContext().getTypeConverter().convertTo(Boolean.class, property); + streams = message.getExchange().getContext().getTypeConverter().convertTo(Boolean.class, message.getExchange(), property); } } @@ -230,7 +230,7 @@ public final class MessageHelper { String body = null; if (message.getExchange() != null) { try { - body = message.getExchange().getContext().getTypeConverter().convertTo(String.class, obj); + body = message.getExchange().getContext().getTypeConverter().convertTo(String.class, message.getExchange(), obj); } catch (Exception e) { // ignore as the body is for logging purpose } @@ -296,7 +296,8 @@ public final class MessageHelper { // to String if (value != null) { try { - String xml = message.getExchange().getContext().getTypeConverter().convertTo(String.class, value); + String xml = message.getExchange().getContext().getTypeConverter().convertTo(String.class, + message.getExchange(), value); if (xml != null) { // must always xml encode sb.append(StringHelper.xmlEncode(xml));