本文整理匯總了Java中redis.clients.jedis.Jedis.linsert方法的典型用法代碼示例。如果您正苦於以下問題:Java Jedis.linsert方法的具體用法?Java Jedis.linsert怎麽用?Java Jedis.linsert使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類redis.clients.jedis.Jedis
的用法示例。
在下文中一共展示了Jedis.linsert方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: addIndex
import redis.clients.jedis.Jedis; //導入方法依賴的package包/類
@Override
public boolean addIndex(String queueID, long index, ResourceItem e) {
if (!lockQueue(queueID)) {
return false;
}
remove(queueID, e.getKey());
Jedis jedis = jedisPool.getResource();
try {
String poolQueueKey = makePoolQueueKey(queueID);
Long length = jedis.llen(poolQueueKey);
if (index <= length) {
index = length - 1;
}
String position = jedis.lindex(makePoolQueueKey(queueID), index);
if (isNil(position)) {
jedis.rpush(poolQueueKey, e.getKey());
} else {
jedis.linsert(poolQueueKey, BinaryClient.LIST_POSITION.AFTER, position, e.getKey());
}
jedis.hset(makeDataKey(queueID), e.getKey(), JSONObject.toJSONString(e));
} finally {
IOUtils.closeQuietly(jedis);
unLockQueue(queueID);
}
return true;
}
示例2: linsert
import redis.clients.jedis.Jedis; //導入方法依賴的package包/類
@Override
public Long linsert(String key, LIST_POSITION where, String pivot, String value) {
Jedis jedis = null;
Long res = null;
try {
jedis = pool.getResource();
res = jedis.linsert(key, where, pivot, value);
} catch (Exception e) {
LOGGER.error(e.getMessage());
} finally {
returnResource(pool, jedis);
}
return res;
}
示例3: addIndex
import redis.clients.jedis.Jedis; //導入方法依賴的package包/類
@Override
public boolean addIndex(String queueID, long index, ResourceItem e) {
if (!lockQueue(queueID)) {
return false;
}
@Cleanup Jedis jedis = jedisPool.getResource();
try {
remove(queueID, e.getKey());
// block 從1開始計數
int block = blockID(index + 1);
List<String> sliceQueue = sliceQueue(queueID);
String sliceID;
if (block - 1 < sliceQueue.size()) {
sliceID = sliceQueue.get(block - 1);
} else {
// create a new slice
sliceID = String.valueOf(block);
if (!sliceQueue.contains(sliceID)) {
Preconditions.checkArgument(index <= size(queueID));
jedis.rpush(makeSliceQueueKey(queueID), sliceID);
} else {
sliceID = sliceQueue.get(sliceQueue.size() - 1);
}
}
String poolQueueKey = makePoolQueueKey(queueID, sliceID);
Long length = jedis.llen(poolQueueKey);
long offset = blockOffset(index);
if (offset <= length) {
offset = length - 1;
}
String position = jedis.lindex(makePoolQueueKey(queueID, sliceID), offset);
if (isNil(position)) {
jedis.rpush(poolQueueKey, e.getKey());
} else {
jedis.linsert(poolQueueKey, BinaryClient.LIST_POSITION.AFTER, position, e.getKey());
}
jedis.hset(makeDataKey(queueID), e.getKey(), JSONObject.toJSONString(e));
} finally {
unLockQueue(queueID);
}
return true;
}