diff --git a/src/main/java/org/springframework/data/redis/core/ScanOptions.java b/src/main/java/org/springframework/data/redis/core/ScanOptions.java index 0cb9d07b6..c7b9b6ff4 100644 --- a/src/main/java/org/springframework/data/redis/core/ScanOptions.java +++ b/src/main/java/org/springframework/data/redis/core/ScanOptions.java @@ -19,20 +19,27 @@ import org.springframework.lang.Nullable; import org.springframework.util.StringUtils; /** - * Options to be used for with {@literal SCAN} command. + * Options to be used for with {@literal SCAN} commands. * * @author Christoph Strobl * @author Thomas Darimont + * @author Mark Paluch * @since 1.4 */ public class ScanOptions { - public static ScanOptions NONE = new ScanOptions(); + /** + * Constant to apply default {@link ScanOptions} without setting a limit or matching a pattern. + */ + public static ScanOptions NONE = new ScanOptions(null, null); - private @Nullable Long count; - private @Nullable String pattern; + private final @Nullable Long count; + private final @Nullable String pattern; - private ScanOptions() {} + private ScanOptions(@Nullable Long count, @Nullable String pattern) { + this.count = count; + this.pattern = pattern; + } /** * Static factory method that returns a new {@link ScanOptionsBuilder}. @@ -73,15 +80,14 @@ public class ScanOptions { /** * @author Christoph Strobl + * @author Mark Paluch * @since 1.4 */ public static class ScanOptionsBuilder { - ScanOptions options; + private @Nullable Long count; + private @Nullable String pattern; - public ScanOptionsBuilder() { - options = new ScanOptions(); - } /** * Returns the current {@link ScanOptionsBuilder} configured with the given {@code count}. @@ -90,7 +96,7 @@ public class ScanOptions { * @return */ public ScanOptionsBuilder count(long count) { - options.count = count; + this.count = count; return this; } @@ -101,14 +107,17 @@ public class ScanOptions { * @return */ public ScanOptionsBuilder match(String pattern) { - options.pattern = pattern; + this.pattern = pattern; return this; } + /** + * Builds a new {@link ScanOptions} objects. + * + * @return a new {@link ScanOptions} objects. + */ public ScanOptions build() { - return options; + return new ScanOptions(count, pattern); } - } - } diff --git a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveHashCommandsTests.java b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveHashCommandsTests.java index 839fcd780..b88544ae7 100644 --- a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveHashCommandsTests.java +++ b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveHashCommandsTests.java @@ -31,6 +31,8 @@ import org.junit.Test; import org.springframework.data.redis.core.ScanOptions; /** + * Integration tests for {@link LettuceReactiveHashCommands}. + * * @author Christoph Strobl * @author Mark Paluch */ diff --git a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveSetCommandsTests.java b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveSetCommandsTests.java index 9484f97bf..ecde1618a 100644 --- a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveSetCommandsTests.java +++ b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveSetCommandsTests.java @@ -29,6 +29,12 @@ import java.util.Arrays; import org.junit.Test; import org.springframework.data.redis.core.ScanOptions; +/** + * Integration tests for {@link LettuceReactiveSetCommands}. + * + * @author Christoph Strobl + * @author Mark Paluch + */ public class LettuceReactiveSetCommandsTests extends LettuceReactiveCommandsTestsBase { @Test // DATAREDIS-525 diff --git a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveZSetCommandsTests.java b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveZSetCommandsTests.java index 79f3e3472..35feaafea 100644 --- a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveZSetCommandsTests.java +++ b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceReactiveZSetCommandsTests.java @@ -31,6 +31,8 @@ import org.springframework.data.redis.connection.DefaultTuple; import org.springframework.data.redis.core.ScanOptions; /** + * Integration tests for {@link LettuceReactiveZSetCommands}. + * * @author Christoph Strobl * @author Mark Paluch */