public byte[][] getByteParams(byte[] key, byte[]... args) { ArrayList<byte[]> byteParams = new ArrayList<byte[]>(); byteParams.add(key); if (contains(NX)) { byteParams.add(SafeEncoder.encode(NX)); } if (contains(XX)) { byteParams.add(SafeEncoder.encode(XX)); } if (contains(CH)) { byteParams.add(SafeEncoder.encode(CH)); } for (byte[] arg : args) { byteParams.add(arg); } return byteParams.toArray(new byte[byteParams.size()][]); }
public Long zaddnx(String key, double score, String member) { ZAddParams params = ZAddParams.zAddParams().nx(); Long retVal = dynoClient.zadd(key, score, member, params); return retVal; }
public static ZAddParams zAddParams() { return new ZAddParams(); }
public Long zupdate(String key, double score, String value) { return jedisCluster.zadd(key, score, value,ZAddParams.zAddParams().xx()); }
@Test public void testZadd() { jedisCluster.zadd("key", new HashMap<>()); jedisCluster.zadd("key", new HashMap<>(), ZAddParams.zAddParams()); jedisCluster.zadd("key", 1337, "members"); jedisCluster.zadd("key", 1337, "members", ZAddParams.zAddParams()); }
/** * Modify the return value from the number of new elements added to the total number of elements * changed * @return ZAddParams */ public ZAddParams ch() { addParam(CH); return this; }
@Override public boolean setTimeout(String messageId, long timeout) { return execute("setTimeout", "(a shard in) " + queueName, () -> { String json = nonQuorumConn.hget(messageStoreKey, messageId); if(json == null) { return false; } Message message = om.readValue(json, Message.class); message.setTimeout(timeout); for (String shard : allShards) { String queueShard = getQueueShardKey(queueName, shard); Double score = quorumConn.zscore(queueShard, messageId); if(score != null) { double priorityd = message.getPriority() / 100; double newScore = Long.valueOf(clock.millis() + timeout).doubleValue() + priorityd; ZAddParams params = ZAddParams.zAddParams().xx(); quorumConn.zadd(queueShard, newScore, messageId, params); json = om.writeValueAsString(message); quorumConn.hset(messageStoreKey, message.getId(), json); return true; } } return false; }); }
/** * Only set the key if it does not already exist. * @return ZAddParams */ public ZAddParams nx() { addParam(NX); return this; }
public Long zaddnx(String key, double score, String member) { ZAddParams params = ZAddParams.zAddParams().nx(); Long retVal = dynoClient.zadd(key, score, member, params); return retVal; }
@Override public Long zadd(String key, double score, String member, ZAddParams params) { try { if(params.contains("xx")) { Double existing = redis.zscore(key, member); if(existing == null) { return 0L; } return redis.zadd(key, new ZsetPair(member, score)); }else { return redis.zadd(key, new ZsetPair(member, score)); } } catch (Exception e) { throw new JedisException(e); } }
/** * Only set the key if it already exist. * @return ZAddParams */ public ZAddParams xx() { addParam(XX); return this; }
ZAddParams zParams = ZAddParams.zAddParams().nx();
@Override public Long zadd(String key, double score, String member, ZAddParams params) { try { if(params.contains("xx")) { Double existing = redis.zscore(key, member); if(existing == null) { return 0L; } return redis.zadd(key, new ZsetPair(member, score)); }else { return redis.zadd(key, new ZsetPair(member, score)); } } catch (Exception e) { throw new JedisException(e); } }
ZAddParams zParams = ZAddParams.zAddParams().nx();
@Override public Long zadd(String key, double score, String member, ZAddParams params) { try { if(params.contains("xx")) { Double existing = redis.zscore(key, member); if(existing == null) { return 0L; } return redis.zadd(key, new ZsetPair(member, score)); }else { return redis.zadd(key, new ZsetPair(member, score)); } } catch (Exception e) { throw new JedisException(e); } }
@Override public Long zadd(String key, double score, String member, ZAddParams params) { try { if(params.contains("xx")) { Double existing = redis.zscore(key, member); if(existing == null) { return 0L; } redis.zadd(key, new ZsetPair(member, score)); return 1L; }else { return redis.zadd(key, new ZsetPair(member, score)); } } catch (Exception e) { throw new JedisException(e); } }