getCsetValue() {
return csetValue;
}
diff --git a/src/main/java/org/redkale/source/CacheScoredValue.java b/src/main/java/org/redkale/source/CacheScoredValue.java
new file mode 100644
index 000000000..9dc1ea3e8
--- /dev/null
+++ b/src/main/java/org/redkale/source/CacheScoredValue.java
@@ -0,0 +1,102 @@
+/*
+ *
+ */
+package org.redkale.source;
+
+import java.io.Serializable;
+import java.util.Objects;
+import org.redkale.convert.ConvertColumn;
+
+/**
+ *
+ * 有序集合的对象类
+ *
+ *
+ * 详情见: https://redkale.org
+ *
+ * @author zhangjx
+ * @param 分数
+ *
+ * @since 2.8.0
+ */
+public interface CacheScoredValue extends Serializable, Comparable {
+
+ public S getScore();
+
+ public String getValue();
+
+ public static NumberScoredValue create(Number score, String value) {
+ return new NumberScoredValue(score, value);
+ }
+
+ public static final class NumberScoredValue implements CacheScoredValue {
+
+ @ConvertColumn(index = 1)
+ private Number score;
+
+ @ConvertColumn(index = 2)
+ private String value;
+
+ public NumberScoredValue(Number score, String value) {
+ Objects.requireNonNull(score);
+ Objects.requireNonNull(value);
+ this.score = score;
+ this.value = value;
+ }
+
+ public NumberScoredValue(CacheScoredValue scoredValue) {
+ this.score = scoredValue.getScore();
+ this.value = scoredValue.getValue();
+ }
+
+ @Override
+ public Number getScore() {
+ return score;
+ }
+
+ @Override
+ public String getValue() {
+ return value;
+ }
+
+ public void setScore(Long score) {
+ this.score = score;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ @Override
+ public int compareTo(CacheScoredValue o) {
+ return ((Comparable) this.score).compareTo((Number) o.getScore());
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hashCode(this.value);
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final NumberScoredValue other = (NumberScoredValue) obj;
+ return Objects.equals(this.value, other.value);
+ }
+
+ @Override
+ public String toString() {
+ return "{score:" + score + ", value:" + value + "}";
+ }
+
+ }
+
+}
diff --git a/src/main/java/org/redkale/source/CacheSource.java b/src/main/java/org/redkale/source/CacheSource.java
index e4a43bb79..899064eb6 100644
--- a/src/main/java/org/redkale/source/CacheSource.java
+++ b/src/main/java/org/redkale/source/CacheSource.java
@@ -37,33 +37,33 @@ public interface CacheSource extends Resourcable {
}
//------------------------ get ------------------------
- default T get(final String key, final Type type) {
+ default T get(String key, Type type) {
return (T) getAsync(key, type).join();
}
- default String getString(final String key) {
+ default String getString(String key) {
return get(key, String.class);
}
- default long getLong(final String key, long defValue) {
+ default long getLong(String key, long defValue) {
Long val = get(key, Long.class);
return val == null ? defValue : val;
}
//------------------------ mget ------------------------
- default Map mget(final Type componentType, final String... keys) {
+ default Map mget(Type componentType, String... keys) {
return (Map) mgetAsync(componentType, keys).join();
}
- default Map mgetString(final String... keys) {
+ default Map mgetString(String... keys) {
return mget(String.class, keys);
}
- default Map mgetLong(final String... keys) {
+ default Map mgetLong(String... keys) {
return mget(Long.class, keys);
}
- default T[] mgets(final Type componentType, final String... keys) {
+ default T[] mgets(Type componentType, String... keys) {
T[] rs = (T[]) Creator.newArray(TypeToken.typeToClass(componentType), keys.length);
Map map = mget(componentType, keys);
for (int i = 0; i < keys.length; i++) {
@@ -72,7 +72,7 @@ public interface CacheSource extends Resourcable {
return rs;
}
- default String[] mgetsString(final String... keys) {
+ default String[] mgetsString(String... keys) {
String[] rs = new String[keys.length];
Map map = mgetString(keys);
for (int i = 0; i < keys.length; i++) {
@@ -81,7 +81,7 @@ public interface CacheSource extends Resourcable {
return rs;
}
- default Long[] mgetsLong(final String... keys) {
+ default Long[] mgetsLong(String... keys) {
Long[] rs = new Long[keys.length];
Map map = mgetLong(keys);
for (int i = 0; i < keys.length; i++) {
@@ -91,124 +91,124 @@ public interface CacheSource extends Resourcable {
}
//------------------------ getex ------------------------
- default T getex(final String key, final int expireSeconds, final Type type) {
+ default T getex(String key, int expireSeconds, Type type) {
return (T) getexAsync(key, expireSeconds, type).join();
}
- default String getexString(final String key, final int expireSeconds) {
+ default String getexString(String key, int expireSeconds) {
return getex(key, expireSeconds, String.class);
}
- default long getexLong(final String key, final int expireSeconds, long defValue) {
+ default long getexLong(String key, int expireSeconds, long defValue) {
Long val = getex(key, expireSeconds, Long.class);
return val == null ? defValue : val;
}
//------------------------ getset ------------------------
- default T getSet(final String key, final Convert convert, final Type type, final T value) {
+ default T getSet(String key, Convert convert, Type type, T value) {
return getSetAsync(key, convert, type, value).join();
}
- default T getSet(final String key, final Type type, final T value) {
+ default T getSet(String key, Type type, T value) {
return getSet(key, (Convert) null, type, value);
}
- default String getSetString(final String key, final String value) {
+ default String getSetString(String key, String value) {
return getSet(key, String.class, value);
}
- default long getSetLong(final String key, long value, long defValue) {
+ default long getSetLong(String key, long value, long defValue) {
Long val = getSet(key, Long.class, value);
return val == null ? defValue : val;
}
//------------------------ set ------------------------
//MSET key value [key value ...]
- default void mset(final Serializable... keyVals) {
+ default void mset(Serializable... keyVals) {
msetAsync(keyVals).join();
}
- default void mset(final Map map) {
+ default void mset(Map map) {
msetAsync(map).join();
}
- default void set(final String key, final Convert convert, final Type type, final T value) {
+ default void set(String key, Convert convert, Type type, T value) {
setAsync(key, convert, type, value).join();
}
- default void set(final String key, final Type type, final T value) {
+ default void set(String key, Type type, T value) {
set(key, (Convert) null, type, value);
}
- default void setString(final String key, final String value) {
+ default void setString(String key, String value) {
set(key, String.class, value);
}
- default void setLong(final String key, final long value) {
+ default void setLong(String key, long value) {
set(key, Long.class, value);
}
//------------------------ setnx ------------------------
- default boolean setnx(final String key, final Convert convert, final Type type, final T value) {
+ default boolean setnx(String key, Convert convert, Type type, T value) {
return setnxAsync(key, convert, type, value).join();
}
- default boolean setnx(final String key, final Type type, final T value) {
+ default boolean setnx(String key, Type type, T value) {
return setnx(key, (Convert) null, type, value);
}
- default boolean setnxString(final String key, final String value) {
+ default boolean setnxString(String key, String value) {
return setnx(key, String.class, value);
}
- default boolean setnxLong(final String key, final long value) {
+ default boolean setnxLong(String key, long value) {
return setnx(key, Long.class, value);
}
//------------------------ setnxex ------------------------
- default boolean setnxex(final String key, final int expireSeconds, final Convert convert, final Type type, final T value) {
+ default boolean setnxex(String key, int expireSeconds, Convert convert, Type type, T value) {
return setnxexAsync(key, expireSeconds, convert, type, value).join();
}
- default boolean setnxex(final String key, final int expireSeconds, final Type type, final T value) {
+ default boolean setnxex(String key, int expireSeconds, Type type, T value) {
return setnxex(key, expireSeconds, (Convert) null, type, value);
}
- default boolean setnxexString(final String key, final int expireSeconds, final String value) {
+ default boolean setnxexString(String key, int expireSeconds, String value) {
return setnxex(key, expireSeconds, String.class, value);
}
- default boolean setnxexLong(final String key, final int expireSeconds, final long value) {
+ default boolean setnxexLong(String key, int expireSeconds, long value) {
return setnxex(key, expireSeconds, Long.class, value);
}
//------------------------ setex ------------------------
- default void setex(final String key, final int expireSeconds, final Convert convert, final Type type, final T value) {
+ default void setex(String key, int expireSeconds, Convert convert, Type type, T value) {
setexAsync(key, expireSeconds, convert, type, value).join();
}
- default void setex(final String key, final int expireSeconds, final Type type, final T value) {
+ default void setex(String key, int expireSeconds, Type type, T value) {
setex(key, expireSeconds, (Convert) null, type, value);
}
- default void setexString(final String key, final int expireSeconds, final String value) {
+ default void setexString(String key, int expireSeconds, String value) {
setex(key, expireSeconds, String.class, value);
}
- default void setexLong(final String key, final int expireSeconds, final long value) {
+ default void setexLong(String key, int expireSeconds, long value) {
setex(key, expireSeconds, Long.class, value);
}
//------------------------ xxxx ------------------------
- default boolean exists(final String key) {
+ default boolean exists(String key) {
return existsAsync(key).join();
}
- default void expire(final String key, final int expireSeconds) {
+ default void expire(String key, int expireSeconds) {
expireAsync(key, expireSeconds).join();
}
- default boolean persist(final String key) {
+ default boolean persist(String key) {
return persistAsync(key).join();
}
@@ -220,27 +220,27 @@ public interface CacheSource extends Resourcable {
return renamenxAsync(oldKey, newKey).join();
}
- default long del(final String... keys) {
+ default long del(String... keys) {
return delAsync(keys).join();
}
- default long incr(final String key) {
+ default long incr(String key) {
return incrAsync(key).join();
}
- default long incrby(final String key, long num) {
+ default long incrby(String key, long num) {
return incrbyAsync(key, num).join();
}
- default double incrbyFloat(final String key, double num) {
+ default double incrbyFloat(String key, double num) {
return incrbyFloatAsync(key, num).join();
}
- default long decr(final String key) {
+ default long decr(String key) {
return decrAsync(key).join();
}
- default long decrby(final String key, long num) {
+ default long decrby(String key, long num) {
return decrbyAsync(key, num).join();
}
@@ -279,460 +279,517 @@ public interface CacheSource extends Resourcable {
}
//------------------------ 哈希表 Hash ------------------------
- default long hdel(final String key, String... fields) {
+ default long hdel(String key, String... fields) {
return hdelAsync(key, fields).join();
}
- default List hkeys(final String key) {
+ default List hkeys(String key) {
return hkeysAsync(key).join();
}
- default long hlen(final String key) {
+ default long hlen(String key) {
return hlenAsync(key).join();
}
- default long hincr(final String key, String field) {
+ default long hincr(String key, String field) {
return hincrAsync(key, field).join();
}
- default long hincrby(final String key, String field, long num) {
+ default long hincrby(String key, String field, long num) {
return hincrbyAsync(key, field, num).join();
}
- default double hincrbyFloat(final String key, String field, double num) {
+ default double hincrbyFloat(String key, String field, double num) {
return hincrbyFloatAsync(key, field, num).join();
}
- default long hdecr(final String key, String field) {
+ default long hdecr(String key, String field) {
return hdecrAsync(key, field).join();
}
- default long hdecrby(final String key, String field, long num) {
+ default long hdecrby(String key, String field, long num) {
return hdecrbyAsync(key, field, num).join();
}
- default boolean hexists(final String key, String field) {
+ default boolean hexists(String key, String field) {
return hexistsAsync(key, field).join();
}
- default void hmset(final String key, final Serializable... values) {
+ default void hmset(String key, Serializable... values) {
hmsetAsync(key, values).join();
}
- default void hmset(final String key, final Map map) {
+ default void hmset(String key, Map map) {
hmsetAsync(key, map).join();
}
- default List hmget(final String key, final Type type, final String... fields) {
+ default List hmget(String key, Type type, String... fields) {
return (List) hmgetAsync(key, type, fields).join();
}
- default List hmgetString(final String key, final String... fields) {
+ default List hmgetString(String key, String... fields) {
return hmget(key, String.class, fields);
}
- default List hmgetLong(final String key, final String... fields) {
+ default List hmgetLong(String key, String... fields) {
return hmget(key, Long.class, fields);
}
- default Map hscan(final String key, final Type type, AtomicLong cursor, int limit, String pattern) {
+ default Map hscan(String key, Type type, AtomicLong cursor, int limit, String pattern) {
return (Map) hscanAsync(key, type, cursor, limit, pattern).join();
}
- default Map hscan(final String key, final Type type, AtomicLong cursor, int limit) {
+ default Map hscan(String key, Type type, AtomicLong cursor, int limit) {
return hscan(key, type, cursor, limit, null);
}
- default T hget(final String key, final String field, final Type type) {
+ default T hget(String key, String field, Type type) {
return (T) hgetAsync(key, field, type).join();
}
- default String hgetString(final String key, final String field) {
+ default String hgetString(String key, String field) {
return hget(key, field, String.class);
}
- default long hgetLong(final String key, final String field, long defValue) {
+ default long hgetLong(String key, String field, long defValue) {
Long val = hget(key, field, Long.class);
return val == null ? defValue : val;
}
- default void hset(final String key, final String field, final Convert convert, final Type type, final T value) {
+ default void hset(String key, String field, Convert convert, Type type, T value) {
hsetAsync(key, field, convert, type, value).join();
}
- default void hset(final String key, final String field, final Type type, final T value) {
+ default void hset(String key, String field, Type type, T value) {
hset(key, field, (Convert) null, type, value);
}
- default void hsetString(final String key, final String field, final String value) {
+ default void hsetString(String key, String field, String value) {
hset(key, field, String.class, value);
}
- default void hsetLong(final String key, final String field, final long value) {
+ default void hsetLong(String key, String field, long value) {
hset(key, field, Long.class, value);
}
- default boolean hsetnx(final String key, final String field, final Convert convert, final Type type, final T value) {
+ default boolean hsetnx(String key, String field, Convert convert, Type type, T value) {
return hsetnxAsync(key, field, convert, type, value).join();
}
- default boolean hsetnx(final String key, final String field, final Type type, final T value) {
+ default boolean hsetnx(String key, String field, Type type, T value) {
return hsetnx(key, field, (Convert) null, type, value);
}
- default boolean hsetnxString(final String key, final String field, final String value) {
+ default boolean hsetnxString(String key, String field, String value) {
return hsetnx(key, field, String.class, value);
}
- default boolean hsetnxLong(final String key, final String field, final long value) {
+ default boolean hsetnxLong(String key, String field, long value) {
return hsetnx(key, field, Long.class, value);
}
- default Map hgetall(final String key, final Type type) {
+ default Map hgetall(String key, Type type) {
return (Map) hgetallAsync(key, type).join();
}
- default Map hgetallString(final String key) {
+ default Map hgetallString(String key) {
return hgetall(key, String.class);
}
- default Map hgetallLong(final String key) {
+ default Map hgetallLong(String key) {
return hgetall(key, Long.class);
}
- default List hvals(final String key, final Type type) {
+ default List hvals(String key, Type type) {
return (List) hvalsAsync(key, type).join();
}
- default List hvalsString(final String key) {
+ default List hvalsString(String key) {
return hvals(key, String.class);
}
- default List hvalsLong(final String key) {
+ default List hvalsLong(String key) {
return hvals(key, Long.class);
}
//------------------------ 列表 List ------------------------
- default long llen(final String key) {
+ default long llen(String key) {
return llenAsync(key).join();
}
- default void ltrim(final String key, int start, int stop) {
+ default void ltrim(String key, int start, int stop) {
ltrimAsync(key, start, stop).join();
}
- default Map> lrange(final Type componentType, final String... keys) {
+ default Map> lrange(Type componentType, String... keys) {
return (Map) lrangeAsync(componentType, keys).join();
}
- default Map> lrangeString(final String... keys) {
+ default Map> lrangeString(String... keys) {
return lrange(String.class, keys);
}
- default Map> lrangeLong(final String... keys) {
+ default Map> lrangeLong(String... keys) {
return lrange(Long.class, keys);
}
- default List lrange(final String key, final Type componentType, int start, int stop) {
+ default List lrange(String key, Type componentType, int start, int stop) {
return (List) lrangeAsync(key, componentType, start, stop).join();
}
- default List lrangeString(final String key, int start, int stop) {
+ default List lrangeString(String key, int start, int stop) {
return lrange(key, String.class, start, stop);
}
- default List lrangeLong(final String key, int start, int stop) {
+ default List lrangeLong(String key, int start, int stop) {
return lrange(key, Long.class, start, stop);
}
- default List lrange(final String key, final Type componentType) {
+ default List lrange(String key, Type componentType) {
return lrange(key, componentType, 0, -1);
}
- default List lrangeString(final String key) {
+ default List lrangeString(String key) {
return lrange(key, String.class, 0, -1);
}
- default List lrangeLong(final String key) {
+ default List lrangeLong(String key) {
return lrange(key, Long.class, 0, -1);
}
- default T lpop(final String key, final Type componentType) {
+ default T lpop(String key, Type componentType) {
return (T) lpopAsync(key, componentType).join();
}
- default String lpopString(final String key) {
+ default String lpopString(String key) {
return lpop(key, String.class);
}
- default Long lpopLong(final String key) {
+ default Long lpopLong(String key) {
return lpop(key, Long.class);
}
- default void lpush(final String key, final Type componentType, T... values) {
+ default void lpush(String key, Type componentType, T... values) {
lpushAsync(key, componentType, values).join();
}
- default void lpushString(final String key, String... values) {
+ default void lpushString(String key, String... values) {
lpush(key, String.class, values);
}
- default void lpushLong(final String key, Long... values) {
+ default void lpushLong(String key, Long... values) {
lpush(key, Long.class, values);
}
- default void lpushx(final String key, final Type componentType, T... values) {
+ default void lpushx(String key, Type componentType, T... values) {
lpushxAsync(key, componentType, values).join();
}
- default void lpushxString(final String key, String... values) {
+ default void lpushxString(String key, String... values) {
lpushx(key, String.class, values);
}
- default void lpushxLong(final String key, Long... values) {
+ default void lpushxLong(String key, Long... values) {
lpushx(key, Long.class, values);
}
- default void rpushx(final String key, final Type componentType, T... values) {
+ default void rpushx(String key, Type componentType, T... values) {
rpushxAsync(key, componentType, values).join();
}
- default void rpushxString(final String key, String... values) {
+ default void rpushxString(String key, String... values) {
rpushx(key, String.class, values);
}
- default void rpushxLong(final String key, Long... values) {
+ default void rpushxLong(String key, Long... values) {
rpushx(key, Long.class, values);
}
- default T rpop(final String key, final Type componentType) {
+ default T rpop(String key, Type componentType) {
return (T) rpopAsync(key, componentType).join();
}
- default String rpopString(final String key) {
+ default String rpopString(String key) {
return rpop(key, String.class);
}
- default Long rpopLong(final String key) {
+ default Long rpopLong(String key) {
return rpop(key, Long.class);
}
- default T rpoplpush(final String key, final String key2, final Type componentType) {
+ default T rpoplpush(String key, String key2, Type componentType) {
return (T) rpoplpushAsync(key, key2, componentType).join();
}
- default String rpoplpushString(final String key, final String key2) {
+ default String rpoplpushString(String key, String key2) {
return rpoplpush(key, key2, String.class);
}
- default Long rpoplpushLong(final String key, final String key2) {
+ default Long rpoplpushLong(String key, String key2) {
return rpoplpush(key, key2, Long.class);
}
- default int lrem(final String key, final Type componentType, final T value) {
+ default int lrem(String key, Type componentType, T value) {
return lremAsync(key, componentType, value).join();
}
- default int lremString(final String key, final String value) {
+ default int lremString(String key, String value) {
return lrem(key, String.class, value);
}
- default int lremLong(final String key, final long value) {
+ default int lremLong(String key, long value) {
return lrem(key, Long.class, value);
}
- default void rpush(final String key, final Type componentType, final T... values) {
+ default void rpush(String key, Type componentType, T... values) {
rpushAsync(key, componentType, values).join();
}
- default void rpushString(final String key, final String... values) {
+ default void rpushString(String key, String... values) {
rpush(key, String.class, values);
}
- default void rpushLong(final String key, final Long... values) {
+ default void rpushLong(String key, Long... values) {
rpush(key, Long.class, values);
}
//------------------------ 集合 Set ------------------------
- default void sadd(final String key, final Type componentType, final T... values) {
+ default void sadd(String key, Type componentType, T... values) {
saddAsync(key, componentType, values).join();
}
- default void saddString(final String key, final String... values) {
+ default void saddString(String key, String... values) {
sadd(key, String.class, values);
}
- default void saddLong(final String key, final Long... values) {
+ default void saddLong(String key, Long... values) {
sadd(key, Long.class, values);
}
- default Set sdiff(final String key, final Type componentType, final String... key2s) {
+ default Set sdiff(String key, Type componentType, String... key2s) {
return (Set) sdiffAsync(key, componentType, key2s).join();
}
- default Set sdiffString(final String key, final String... key2s) {
+ default Set sdiffString(String key, String... key2s) {
return sdiff(key, String.class, key2s);
}
- default Set sdiffLong(final String key, final String... key2s) {
+ default Set sdiffLong(String key, String... key2s) {
return sdiff(key, Long.class, key2s);
}
- default long sdiffstore(final String key, final String srcKey, final String... srcKey2s) {
+ default long sdiffstore(String key, String srcKey, String... srcKey2s) {
return sdiffstoreAsync(key, srcKey, srcKey2s).join();
}
- default Set sinter(final String key, final Type componentType, final String... key2s) {
+ default Set sinter(String key, Type componentType, String... key2s) {
return (Set) sinterAsync(key, componentType, key2s).join();
}
- default Set sinterString(final String key, final String... key2s) {
+ default Set sinterString(String key, String... key2s) {
return sinter(key, String.class, key2s);
}
- default Set sinterLong(final String key, final String... key2s) {
+ default Set sinterLong(String key, String... key2s) {
return sinter(key, Long.class, key2s);
}
- default long sinterstore(final String key, final String srcKey, final String... srcKey2s) {
+ default long sinterstore(String key, String srcKey, String... srcKey2s) {
return sinterstoreAsync(key, srcKey, srcKey2s).join();
}
- default long scard(final String key) {
+ default long scard(String key) {
return scardAsync(key).join();
}
- default Set smembers(final String key, final Type componentType) {
+ default Set smembers(String key, Type componentType) {
return (Set) smembersAsync(key, componentType).join();
}
- default Set smembersString(final String key) {
+ default Set smembersString(String key) {
return smembers(key, String.class);
}
- default Set smembersLong(final String key) {
+ default Set smembersLong(String key) {
return smembers(key, Long.class);
}
- default Map> smembers(final Type componentType, final String... keys) {
+ default Map> smembers(Type componentType, String... keys) {
return (Map) smembersAsync(componentType, keys).join();
}
- default Map> smembersString(final String... keys) {
+ default Map> smembersString(String... keys) {
return smembers(String.class, keys);
}
- default Map> smembersLong(final String... keys) {
+ default Map> smembersLong(String... keys) {
return smembers(Long.class, keys);
}
- default boolean sismember(final String key, final Type componentType, final T value) {
+ default boolean sismember(String key, Type componentType, T value) {
return sismemberAsync(key, componentType, value).join();
}
- default boolean sismemberString(final String key, final String value) {
+ default boolean sismemberString(String key, String value) {
return sismember(key, String.class, value);
}
- default boolean sismemberLong(final String key, final long value) {
+ default boolean sismemberLong(String key, long value) {
return sismember(key, Long.class, value);
}
- default boolean smismember(final String key, final String member) {
+ default boolean smismember(String key, String member) {
List rs = smismembers(key, member);
return rs.get(0);
}
- default List smismembers(final String key, final String... members) {
+ default List smismembers(String key, String... members) {
return smismembersAsync(key, members).join();
}
- default long srem(final String key, final Type componentType, final T... values) {
+ default long srem(String key, Type componentType, T... values) {
return sremAsync(key, componentType, values).join();
}
- default long sremString(final String key, final String... values) {
+ default long sremString(String key, String... values) {
return srem(key, String.class, values);
}
- default long sremLong(final String key, final Long... values) {
+ default long sremLong(String key, Long... values) {
return srem(key, Long.class, values);
}
- default T spop(final String key, final Type componentType) {
+ default T spop(String key, Type componentType) {
return (T) spopAsync(key, componentType).join();
}
- default String spopString(final String key) {
+ default String spopString(String key) {
return spop(key, String.class);
}
- default Long spopLong(final String key) {
+ default Long spopLong(String key) {
return spop(key, Long.class);
}
- default Set spop(final String key, final int count, final Type componentType) {
+ default Set spop(String key, int count, Type componentType) {
return (Set) spopAsync(key, count, componentType).join();
}
- default Set spopString(final String key, final int count) {
+ default Set spopString(String key, int count) {
return spop(key, count, String.class);
}
- default Set spopLong(final String key, final int count) {
+ default Set spopLong(String key, int count) {
return spop(key, count, Long.class);
}
- default Set sscan(final String key, final Type componentType, AtomicLong cursor, int limit, String pattern) {
+ default Set sscan(String key, Type componentType, AtomicLong cursor, int limit, String pattern) {
return (Set) sscanAsync(key, componentType, cursor, limit, pattern).join();
}
- default Set sscanString(final String key, AtomicLong cursor, int limit, String pattern) {
+ default Set sscanString(String key, AtomicLong cursor, int limit, String pattern) {
return sscan(key, String.class, cursor, limit, pattern);
}
- default Set sscanLong(final String key, AtomicLong cursor, int limit, String pattern) {
+ default Set sscanLong(String key, AtomicLong cursor, int limit, String pattern) {
return sscan(key, Long.class, cursor, limit, pattern);
}
- default Set sscan(final String key, final Type componentType, AtomicLong cursor, int limit) {
+ default Set sscan(String key, Type componentType, AtomicLong cursor, int limit) {
return sscan(key, componentType, cursor, limit, null);
}
- default Set sscanString(final String key, AtomicLong cursor, int limit) {
+ default Set sscanString(String key, AtomicLong cursor, int limit) {
return sscan(key, String.class, cursor, limit, null);
}
- default Set sscanLong(final String key, AtomicLong cursor, int limit) {
+ default Set sscanLong(String key, AtomicLong cursor, int limit) {
return sscan(key, Long.class, cursor, limit, null);
}
+ //------------------------ 有序集合 Sorted Set ------------------------
+ default void zadd(String key, CacheScoredValue... values) {
+ zaddAsync(key, values).join();
+ }
+
+ default void zadd(String key, int score, String member) {
+ zadd(key, CacheScoredValue.create(score, member));
+ }
+
+ default void zadd(String key, long score, String member) {
+ zadd(key, CacheScoredValue.create(score, member));
+ }
+
+ default void zadd(String key, double score, String member) {
+ zadd(key, CacheScoredValue.create(score, member));
+ }
+
+ default long zrem(String key, String... members) {
+ return zremAsync(key, members).join();
+ }
+
+ default List zmscore(String key, Class scoreType, String... members) {
+ return zmscoreAsync(key, scoreType, members).join();
+ }
+
+ default List zmscoreInteger(String key, String... members) {
+ return zmscore(key, Integer.class, members);
+ }
+
+ default List zmscoreLong(String key, String... members) {
+ return zmscore(key, Long.class, members);
+ }
+
+ default List zmscoreDouble(String key, String... members) {
+ return zmscore(key, Double.class, members);
+ }
+
+ default