public class InMemoryDelayedDeliveryTracker extends Object implements DelayedDeliveryTracker, io.netty.util.TimerTask
| Modifier and Type | Method and Description |
|---|---|
boolean |
addMessage(long ledgerId,
long entryId,
long deliveryAt)
Add a message to the tracker
|
void |
clear()
Clear all delayed messages from the tracker.
|
void |
close()
Close the subscription tracker and release all resources.
|
long |
getNumberOfDelayedMessages() |
Set<PositionImpl> |
getScheduledMessages(int maxMessages)
Get a set of position of messages that have already reached
|
boolean |
hasMessageAvailable()
Return true if there's at least a message that is scheduled to be delivered already
|
void |
resetTickTime(long tickTime)
Reset tick time use zk policies cache
|
void |
run(io.netty.util.Timeout timeout) |
public boolean addMessage(long ledgerId,
long entryId,
long deliveryAt)
DelayedDeliveryTrackeraddMessage in interface DelayedDeliveryTrackerledgerId - the ledgerIdentryId - the entryIddeliveryAt - the absolute timestamp at which the message should be trackedpublic boolean hasMessageAvailable()
hasMessageAvailable in interface DelayedDeliveryTrackerpublic Set<PositionImpl> getScheduledMessages(int maxMessages)
getScheduledMessages in interface DelayedDeliveryTrackerpublic void resetTickTime(long tickTime)
DelayedDeliveryTrackerresetTickTime in interface DelayedDeliveryTrackertickTime - The tick time for when retrying on delayed delivery messagespublic void clear()
DelayedDeliveryTrackerclear in interface DelayedDeliveryTrackerpublic long getNumberOfDelayedMessages()
getNumberOfDelayedMessages in interface DelayedDeliveryTrackerpublic void run(io.netty.util.Timeout timeout)
throws Exception
run in interface io.netty.util.TimerTaskExceptionpublic void close()
DelayedDeliveryTrackerclose in interface AutoCloseableclose in interface DelayedDeliveryTrackerCopyright © 2017–2021 Apache Software Foundation. All rights reserved.