From 1f45b65e255c51d689b773db3346c935660b8597 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Wed, 21 Dec 2022 09:50:19 +0300 Subject: [PATCH] refactoring --- .../main/java/org/redisson/RedissonSet.java | 19 ++++++++----------- .../client/protocol/RedisCommands.java | 2 +- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/redisson/src/main/java/org/redisson/RedissonSet.java b/redisson/src/main/java/org/redisson/RedissonSet.java index 7e2d822d3..336b2d926 100644 --- a/redisson/src/main/java/org/redisson/RedissonSet.java +++ b/redisson/src/main/java/org/redisson/RedissonSet.java @@ -26,6 +26,7 @@ import org.redisson.mapreduce.RedissonCollectionMapReduce; import org.redisson.misc.CompletableFutureWrapper; import java.util.*; +import java.util.concurrent.CompletionStage; import java.util.stream.Stream; /** @@ -379,7 +380,7 @@ public class RedissonSet extends RedissonExpirable implements RSet, ScanIt return new CompletableFutureWrapper<>(0); } - List args = new ArrayList(c.size() + 1); + List args = new ArrayList<>(c.size() + 1); args.add(getRawName()); encode(args, c); @@ -389,29 +390,25 @@ public class RedissonSet extends RedissonExpirable implements RSet, ScanIt @Override public RFuture> containsEachAsync(Collection c) { if (c.isEmpty()) { - return RedissonPromise.newSucceededFuture(Collections.emptyList()); + return new CompletableFutureWrapper<>(Collections.emptyList()); } - List args = new ArrayList(c.size() + 1); + + List args = new ArrayList<>(c.size() + 1); args.add(getRawName()); encode(args, c); RFuture> future = commandExecutor.readAsync(getRawName(), codec, RedisCommands.SMISMEMBER, args.toArray()); List keysToCheck = new ArrayList<>(c); - RPromise> result = new RedissonPromise<>(); - future.onComplete((res, e) -> { - if (e != null) { - result.tryFailure(e); - return; - } + CompletionStage> f = future.thenApply(res -> { List containedKeys = new ArrayList<>(); for (int i = 0; i < res.size(); i++) { if (res.get(i) == 1) { containedKeys.add(keysToCheck.get(i)); } } - result.trySuccess(containedKeys); + return containedKeys; }); - return result; + return new CompletableFutureWrapper<>(f); } @Override diff --git a/redisson/src/main/java/org/redisson/client/protocol/RedisCommands.java b/redisson/src/main/java/org/redisson/client/protocol/RedisCommands.java index 05af6e306..ada7f0fc2 100644 --- a/redisson/src/main/java/org/redisson/client/protocol/RedisCommands.java +++ b/redisson/src/main/java/org/redisson/client/protocol/RedisCommands.java @@ -215,7 +215,7 @@ public interface RedisCommands { RedisCommand> SUNION = new RedisCommand>("SUNION", new ObjectSetReplayDecoder()); RedisCommand> SDIFF = new RedisCommand>("SDIFF", new ObjectSetReplayDecoder()); RedisCommand> SINTER = new RedisCommand>("SINTER", new ObjectSetReplayDecoder()); - RedisCommand> SMISMEMBER = new RedisCommand>("SMISMEMBER", new ObjectListReplayDecoder()); + RedisCommand> SMISMEMBER = new RedisCommand<>("SMISMEMBER", new ObjectListReplayDecoder()); RedisStrictCommand LPOS = new RedisStrictCommand<>("LPOS"); RedisCommand LSET = new RedisCommand("LSET", new VoidReplayConvertor());