Skip to content

Commit 29b48eb

Browse files
committed
Mark new API as experimental
1 parent 9dcad73 commit 29b48eb

File tree

13 files changed

+48
-1
lines changed

13 files changed

+48
-1
lines changed

src/main/java/io/lettuce/core/ValueCondition.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
*/
2020
package io.lettuce.core;
2121

22+
import io.lettuce.core.annotations.Experimental;
23+
2224
/**
2325
* A compare condition to be used with commands that support conditional value checks (e.g. SET with IFEQ/IFNE/IFDEQ/IFDNE and
2426
* DELEX). This abstraction lets callers express value-based or digest-based comparisons without exploding method overloads.
@@ -28,8 +30,8 @@
2830
* </p>
2931
*
3032
* @param <V> value type used for value-based comparisons
31-
* @since 8.x
3233
*/
34+
@Experimental
3335
public final class ValueCondition<V> {
3436

3537
/**

src/main/java/io/lettuce/core/api/async/RedisKeyAsyncCommands.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import io.lettuce.core.SortArgs;
3636
import io.lettuce.core.StreamScanCursor;
3737
import io.lettuce.core.ValueCondition;
38+
import io.lettuce.core.annotations.Experimental;
3839
import io.lettuce.core.RedisFuture;
3940
import io.lettuce.core.output.KeyStreamingChannel;
4041
import io.lettuce.core.output.ValueStreamingChannel;
@@ -86,6 +87,7 @@ public interface RedisKeyAsyncCommands<K, V> {
8687
* @param condition the compare condition, must not be {@code null}.
8788
* @return Long integer-reply the number of keys that were removed.
8889
*/
90+
@Experimental
8991
RedisFuture<Long> delex(K key, ValueCondition<V> condition);
9092

9193
/**

src/main/java/io/lettuce/core/api/async/RedisStringAsyncCommands.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import io.lettuce.core.StrAlgoArgs;
3131
import io.lettuce.core.StringMatchResult;
3232
import io.lettuce.core.ValueCondition;
33+
import io.lettuce.core.annotations.Experimental;
3334
import io.lettuce.core.output.KeyValueStreamingChannel;
3435
import io.lettuce.core.RedisFuture;
3536

@@ -263,6 +264,7 @@ public interface RedisStringAsyncCommands<K, V> {
263264
* @param key the key.
264265
* @return String bulk-string-reply the hex digest of the key's value, or {@code null} when {@code key} does not exist.
265266
*/
267+
@Experimental
266268
RedisFuture<String> digestKey(K key);
267269

268270
/**
@@ -390,6 +392,7 @@ public interface RedisStringAsyncCommands<K, V> {
390392
* @param condition the compare condition, must not be {@code null}.
391393
* @return String simple-string-reply {@code OK} if {@code SET} was executed; {@code null} if the operation was aborted.
392394
*/
395+
@Experimental
393396
RedisFuture<String> set(K key, V value, ValueCondition<V> condition);
394397

395398
/**
@@ -401,6 +404,7 @@ public interface RedisStringAsyncCommands<K, V> {
401404
* @param condition the compare condition, must not be {@code null}.
402405
* @return String simple-string-reply {@code OK} if {@code SET} was executed; {@code null} if the operation was aborted.
403406
*/
407+
@Experimental
404408
RedisFuture<String> set(K key, V value, SetArgs setArgs, ValueCondition<V> condition);
405409

406410
/**
@@ -411,6 +415,7 @@ public interface RedisStringAsyncCommands<K, V> {
411415
* @param condition the compare condition, must not be {@code null}.
412416
* @return V bulk-string-reply the previous value if the key existed, or {@code null} when {@code key} did not exist.
413417
*/
418+
@Experimental
414419
RedisFuture<V> setGet(K key, V value, ValueCondition<V> condition);
415420

416421
/**
@@ -422,6 +427,7 @@ public interface RedisStringAsyncCommands<K, V> {
422427
* @param condition the compare condition, must not be {@code null}.
423428
* @return V bulk-string-reply the previous value if the key existed, or {@code null} when {@code key} did not exist.
424429
*/
430+
@Experimental
425431
RedisFuture<V> setGet(K key, V value, SetArgs setArgs, ValueCondition<V> condition);
426432

427433
/**

src/main/java/io/lettuce/core/api/reactive/RedisKeyReactiveCommands.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
import io.lettuce.core.SortArgs;
3535
import io.lettuce.core.StreamScanCursor;
3636
import io.lettuce.core.ValueCondition;
37+
import io.lettuce.core.annotations.Experimental;
3738
import io.lettuce.core.output.KeyStreamingChannel;
3839
import io.lettuce.core.output.ValueStreamingChannel;
3940
import reactor.core.publisher.Flux;
@@ -86,6 +87,7 @@ public interface RedisKeyReactiveCommands<K, V> {
8687
* @param condition the compare condition, must not be {@code null}.
8788
* @return Long integer-reply the number of keys that were removed.
8889
*/
90+
@Experimental
8991
Mono<Long> delex(K key, ValueCondition<V> condition);
9092

9193
/**

src/main/java/io/lettuce/core/api/reactive/RedisStringReactiveCommands.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import io.lettuce.core.StrAlgoArgs;
3030
import io.lettuce.core.StringMatchResult;
3131
import io.lettuce.core.ValueCondition;
32+
import io.lettuce.core.annotations.Experimental;
3233
import io.lettuce.core.output.KeyValueStreamingChannel;
3334
import io.lettuce.core.Value;
3435
import reactor.core.publisher.Flux;
@@ -264,6 +265,7 @@ public interface RedisStringReactiveCommands<K, V> {
264265
* @param key the key.
265266
* @return String bulk-string-reply the hex digest of the key's value, or {@code null} when {@code key} does not exist.
266267
*/
268+
@Experimental
267269
Mono<String> digestKey(K key);
268270

269271
/**
@@ -394,6 +396,7 @@ public interface RedisStringReactiveCommands<K, V> {
394396
* @param condition the compare condition, must not be {@code null}.
395397
* @return String simple-string-reply {@code OK} if {@code SET} was executed; {@code null} if the operation was aborted.
396398
*/
399+
@Experimental
397400
Mono<String> set(K key, V value, ValueCondition<V> condition);
398401

399402
/**
@@ -405,6 +408,7 @@ public interface RedisStringReactiveCommands<K, V> {
405408
* @param condition the compare condition, must not be {@code null}.
406409
* @return String simple-string-reply {@code OK} if {@code SET} was executed; {@code null} if the operation was aborted.
407410
*/
411+
@Experimental
408412
Mono<String> set(K key, V value, SetArgs setArgs, ValueCondition<V> condition);
409413

410414
/**
@@ -415,6 +419,7 @@ public interface RedisStringReactiveCommands<K, V> {
415419
* @param condition the compare condition, must not be {@code null}.
416420
* @return V bulk-string-reply the previous value if the key existed, or {@code null} when {@code key} did not exist.
417421
*/
422+
@Experimental
418423
Mono<V> setGet(K key, V value, ValueCondition<V> condition);
419424

420425
/**
@@ -426,6 +431,7 @@ public interface RedisStringReactiveCommands<K, V> {
426431
* @param condition the compare condition, must not be {@code null}.
427432
* @return V bulk-string-reply the previous value if the key existed, or {@code null} when {@code key} did not exist.
428433
*/
434+
@Experimental
429435
Mono<V> setGet(K key, V value, SetArgs setArgs, ValueCondition<V> condition);
430436

431437
/**

src/main/java/io/lettuce/core/api/sync/RedisKeyCommands.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import io.lettuce.core.SortArgs;
3636
import io.lettuce.core.StreamScanCursor;
3737
import io.lettuce.core.ValueCondition;
38+
import io.lettuce.core.annotations.Experimental;
3839
import io.lettuce.core.output.KeyStreamingChannel;
3940
import io.lettuce.core.output.ValueStreamingChannel;
4041

@@ -85,6 +86,7 @@ public interface RedisKeyCommands<K, V> {
8586
* @param condition the compare condition, must not be {@code null}.
8687
* @return Long integer-reply the number of keys that were removed.
8788
*/
89+
@Experimental
8890
Long delex(K key, ValueCondition<V> condition);
8991

9092
/**

src/main/java/io/lettuce/core/api/sync/RedisStringCommands.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import io.lettuce.core.StrAlgoArgs;
3131
import io.lettuce.core.StringMatchResult;
3232
import io.lettuce.core.ValueCondition;
33+
import io.lettuce.core.annotations.Experimental;
3334
import io.lettuce.core.output.KeyValueStreamingChannel;
3435

3536
/**
@@ -262,6 +263,7 @@ public interface RedisStringCommands<K, V> {
262263
* @param key the key.
263264
* @return String bulk-string-reply the hex digest of the key's value, or {@code null} when {@code key} does not exist.
264265
*/
266+
@Experimental
265267
String digestKey(K key);
266268

267269
/**
@@ -389,6 +391,7 @@ public interface RedisStringCommands<K, V> {
389391
* @param condition the compare condition, must not be {@code null}.
390392
* @return String simple-string-reply {@code OK} if {@code SET} was executed; {@code null} if the operation was aborted.
391393
*/
394+
@Experimental
392395
String set(K key, V value, ValueCondition<V> condition);
393396

394397
/**
@@ -400,6 +403,7 @@ public interface RedisStringCommands<K, V> {
400403
* @param condition the compare condition, must not be {@code null}.
401404
* @return String simple-string-reply {@code OK} if {@code SET} was executed; {@code null} if the operation was aborted.
402405
*/
406+
@Experimental
403407
String set(K key, V value, SetArgs setArgs, ValueCondition<V> condition);
404408

405409
/**
@@ -410,6 +414,7 @@ public interface RedisStringCommands<K, V> {
410414
* @param condition the compare condition, must not be {@code null}.
411415
* @return V bulk-string-reply the previous value if the key existed, or {@code null} when {@code key} did not exist.
412416
*/
417+
@Experimental
413418
V setGet(K key, V value, ValueCondition<V> condition);
414419

415420
/**
@@ -421,6 +426,7 @@ public interface RedisStringCommands<K, V> {
421426
* @param condition the compare condition, must not be {@code null}.
422427
* @return V bulk-string-reply the previous value if the key existed, or {@code null} when {@code key} did not exist.
423428
*/
429+
@Experimental
424430
V setGet(K key, V value, SetArgs setArgs, ValueCondition<V> condition);
425431

426432
/**

src/main/java/io/lettuce/core/cluster/api/async/NodeSelectionKeyAsyncCommands.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@
3333
import io.lettuce.core.SortArgs;
3434
import io.lettuce.core.StreamScanCursor;
3535
import io.lettuce.core.ValueCondition;
36+
import io.lettuce.core.KeyScanArgs;
37+
import io.lettuce.core.annotations.Experimental;
3638
import io.lettuce.core.output.KeyStreamingChannel;
3739
import io.lettuce.core.output.ValueStreamingChannel;
3840

@@ -83,6 +85,7 @@ public interface NodeSelectionKeyAsyncCommands<K, V> {
8385
* @param condition the compare condition, must not be {@code null}.
8486
* @return Long integer-reply the number of keys that were removed.
8587
*/
88+
@Experimental
8689
AsyncExecutions<Long> delex(K key, ValueCondition<V> condition);
8790

8891
/**

src/main/java/io/lettuce/core/cluster/api/sync/NodeSelectionKeyCommands.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@
3535
import io.lettuce.core.SortArgs;
3636
import io.lettuce.core.StreamScanCursor;
3737
import io.lettuce.core.ValueCondition;
38+
import io.lettuce.core.annotations.Experimental;
3839
import io.lettuce.core.output.KeyStreamingChannel;
3940
import io.lettuce.core.output.ValueStreamingChannel;
4041

@@ -85,6 +86,7 @@ public interface NodeSelectionKeyCommands<K, V> {
8586
* @param condition the compare condition, must not be {@code null}.
8687
* @return Long integer-reply the number of keys that were removed.
8788
*/
89+
@Experimental
8890
Executions<Long> delex(K key, ValueCondition<V> condition);
8991

9092
/**

src/main/kotlin/io/lettuce/core/api/coroutines/RedisKeyCoroutinesCommands.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import io.lettuce.core.ScanCursor
3535
import io.lettuce.core.SortArgs
3636
import io.lettuce.core.ValueCondition
3737
import io.lettuce.core.ExperimentalLettuceCoroutinesApi
38+
import io.lettuce.core.annotations.Experimental
3839
import kotlinx.coroutines.flow.Flow
3940

4041
/**
@@ -85,6 +86,7 @@ interface RedisKeyCoroutinesCommands<K : Any, V : Any> {
8586
* @param condition the compare condition, must not be `null`.
8687
* @return Long integer-reply the number of keys that were removed.
8788
*/
89+
@Experimental
8890
suspend fun delex(key: K, condition: ValueCondition<V>): Long?
8991

9092
/**

0 commit comments

Comments
 (0)