From 2e53b178f01ac19e0d444705af9c651ce9531424 Mon Sep 17 00:00:00 2001 From: Costin Leau Date: Tue, 1 Mar 2011 17:43:16 +0200 Subject: [PATCH] + add overloaded delete/watch operation for single key invocations --- .../keyvalue/redis/core/RedisOperations.java | 4 +++ .../keyvalue/redis/core/RedisTemplate.java | 26 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisOperations.java b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisOperations.java index 396ae3ee3..33535714e 100644 --- a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisOperations.java +++ b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisOperations.java @@ -65,6 +65,8 @@ public interface RedisOperations { Boolean hasKey(K key); + void delete(K key); + void delete(Collection key); DataType type(K key); @@ -85,6 +87,8 @@ public interface RedisOperations { Long getExpire(K key); + void watch(K keys); + void watch(Collection keys); void unwatch(); diff --git a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisTemplate.java b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisTemplate.java index 718f73ace..df89bcc03 100644 --- a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisTemplate.java +++ b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/core/RedisTemplate.java @@ -575,6 +575,19 @@ public class RedisTemplate extends RedisAccessor implements RedisOperation }); } + @Override + public void delete(K key) { + final byte[] rawKey = rawKey(key); + + execute(new RedisCallback() { + @Override + public Object doInRedis(RedisConnection connection) { + connection.del(rawKey); + return null; + } + }, true); + } + @Override public void delete(Collection keys) { final byte[][] rawKeys = rawKeys(keys); @@ -787,6 +800,19 @@ public class RedisTemplate extends RedisAccessor implements RedisOperation }, true); } + @Override + public void watch(K key) { + final byte[] rawKey = rawKey(key); + + execute(new RedisCallback() { + @Override + public Object doInRedis(RedisConnection connection) { + connection.watch(rawKey); + return null; + } + }, true); + } + @Override public void watch(Collection keys) { final byte[][] rawKeys = rawKeys(keys);