Class DefaultRateLimitingQueue<T>
java.lang.Object
io.kubernetes.client.extended.workqueue.DefaultWorkQueue<T>
io.kubernetes.client.extended.workqueue.DefaultDelayingQueue<T>
io.kubernetes.client.extended.workqueue.DefaultRateLimitingQueue<T>
- All Implemented Interfaces:
DelayingQueue<T>
,RateLimitingQueue<T>
,WorkQueue<T>
public class DefaultRateLimitingQueue<T>
extends DefaultDelayingQueue<T>
implements RateLimitingQueue<T>
The default rate limiting queue implementation.
-
Field Summary
Fields inherited from class io.kubernetes.client.extended.workqueue.DefaultDelayingQueue
heartBeatInterval, waitingForAddQueue
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultRateLimitingQueue
(ExecutorService waitingWorker) DefaultRateLimitingQueue
(ExecutorService waitingWorker, RateLimiter<T> rateLimiter) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addRateLimited
(T item) addRateLimited adds an item to the workqueue after the rate limiter says its ok.void
forget indicates that an item is finished being retried.int
numRequeues
(T item) numRequeues returns back how many times the item was requeued.Methods inherited from class io.kubernetes.client.extended.workqueue.DefaultDelayingQueue
addAfter, injectTimeSource
Methods inherited from class io.kubernetes.client.extended.workqueue.DefaultWorkQueue
add, done, get, isShuttingDown, length, shutDown
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.kubernetes.client.extended.workqueue.DelayingQueue
addAfter
-
Constructor Details
-
DefaultRateLimitingQueue
public DefaultRateLimitingQueue() -
DefaultRateLimitingQueue
-
DefaultRateLimitingQueue
-
-
Method Details
-
numRequeues
Description copied from interface:RateLimitingQueue
numRequeues returns back how many times the item was requeued.- Specified by:
numRequeues
in interfaceRateLimitingQueue<T>
- Parameters:
item
- specific item- Returns:
- times the item was requeued
-
forget
Description copied from interface:RateLimitingQueue
forget indicates that an item is finished being retried. Doesn't matter whether its for perm failing or for success, we'll stop the rate limiter from tracking it. This only clears the `rateLimiter`, you still have to call `Done` on the queue.- Specified by:
forget
in interfaceRateLimitingQueue<T>
- Parameters:
item
- item which is finished being retried
-
addRateLimited
Description copied from interface:RateLimitingQueue
addRateLimited adds an item to the workqueue after the rate limiter says its ok.- Specified by:
addRateLimited
in interfaceRateLimitingQueue<T>
- Parameters:
item
- item to add
-