On Wed, Jan 6, 2010 at 3:44 AM, Willem Jiang <willem.ji...@gmail.com> wrote: > I think we can support the InputStream and Serializable object at the same > time :) > If the Message body is Serializable, we can skip the InputStream part, if > it's not, we can try to turn it into an InputStream. > > Any thought? >
Yeah my thought as well about the Serializable > BTW, any kind of contribution is welcome, so please feel free to submit the > patch with a JIRA[1]. > > [1] http://issues.apache.org/activemq/browse/CAMEL > > Willem > > > tide08 wrote: >> >> I am using camel 2.1.0 cache component, and I am confused how I can use >> custom objects with cache? >> >> It seems to me that for every object I would want to use, I will have to >> register TypeConverter for those classes? Is that assumption correct? >> I think it is due to following code in CacheProducer.java, which tries to >> convert payload into InputStream? >> >> InputStream is = >> exchange.getContext().getTypeConverter().convertTo(InputStream.class, >> body); >> // Read InputStream into a byte[] buffer >> byte[] buffer = new byte[is.available()]; >> int n = is.available(); >> for (int j = 0; j < n; j++) { >> buffer[j] = (byte)is.read(); >> } >> Looking at EHCache API, it can support any object as long as it is >> serializable, so camel-cache component should not try to convert payload >> into InputStream. Or was there any specific reason to do so? >> >> I quickly modified Producer and it seems to work fine, please let me know >> and I would be happy to provide the patch. >> >> Thanks! > > -- Claus Ibsen Apache Camel Committer Author of Camel in Action: http://www.manning.com/ibsen/ Open Source Integration: http://fusesource.com Blog: http://davsclaus.blogspot.com/ Twitter: http://twitter.com/davsclaus