Class AbstractQueueScheduler
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractQueue<Job>
-
- ai.preferred.venom.job.AbstractQueueScheduler
-
- All Implemented Interfaces:
Scheduler,java.lang.Iterable<Job>,java.util.Collection<Job>,java.util.concurrent.BlockingQueue<Job>,java.util.Queue<Job>
- Direct Known Subclasses:
FIFOScheduler,LazyScheduler,PriorityQueueScheduler
public abstract class AbstractQueueScheduler extends java.util.AbstractQueue<Job> implements Scheduler, java.util.concurrent.BlockingQueue<Job>
- Author:
- Ween Jiann Lee, Maksim Tkachenko
-
-
Constructor Summary
Constructors Constructor Description AbstractQueueScheduler()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(Request r)Adds a request to the queue.voidadd(Request r, Handler h)Adds a request to the queue.voidadd(Request r, Handler h, Priority p)Adds a request to the queue.voidadd(Request r, Priority p)Adds a request to the queue.voidadd(Request r, Priority p, Priority pf)Adds a request to the queue.intdrainTo(java.util.Collection<? super Job> c)intdrainTo(java.util.Collection<? super Job> c, int maxElements)java.util.Iterator<Job>iterator()booleanoffer(Job job)Jobpeek()intremainingCapacity()intsize()Jobtake()-
Methods inherited from class java.util.AbstractCollection
contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.concurrent.BlockingQueue
add, contains, offer, poll, put, remove
-
-
-
-
Method Detail
-
add
public final void add(Request r, Handler h, Priority p)
Description copied from interface:SchedulerAdds a request to the queue.This request would be parsed by the handler specified, and its priority can be downgraded to the default minimum priority.
-
add
public final void add(Request r, Handler h)
Description copied from interface:SchedulerAdds a request to the queue.This request would be parsed by the handler specified, and it's initialised with default priority that can be downgraded to the default minimum priority.
-
add
public final void add(Request r, Priority p, Priority pf)
Description copied from interface:SchedulerAdds a request to the queue.This request would be parsed by a handler defined in Router or otherwise, and its priority can be downgraded to a minimum priority specified.
-
add
public final void add(Request r, Priority p)
Description copied from interface:SchedulerAdds a request to the queue.This request would be parsed by a handler defined in Router or otherwise defined, and its priority can be downgraded to the default minimum priority.
-
add
public final void add(Request r)
Description copied from interface:SchedulerAdds a request to the queue.This request would be parsed by a handler defined in Router or otherwise defined, and it's initialised with default priority that can be downgraded to the default minimum priority.
-
iterator
@Nonnull public final java.util.Iterator<Job> iterator()
-
size
public final int size()
-
take
@Nonnull public final Job take() throws java.lang.InterruptedException
- Specified by:
takein interfacejava.util.concurrent.BlockingQueue<Job>- Throws:
java.lang.InterruptedException
-
remainingCapacity
public final int remainingCapacity()
- Specified by:
remainingCapacityin interfacejava.util.concurrent.BlockingQueue<Job>
-
drainTo
public final int drainTo(@Nonnull java.util.Collection<? super Job> c)- Specified by:
drainToin interfacejava.util.concurrent.BlockingQueue<Job>
-
drainTo
public final int drainTo(@Nonnull java.util.Collection<? super Job> c, int maxElements)- Specified by:
drainToin interfacejava.util.concurrent.BlockingQueue<Job>
-
offer
public final boolean offer(@Nonnull Job job)
-
-