Author: raulk Date: Tue Dec 18 00:13:51 2012 New Revision: 1423230 URL: http://svn.apache.org/viewvc?rev=1423230&view=rev Log: CAMEL-5866 Pass Exchange param to TypeConverter.convertTo calls where possible
Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/builder/xml/XPathBuilder.java Tue Dec 18 00:13:51 2012 @@ -144,7 +144,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(); @@ -969,11 +969,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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/bean/MethodInfo.java Tue Dec 18 00:13:51 2012 @@ -434,7 +434,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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/language/LanguageProducer.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java Tue Dec 18 00:13:51 2012 @@ -578,7 +578,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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/jaxp/XmlConverter.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamCacheConverter.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/converter/stream/StreamSourceCache.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultConsumerTemplate.java Tue Dec 18 00:13:51 2012 @@ -147,7 +147,7 @@ public class DefaultConsumerTemplate ext Exchange exchange = receive(endpointUri); try { answer = extractResultBody(exchange); - answer = context.getTypeConverter().convertTo(type, answer); + answer = context.getTypeConverter().convertTo(type, exchange, answer); } finally { doneUoW(exchange); } @@ -164,7 +164,7 @@ public class DefaultConsumerTemplate ext Exchange exchange = receive(endpointUri, timeout); try { answer = extractResultBody(exchange); - answer = context.getTypeConverter().convertTo(type, answer); + answer = context.getTypeConverter().convertTo(type, exchange, answer); } finally { doneUoW(exchange); } @@ -181,7 +181,7 @@ public class DefaultConsumerTemplate ext Exchange exchange = receiveNoWait(endpointUri); try { answer = extractResultBody(exchange); - answer = context.getTypeConverter().convertTo(type, answer); + answer = context.getTypeConverter().convertTo(type, exchange, answer); } finally { doneUoW(exchange); } Modified: camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/DefaultExchange.java Tue Dec 18 00:13:51 2012 @@ -220,7 +220,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) { @@ -252,7 +252,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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/GzipDataFormat.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/impl/ZipDataFormat.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/language/bean/BeanExpression.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/support/ExpressionAdapter.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/ExchangeHelper.java Tue Dec 18 00:13:51 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/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java?rev=1423230&r1=1423229&r2=1423230&view=diff ============================================================================== --- camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java (original) +++ camel/branches/camel-2.9.x/camel-core/src/main/java/org/apache/camel/util/MessageHelper.java Tue Dec 18 00:13:51 2012 @@ -159,7 +159,7 @@ public final class MessageHelper { if (message.getExchange() != null) { String property = message.getExchange().getContext().getProperties().get(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));