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 b1ff55ed4..ca2783b05 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 @@ -52,7 +52,7 @@ public interface RedisOperations { long getExpire(K key); - void watch(K... keys); + void watch(Collection keys); void multi(); 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 a9b1a9dcc..ce02e8235 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 @@ -689,7 +689,7 @@ public class RedisTemplate extends RedisAccessor implements RedisOperation } @Override - public void watch(K... keys) { + public void watch(Collection keys) { final byte[][] rawKeys = rawKeys(keys); execute(new RedisCallback() { diff --git a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicInteger.java b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicInteger.java index e557b9fca..fd922dbc0 100644 --- a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicInteger.java +++ b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicInteger.java @@ -16,6 +16,7 @@ package org.springframework.data.keyvalue.redis.util; import java.io.Serializable; +import java.util.Collections; import org.springframework.data.keyvalue.redis.core.RedisOperations; import org.springframework.data.keyvalue.redis.core.ValueOperations; @@ -95,7 +96,7 @@ public class RedisAtomicInteger extends Number implements Serializable { */ public boolean compareAndSet(int expect, int update) { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); if (expect == get()) { generalOps.multi(); set(update); @@ -115,7 +116,7 @@ public class RedisAtomicInteger extends Number implements Serializable { */ public int getAndIncrement() { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); int value = get(); generalOps.multi(); operations.increment(key, 1); @@ -132,7 +133,7 @@ public class RedisAtomicInteger extends Number implements Serializable { */ public int getAndDecrement() { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); int value = get(); generalOps.multi(); operations.increment(key, -1); @@ -150,7 +151,7 @@ public class RedisAtomicInteger extends Number implements Serializable { */ public int getAndAdd(int delta) { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); int value = get(); generalOps.multi(); set(value + delta); diff --git a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicLong.java b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicLong.java index 8829e336a..aced40361 100644 --- a/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicLong.java +++ b/spring-data-redis/src/main/java/org/springframework/data/keyvalue/redis/util/RedisAtomicLong.java @@ -16,6 +16,7 @@ package org.springframework.data.keyvalue.redis.util; import java.io.Serializable; +import java.util.Collections; import org.springframework.data.keyvalue.redis.core.RedisOperations; import org.springframework.data.keyvalue.redis.core.ValueOperations; @@ -95,7 +96,7 @@ public class RedisAtomicLong extends Number implements Serializable { */ public boolean compareAndSet(long expect, long update) { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); if (expect == get()) { generalOps.multi(); set(update); @@ -116,7 +117,7 @@ public class RedisAtomicLong extends Number implements Serializable { */ public long getAndIncrement() { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); long value = get(); generalOps.multi(); operations.increment(key, 1); @@ -133,7 +134,7 @@ public class RedisAtomicLong extends Number implements Serializable { */ public long getAndDecrement() { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); long value = get(); generalOps.multi(); operations.increment(key, -1); @@ -151,7 +152,7 @@ public class RedisAtomicLong extends Number implements Serializable { */ public long getAndAdd(long delta) { for (;;) { - generalOps.watch(key); + generalOps.watch(Collections.singleton(key)); long value = get(); generalOps.multi(); set(value + delta);