public class RedisDynoQueue
extends java.lang.Object
implements com.netflix.dyno.queues.DynoQueue
| Constructor and Description |
|---|
RedisDynoQueue(java.time.Clock clock,
java.lang.String redisKeyPrefix,
java.lang.String queueName,
java.util.Set<java.lang.String> allShards,
java.lang.String shardName,
int unackScheduleInMS,
ShardingStrategy shardingStrategy,
boolean singleRingTopology) |
RedisDynoQueue(java.lang.String redisKeyPrefix,
java.lang.String queueName,
java.util.Set<java.lang.String> allShards,
java.lang.String shardName,
int unackScheduleInMS,
ShardingStrategy shardingStrategy,
boolean singleRingTopology) |
RedisDynoQueue(java.lang.String redisKeyPrefix,
java.lang.String queueName,
java.util.Set<java.lang.String> allShards,
java.lang.String shardName,
ShardingStrategy shardingStrategy,
boolean singleRingTopology) |
| Modifier and Type | Method and Description |
|---|---|
void |
ack(java.util.List<com.netflix.dyno.queues.Message> messages) |
boolean |
ack(java.lang.String messageId) |
void |
atomicProcessUnacks() |
boolean |
atomicRemove(java.lang.String messageId) |
java.util.List<com.netflix.dyno.queues.Message> |
bulkPop(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit) |
void |
clear() |
void |
close() |
boolean |
containsPredicate(java.lang.String predicate) |
boolean |
containsPredicate(java.lang.String predicate,
boolean localShardOnly) |
boolean |
ensure(com.netflix.dyno.queues.Message message) |
java.util.List<com.netflix.dyno.queues.Message> |
findStaleMessages() |
com.netflix.dyno.queues.Message |
get(java.lang.String messageId) |
java.util.List<com.netflix.dyno.queues.Message> |
getAllMessages() |
java.lang.String |
getMsgWithPredicate(java.lang.String predicate) |
java.lang.String |
getMsgWithPredicate(java.lang.String predicate,
boolean localShardOnly) |
java.lang.String |
getName() |
int |
getUnackTime() |
com.netflix.dyno.queues.Message |
localGet(java.lang.String messageId) |
java.util.List<com.netflix.dyno.queues.Message> |
peek(int messageCount) |
java.util.List<com.netflix.dyno.queues.Message> |
pop(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit) |
com.netflix.dyno.queues.Message |
popMsgWithPredicate(java.lang.String predicate,
boolean localShardOnly) |
com.netflix.dyno.queues.Message |
popWithMsgId(java.lang.String messageId) |
com.netflix.dyno.queues.Message |
popWithMsgIdHelper(java.lang.String messageId,
java.lang.String targetShard,
boolean warnIfNotExists) |
void |
processUnacks() |
java.util.List<java.lang.String> |
push(java.util.List<com.netflix.dyno.queues.Message> messages) |
boolean |
remove(java.lang.String messageId) |
boolean |
setTimeout(java.lang.String messageId,
long timeout) |
boolean |
setUnackTimeout(java.lang.String messageId,
long timeout) |
java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Long>> |
shardSizes() |
long |
size() |
java.util.List<com.netflix.dyno.queues.Message> |
unsafeBulkPop(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit) |
java.util.List<com.netflix.dyno.queues.Message> |
unsafePeekAllShards(int messageCount) |
java.util.List<com.netflix.dyno.queues.Message> |
unsafePopAllShards(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit) |
com.netflix.dyno.queues.Message |
unsafePopWithMsgIdAllShards(java.lang.String messageId) |
RedisDynoQueue |
withNonQuorumConn(redis.clients.jedis.commands.JedisCommands nonQuorumConn) |
RedisDynoQueue |
withQuorumConn(redis.clients.jedis.commands.JedisCommands quorumConn) |
RedisDynoQueue |
withUnackTime(int unackTime) |
public RedisDynoQueue(java.lang.String redisKeyPrefix,
java.lang.String queueName,
java.util.Set<java.lang.String> allShards,
java.lang.String shardName,
ShardingStrategy shardingStrategy,
boolean singleRingTopology)
public RedisDynoQueue(java.lang.String redisKeyPrefix,
java.lang.String queueName,
java.util.Set<java.lang.String> allShards,
java.lang.String shardName,
int unackScheduleInMS,
ShardingStrategy shardingStrategy,
boolean singleRingTopology)
public RedisDynoQueue(java.time.Clock clock,
java.lang.String redisKeyPrefix,
java.lang.String queueName,
java.util.Set<java.lang.String> allShards,
java.lang.String shardName,
int unackScheduleInMS,
ShardingStrategy shardingStrategy,
boolean singleRingTopology)
public RedisDynoQueue withQuorumConn(redis.clients.jedis.commands.JedisCommands quorumConn)
public RedisDynoQueue withNonQuorumConn(redis.clients.jedis.commands.JedisCommands nonQuorumConn)
public RedisDynoQueue withUnackTime(int unackTime)
public java.lang.String getName()
getName in interface com.netflix.dyno.queues.DynoQueuepublic int getUnackTime()
getUnackTime in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<java.lang.String> push(java.util.List<com.netflix.dyno.queues.Message> messages)
push in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> peek(int messageCount)
peek in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> unsafePeekAllShards(int messageCount)
unsafePeekAllShards in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> pop(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit)
pop in interface com.netflix.dyno.queues.DynoQueuepublic com.netflix.dyno.queues.Message popWithMsgId(java.lang.String messageId)
popWithMsgId in interface com.netflix.dyno.queues.DynoQueuepublic com.netflix.dyno.queues.Message unsafePopWithMsgIdAllShards(java.lang.String messageId)
unsafePopWithMsgIdAllShards in interface com.netflix.dyno.queues.DynoQueuepublic com.netflix.dyno.queues.Message popWithMsgIdHelper(java.lang.String messageId,
java.lang.String targetShard,
boolean warnIfNotExists)
public java.util.List<com.netflix.dyno.queues.Message> unsafePopAllShards(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit)
unsafePopAllShards in interface com.netflix.dyno.queues.DynoQueuepublic boolean ack(java.lang.String messageId)
ack in interface com.netflix.dyno.queues.DynoQueuepublic void ack(java.util.List<com.netflix.dyno.queues.Message> messages)
ack in interface com.netflix.dyno.queues.DynoQueuepublic boolean setUnackTimeout(java.lang.String messageId,
long timeout)
setUnackTimeout in interface com.netflix.dyno.queues.DynoQueuepublic boolean setTimeout(java.lang.String messageId,
long timeout)
setTimeout in interface com.netflix.dyno.queues.DynoQueuepublic boolean remove(java.lang.String messageId)
remove in interface com.netflix.dyno.queues.DynoQueuepublic boolean atomicRemove(java.lang.String messageId)
atomicRemove in interface com.netflix.dyno.queues.DynoQueuepublic boolean ensure(com.netflix.dyno.queues.Message message)
ensure in interface com.netflix.dyno.queues.DynoQueuepublic boolean containsPredicate(java.lang.String predicate)
containsPredicate in interface com.netflix.dyno.queues.DynoQueuepublic java.lang.String getMsgWithPredicate(java.lang.String predicate)
getMsgWithPredicate in interface com.netflix.dyno.queues.DynoQueuepublic boolean containsPredicate(java.lang.String predicate,
boolean localShardOnly)
containsPredicate in interface com.netflix.dyno.queues.DynoQueuepublic java.lang.String getMsgWithPredicate(java.lang.String predicate,
boolean localShardOnly)
getMsgWithPredicate in interface com.netflix.dyno.queues.DynoQueuepublic com.netflix.dyno.queues.Message popMsgWithPredicate(java.lang.String predicate,
boolean localShardOnly)
popMsgWithPredicate in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> bulkPop(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit)
bulkPop in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> unsafeBulkPop(int messageCount,
int wait,
java.util.concurrent.TimeUnit unit)
unsafeBulkPop in interface com.netflix.dyno.queues.DynoQueuepublic com.netflix.dyno.queues.Message get(java.lang.String messageId)
get in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> getAllMessages()
getAllMessages in interface com.netflix.dyno.queues.DynoQueuepublic com.netflix.dyno.queues.Message localGet(java.lang.String messageId)
localGet in interface com.netflix.dyno.queues.DynoQueuepublic long size()
size in interface com.netflix.dyno.queues.DynoQueuepublic java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Long>> shardSizes()
shardSizes in interface com.netflix.dyno.queues.DynoQueuepublic void clear()
clear in interface com.netflix.dyno.queues.DynoQueuepublic void processUnacks()
processUnacks in interface com.netflix.dyno.queues.DynoQueuepublic java.util.List<com.netflix.dyno.queues.Message> findStaleMessages()
findStaleMessages in interface com.netflix.dyno.queues.DynoQueuepublic void atomicProcessUnacks()
atomicProcessUnacks in interface com.netflix.dyno.queues.DynoQueuepublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseablejava.io.IOException