public class WaitForQueue extends Object implements Closeable
Example:
WaitForQueue queue = new WaitForQueue(); while(true) { MessageEvent mevent = queue.waitFor(MessageEvent.class); //Process event } queue.done();
Constructor and Description |
---|
WaitForQueue(PircBotX bot)
Create and store a queue listener in the specified bot's ListenerManager.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Shuts down the queue; VERY important to call when finished.
|
<E extends GenericEvent> |
waitFor(Class<? extends E>... eventClasses)
Wait indefinitely for the one of the specified events to be dispatched
|
<E extends GenericEvent> |
waitFor(Class<E> eventClass)
Wait indefinitely for the specified event to be dispatched
|
<E extends GenericEvent> |
waitFor(Class<E> eventClass,
long timeout,
TimeUnit unit) |
<E extends GenericEvent> |
waitFor(List<Class<? extends E>> eventClasses)
Wait indefinitely for the one of the specified events to be dispatched
|
<E extends GenericEvent> |
waitFor(List<Class<? extends E>> eventClasses,
long timeout,
TimeUnit unit)
Wait for events of the specified event class to appear in the queue.
|
public <E extends GenericEvent> E waitFor(@NonNull Class<E> eventClass) throws InterruptedException
E
- Event classeventClass
- The event class to wait forInterruptedException
waitFor(java.util.List, long, java.util.concurrent.TimeUnit)
public <E extends GenericEvent> Event waitFor(@NonNull Class<? extends E>... eventClasses) throws InterruptedException
eventClasses
- List of events to wait forInterruptedException
waitFor(java.util.List, long, java.util.concurrent.TimeUnit)
public <E extends GenericEvent> Event waitFor(@NonNull List<Class<? extends E>> eventClasses) throws InterruptedException
eventClasses
- List of events to wait forInterruptedException
waitFor(java.util.List, long, java.util.concurrent.TimeUnit)
public <E extends GenericEvent> E waitFor(@NonNull Class<E> eventClass, long timeout, @NonNull TimeUnit unit) throws InterruptedException
InterruptedException
public <E extends GenericEvent> Event waitFor(@NonNull List<Class<? extends E>> eventClasses, long timeout, @NonNull TimeUnit unit) throws InterruptedException
eventClasses
- Events to wait fortimeout
- Timeout valueunit
- Unit of timeout valueInterruptedException
public void close()
close
in interface Closeable
close
in interface AutoCloseable
Copyright © 2010–2020 Leon Blakey. All rights reserved.