essobedo commented on PR #215:
URL: https://github.com/apache/camel-karaf/pull/215#issuecomment-1332041768

   Tested successfully with the next routes:
   
   ```
   <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
              xsi:schemaLocation="
                http://www.osgi.org/xmlns/blueprint/v1.0.0 
https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd";>
   
       <bean id="idempotentRepository" 
class="org.apache.camel.component.redis.processor.idempotent.RedisIdempotentRepository"
 scope="singleton">
           <argument value="test-repo"/>
       </bean>
       <bean id="connectionFactory" 
class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory" 
scope="singleton" init-method="afterPropertiesSet">
       </bean>
       <bean id="keySerializer" 
class="org.springframework.data.redis.serializer.StringRedisSerializer" 
scope="singleton"/>
       <bean id="redisTemplate" 
class="org.springframework.data.redis.core.RedisTemplate" scope="singleton" 
init-method="afterPropertiesSet">
           <property name="connectionFactory" ref="connectionFactory"/>
           <property name="keySerializer" ref="keySerializer"/>
           <property name="hashKeySerializer" ref="keySerializer"/>
       </bean>
   
       <camelContext xmlns="http://camel.apache.org/schema/blueprint";>
           <route startupOrder="1">
               <from 
uri="spring-redis://localhost:6379?command=SUBSCRIBE&amp;channels=testChannel&amp;redisTemplate=#redisTemplate"/>
               <idempotentConsumer idempotentRepository="idempotentRepository">
                   <simple>${in.body}</simple>
                   <log message="Message received: ${body}"/>
               </idempotentConsumer>
           </route>
   
           <route startupOrder="2">
               <from uri="timer:myTimer?period=10000" />
               <setHeader name="CamelRedis.Command">
                   <constant>PUBLISH</constant>
               </setHeader>
               <setHeader name="CamelRedis.Channel">
                   <constant>testChannel</constant>
               </setHeader>
               <setHeader name="CamelRedis.Message">
                   <simple>Message ${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Published 'Message one' to 'testChannel'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>PUBLISH</constant>
               </setHeader>
               <setHeader name="CamelRedis.Channel">
                   <constant>testChannel</constant>
               </setHeader>
               <setHeader name="CamelRedis.Message">
                   <constant>Message two</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Published 'Message two' to 'testChannel'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>SET</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <simple>someKey${header.firedTime}</simple>
               </setHeader>
               <setHeader name="CamelRedis.Value">
                   <constant>Some Value</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Set key 'someKey${header.firedTime}'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>GET</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <simple>someKey${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Get key 'someKey${header.firedTime}': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>EXISTS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <simple>someKey${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Key 'someKey${header.firedTime}' exists: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>KEYS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Pattern">
                   <constant>*</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Matching keys: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>DEL</constant>
               </setHeader>
               <setHeader name="CamelRedis.Keys">
                   <simple>${body}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Delete keys '${body}'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>EXISTS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <simple>someKey${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Key 'someKey${header.firedTime}' exists: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>HSET</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someKey</constant>
               </setHeader>
               <setHeader name="CamelRedis.Field">
                   <simple>someField${header.firedTime}</simple>
               </setHeader>
               <setHeader name="CamelRedis.Value">
                   <constant>Some Value</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="HSet key 'someKey/someField${header.firedTime}'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>HGET</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someKey</constant>
               </setHeader>
               <setHeader name="CamelRedis.Field">
                   <simple>someField${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="HGet key 'someKey/someField${header.firedTime}': 
${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>HEXISTS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someKey</constant>
               </setHeader>
               <setHeader name="CamelRedis.Field">
                   <simple>someField${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="HKey 'someKey/someField${header.firedTime}' 
exists: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>HKEYS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someKey</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Matching fields: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>HDEL</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someKey</constant>
               </setHeader>
               <setHeader name="CamelRedis.Field">
                   <simple>someField${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="HDelete 'someKey/someField${header.firedTime}'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>HEXISTS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someKey</constant>
               </setHeader>
               <setHeader name="CamelRedis.Field">
                   <simple>someField${header.firedTime}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="HKey 'someKey/someField${header.firedTime}' 
exists: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>RPUSH</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someList</constant>
               </setHeader>
               <setHeader name="CamelRedis.VALUE">
                   <constant>3</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="RPUSH 3 to 'someList'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>LPUSH</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someList</constant>
               </setHeader>
               <setHeader name="CamelRedis.VALUE">
                   <constant>1</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="LPUSH 1 to 'someList'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>LINSERT</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someList</constant>
               </setHeader>
               <setHeader name="CamelRedis.VALUE">
                   <constant>2</constant>
               </setHeader>
               <setHeader name="CamelRedis.PIVOT">
                   <constant>1</constant>
               </setHeader>
               <setHeader name="CamelRedis.POSITION">
                   <constant>AFTER</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="LINSERT 2 to 'someList'"/>
               <setHeader name="CamelRedis.Command">
                   <constant>LPOP</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someList</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="LPOP from 'someList': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>RPOP</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someList</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="RPOP from 'someList': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>INCR</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someCounter</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="INCR 'someCounter': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>INCRBY</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someCounter</constant>
               </setHeader>
               <setHeader name="CamelRedis.VALUE">
                   <constant>5</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="INCRBY 'someCounter': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>DECRBY</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someCounter</constant>
               </setHeader>
               <setHeader name="CamelRedis.VALUE">
                   <constant>5</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="DECRBY 'someCounter': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>DECR</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>someCounter</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="DECR 'someCounter': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>GEOADD</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>Sicily</constant>
               </setHeader>
               <setHeader name="CamelRedis.Value">
                   <constant>Palermo</constant>
               </setHeader>
               <setHeader name="CamelRedis.Longitude">
                   <constant>13.361389</constant>
               </setHeader>
               <setHeader name="CamelRedis.Latitude">
                   <constant>38.115556</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="GEOADD 'Sicily/palermo': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>GEOPOS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Key">
                   <constant>Sicily</constant>
               </setHeader>
               <setHeader name="CamelRedis.Value">
                   <constant>Palermo</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="GEOPOS 'Sicily/palermo': ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>PING</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="PING : ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>ECHO</constant>
               </setHeader>
               <setHeader name="CamelRedis.Value">
                   <constant>Hello Redis</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="ECHO : ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>KEYS</constant>
               </setHeader>
               <setHeader name="CamelRedis.Pattern">
                   <constant>*</constant>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Matching keys: ${body}"/>
               <setHeader name="CamelRedis.Command">
                   <constant>DEL</constant>
               </setHeader>
               <setHeader name="CamelRedis.Keys">
                   <simple>${body}</simple>
               </setHeader>
               <to 
uri="spring-redis://localhost:6379?redisTemplate=#redisTemplate"/>
               <log message="Delete keys '${body}'"/>
           </route>
       </camelContext>
   
   </blueprint>
   
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to