cz.cuni.amis.pogamut.base.communication.worldview.event
Class WorldEventFuture<T extends IWorldEvent>
java.lang.Object
cz.cuni.amis.pogamut.base.communication.worldview.event.WorldEventFuture<T>
- All Implemented Interfaces:
- java.util.concurrent.Future<T>
public class WorldEventFuture<T extends IWorldEvent>
- extends java.lang.Object
- implements java.util.concurrent.Future<T>
Use this if you want to wait for first appearance of some IWorldObject with known string ID.
Constructor Summary |
WorldEventFuture(IWorldView worldView,
java.lang.Class<T> eventClass)
Creates new instance of future that waits for the event of given class. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
WorldEventFuture
public WorldEventFuture(IWorldView worldView,
java.lang.Class<T> eventClass)
- Creates new instance of future that waits for the event of given class.
- Parameters:
worldView
- WorldView where the object will appeareventClass
- class of the event we're waiting for
customEventEncounteredHook
protected void customEventEncounteredHook(T obj)
- Utility method for custom handling of the first-encounter event.
- Parameters:
obj
-
cancel
public boolean cancel(boolean mayInterruptIfRunning)
- Specified by:
cancel
in interface java.util.concurrent.Future<T extends IWorldEvent>
isCancelled
public boolean isCancelled()
- Specified by:
isCancelled
in interface java.util.concurrent.Future<T extends IWorldEvent>
isDone
public boolean isDone()
- Specified by:
isDone
in interface java.util.concurrent.Future<T extends IWorldEvent>
get
public T get()
- Specified by:
get
in interface java.util.concurrent.Future<T extends IWorldEvent>
- Returns:
- the object that was awaited
- Throws:
java.lang.InterruptedException
java.util.concurrent.ExecutionException
get
public T get(long timeout,
java.util.concurrent.TimeUnit unit)
- Specified by:
get
in interface java.util.concurrent.Future<T extends IWorldEvent>