From a921cb009d63d48f266ab8c113818c4f16c3024d Mon Sep 17 00:00:00 2001 From: Nikita Date: Thu, 21 Jan 2016 16:19:33 +0300 Subject: [PATCH] readAll and readAllAsync methods added to RList. #374 --- src/main/java/org/redisson/RedissonList.java | 8 +++++--- src/main/java/org/redisson/RedissonSubList.java | 8 +++++--- src/main/java/org/redisson/core/RList.java | 7 +++++++ src/main/java/org/redisson/core/RListAsync.java | 8 ++++++++ 4 files changed, 25 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/redisson/RedissonList.java b/src/main/java/org/redisson/RedissonList.java index 00e39c12f..16ceb2238 100644 --- a/src/main/java/org/redisson/RedissonList.java +++ b/src/main/java/org/redisson/RedissonList.java @@ -94,11 +94,13 @@ public class RedissonList extends RedissonExpirable implements RList { return list.toArray(); } - private List readAll() { - return (List) get(readAllAsync()); + @Override + public List readAll() { + return get(readAllAsync()); } - private Future> readAllAsync() { + @Override + public Future> readAllAsync() { return commandExecutor.readAsync(getName(), codec, LRANGE, getName(), 0, -1); } diff --git a/src/main/java/org/redisson/RedissonSubList.java b/src/main/java/org/redisson/RedissonSubList.java index e18fc93e4..c6d7ad421 100644 --- a/src/main/java/org/redisson/RedissonSubList.java +++ b/src/main/java/org/redisson/RedissonSubList.java @@ -105,11 +105,13 @@ public class RedissonSubList extends RedissonExpirable implements RList { return list.toArray(); } - private List readAll() { - return (List) get(readAllAsync()); + @Override + public List readAll() { + return get(readAllAsync()); } - private Future> readAllAsync() { + @Override + public Future> readAllAsync() { return commandExecutor.readAsync(getName(), codec, LRANGE, getName(), fromIndex, toIndex.get()-1); } diff --git a/src/main/java/org/redisson/core/RList.java b/src/main/java/org/redisson/core/RList.java index eac8a001d..3a9b2b1b8 100644 --- a/src/main/java/org/redisson/core/RList.java +++ b/src/main/java/org/redisson/core/RList.java @@ -31,4 +31,11 @@ public interface RList extends List, RExpirable, RListAsync, RandomAcce RList subList(int fromIndex, int toIndex); + /** + * Read all elements at once + * + * @return + */ + List readAll(); + } diff --git a/src/main/java/org/redisson/core/RListAsync.java b/src/main/java/org/redisson/core/RListAsync.java index 6ce2109a2..155d89d81 100644 --- a/src/main/java/org/redisson/core/RListAsync.java +++ b/src/main/java/org/redisson/core/RListAsync.java @@ -16,6 +16,7 @@ package org.redisson.core; import java.util.Collection; +import java.util.List; import java.util.RandomAccess; import io.netty.util.concurrent.Future; @@ -41,4 +42,11 @@ public interface RListAsync extends RCollectionAsync, RandomAccess { Future getAsync(int index); + /** + * Read all elements at once + * + * @return + */ + Future> readAllAsync(); + }