diff --git a/redisson/src/main/java/org/redisson/reactive/RedissonKeysReactive.java b/redisson/src/main/java/org/redisson/reactive/RedissonKeysReactive.java index 984a213ba..e639588b9 100644 --- a/redisson/src/main/java/org/redisson/reactive/RedissonKeysReactive.java +++ b/redisson/src/main/java/org/redisson/reactive/RedissonKeysReactive.java @@ -45,6 +45,14 @@ public class RedissonKeysReactive { this.commandExecutor = commandExecutor; } + public Flux getKeys() { + return getKeysByPattern(null); + } + + public Flux getKeys(int count) { + return getKeysByPattern(null, count); + } + public Flux getKeysByPattern(String pattern) { return getKeysByPattern(pattern, 10); } diff --git a/redisson/src/main/java/org/redisson/rx/RedissonKeysRx.java b/redisson/src/main/java/org/redisson/rx/RedissonKeysRx.java index 2f1c47e6a..7107ab2fc 100644 --- a/redisson/src/main/java/org/redisson/rx/RedissonKeysRx.java +++ b/redisson/src/main/java/org/redisson/rx/RedissonKeysRx.java @@ -42,6 +42,14 @@ public class RedissonKeysRx { this.commandExecutor = commandExecutor; } + public Flowable getKeys() { + return getKeysByPattern(null); + } + + public Flowable getKeys(int count) { + return getKeysByPattern(null, count); + } + public Flowable getKeysByPattern(String pattern) { return getKeysByPattern(pattern, 10); } diff --git a/redisson/src/test/java/org/redisson/RedissonKeysReactiveTest.java b/redisson/src/test/java/org/redisson/RedissonKeysReactiveTest.java index ae5bebb96..b793a6c75 100644 --- a/redisson/src/test/java/org/redisson/RedissonKeysReactiveTest.java +++ b/redisson/src/test/java/org/redisson/RedissonKeysReactiveTest.java @@ -6,10 +6,22 @@ import static org.assertj.core.api.Assertions.*; import org.junit.Assert; import org.junit.Test; import org.redisson.api.RBucketReactive; +import org.redisson.api.RKeysReactive; +import org.redisson.api.RKeysRx; import org.redisson.api.RMapReactive; +import reactor.core.publisher.Flux; public class RedissonKeysReactiveTest extends BaseReactiveTest { + @Test + public void testGetKeys() { + RKeysReactive keys = redisson.getKeys(); + sync(redisson.getBucket("test1").set(1)); + sync(redisson.getBucket("test2").set(1)); + Flux k = keys.getKeys(); + assertThat(k.toIterable()).contains("test1", "test2"); + } + @Test public void testKeysIterablePattern() { sync(redisson.getBucket("test1").set("someValue")); diff --git a/redisson/src/test/java/org/redisson/rx/RedissonKeysRxTest.java b/redisson/src/test/java/org/redisson/rx/RedissonKeysRxTest.java index e7f7eed03..209865a32 100644 --- a/redisson/src/test/java/org/redisson/rx/RedissonKeysRxTest.java +++ b/redisson/src/test/java/org/redisson/rx/RedissonKeysRxTest.java @@ -1,16 +1,28 @@ package org.redisson.rx; -import static org.assertj.core.api.Assertions.assertThat; - -import java.util.Iterator; - +import io.reactivex.Flowable; import org.junit.Assert; import org.junit.Test; import org.redisson.api.RBucketRx; +import org.redisson.api.RKeysRx; import org.redisson.api.RMapRx; +import reactor.core.publisher.Flux; + +import java.util.Iterator; + +import static org.assertj.core.api.Assertions.assertThat; public class RedissonKeysRxTest extends BaseRxTest { + @Test + public void testGetKeys() { + RKeysRx keys = redisson.getKeys(); + sync(redisson.getBucket("test1").set(1)); + sync(redisson.getBucket("test2").set(1)); + Flowable k = keys.getKeys(); + assertThat(k.blockingIterable()).contains("test1", "test2"); + } + @Test public void testKeysIterablePattern() { sync(redisson.getBucket("test1").set("someValue"));