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 TypeMethodDescriptionvoidaddRateLimited(T item) addRateLimited adds an item to the workqueue after the rate limiter says its ok.voidforget indicates that an item is finished being retried.intnumRequeues(T item) numRequeues returns back how many times the item was requeued.Methods inherited from class io.kubernetes.client.extended.workqueue.DefaultDelayingQueue
addAfter, injectTimeSourceMethods inherited from class io.kubernetes.client.extended.workqueue.DefaultWorkQueue
add, done, get, isShuttingDown, length, shutDownMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.kubernetes.client.extended.workqueue.DelayingQueue
addAfter
-
Constructor Details
-
DefaultRateLimitingQueue
public DefaultRateLimitingQueue() -
DefaultRateLimitingQueue
-
DefaultRateLimitingQueue
-
-
Method Details
-
numRequeues
Description copied from interface:RateLimitingQueuenumRequeues returns back how many times the item was requeued.- Specified by:
numRequeuesin interfaceRateLimitingQueue<T>- Parameters:
item- specific item- Returns:
- times the item was requeued
-
forget
Description copied from interface:RateLimitingQueueforget 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:
forgetin interfaceRateLimitingQueue<T>- Parameters:
item- item which is finished being retried
-
addRateLimited
Description copied from interface:RateLimitingQueueaddRateLimited adds an item to the workqueue after the rate limiter says its ok.- Specified by:
addRateLimitedin interfaceRateLimitingQueue<T>- Parameters:
item- item to add
-