You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2012/09/09 11:22:53 UTC
svn commit: r1382434 - in /camel/branches/camel-2.10.x: ./
components/camel-cache/src/main/java/org/apache/camel/component/cache/CacheProducer.java
components/camel-cache/src/test/java/org/apache/camel/component/cache/CacheProducerTest.java
Author: davsclaus
Date: Sun Sep 9 09:22:52 2012
New Revision: 1382434
URL: http://svn.apache.org/viewvc?rev=1382434&view=rev
Log:
CAMEL-5436: Convert cache keys to String to allow other types as well. Thanks to Michal Svab for the patch.
Modified:
camel/branches/camel-2.10.x/ (props changed)
camel/branches/camel-2.10.x/components/camel-cache/src/main/java/org/apache/camel/component/cache/CacheProducer.java
camel/branches/camel-2.10.x/components/camel-cache/src/test/java/org/apache/camel/component/cache/CacheProducerTest.java
Propchange: camel/branches/camel-2.10.x/
------------------------------------------------------------------------------
Merged /camel/trunk:r1382433
Propchange: camel/branches/camel-2.10.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.
Modified: camel/branches/camel-2.10.x/components/camel-cache/src/main/java/org/apache/camel/component/cache/CacheProducer.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-cache/src/main/java/org/apache/camel/component/cache/CacheProducer.java?rev=1382434&r1=1382433&r2=1382434&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-cache/src/main/java/org/apache/camel/component/cache/CacheProducer.java (original)
+++ camel/branches/camel-2.10.x/components/camel-cache/src/main/java/org/apache/camel/component/cache/CacheProducer.java Sun Sep 9 09:22:52 2012
@@ -56,10 +56,11 @@ public class CacheProducer extends Defau
cache = getEndpoint().initializeCache();
Map<String, Object> headers = exchange.getIn().getHeaders();
- String key = (headers.containsKey(CacheConstants.CACHE_KEY)) ? (String) headers
- .get(CacheConstants.CACHE_KEY) : getEndpoint().getKey();
+ String key = (headers.containsKey(CacheConstants.CACHE_KEY))
+ ? exchange.getIn().getHeader(CacheConstants.CACHE_KEY, String.class)
+ : getEndpoint().getKey();
- String operation = (headers.containsKey(CacheConstants.CACHE_OPERATION)) ? (String) headers
+ String operation = (headers.containsKey(CacheConstants.CACHE_OPERATION)) ? (String)headers
.get(CacheConstants.CACHE_OPERATION) : getEndpoint().getOperation();
if (operation == null) {
Modified: camel/branches/camel-2.10.x/components/camel-cache/src/test/java/org/apache/camel/component/cache/CacheProducerTest.java
URL: http://svn.apache.org/viewvc/camel/branches/camel-2.10.x/components/camel-cache/src/test/java/org/apache/camel/component/cache/CacheProducerTest.java?rev=1382434&r1=1382433&r2=1382434&view=diff
==============================================================================
--- camel/branches/camel-2.10.x/components/camel-cache/src/test/java/org/apache/camel/component/cache/CacheProducerTest.java (original)
+++ camel/branches/camel-2.10.x/components/camel-cache/src/test/java/org/apache/camel/component/cache/CacheProducerTest.java Sun Sep 9 09:22:52 2012
@@ -19,6 +19,7 @@ package org.apache.camel.component.cache
import java.io.FileInputStream;
import java.io.InputStream;
+import java.util.concurrent.TimeUnit;
import net.sf.ehcache.Cache;
import net.sf.ehcache.CacheException;
@@ -27,6 +28,7 @@ import org.apache.camel.EndpointInject;
import org.apache.camel.Exchange;
import org.apache.camel.Message;
import org.apache.camel.Processor;
+import org.apache.camel.builder.NotifyBuilder;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.mock.MockEndpoint;
import org.apache.camel.converter.IOConverter;
@@ -133,6 +135,26 @@ public class CacheProducerTest extends C
}
@Test
+ public void testAddingDataToCacheWithNonStringCacheKey() throws Exception {
+ context.addRoutes(new RouteBuilder() {
+ public void configure() {
+ from("direct:a").
+ setHeader(CacheConstants.CACHE_OPERATION, constant(CacheConstants.CACHE_OPERATION_ADD)).
+ setHeader(CacheConstants.CACHE_KEY, constant(10L)).
+ to("cache://TestCache1");
+ }
+ });
+ context.start();
+ NotifyBuilder notify = new NotifyBuilder(context).whenExactlyDone(1).create();
+
+ LOG.debug("------------Beginning CacheProducer Add Test---------------");
+ sendOriginalFile();
+
+ notify.matches(10, TimeUnit.SECONDS);
+ assertNotNull(fetchElement("10"));
+ }
+
+ @Test
public void testAddingDataElementEternal() throws Exception {
context.addRoutes(new RouteBuilder() {
public void configure() {