public class WaitingManager
extends java.lang.Object
| Modifier and Type | Field and Description | 
|---|---|
static WaitingManager | 
MANAGER
Waiter manager singleton instance 
 | 
private static Mutex | 
MUTEX
For synchronize 
 | 
private java.util.HashMap<java.lang.String,Queue<Pair<ThreadedTask<?,?,?>,?>>> | 
waiters
Threaded task that are waiting 
 | 
| Modifier | Constructor and Description | 
|---|---|
private  | 
WaitingManager()
Create a new instance of WaitingManager 
 | 
| Modifier and Type | Method and Description | 
|---|---|
<PARAMETER,RESULT,PROGRESS>  | 
register(ThreadedTask<PARAMETER,RESULT,PROGRESS> threadedTask,
        PARAMETER parameter,
        java.lang.String waitingFor)
Register a task to be play on specific event 
 | 
<PARAMETER,RESULT,PROGRESS>  | 
wakeupAll(java.lang.String waitingFor)
Wake up all task that are waiting for a specific event 
 | 
<PARAMETER,RESULT,PROGRESS>  | 
wakeupNext(java.lang.String waitingFor)
Wake up the head of waiting queue for an event 
 | 
private static final Mutex MUTEX
public static final WaitingManager MANAGER
private final java.util.HashMap<java.lang.String,Queue<Pair<ThreadedTask<?,?,?>,?>>> waiters
public <PARAMETER,RESULT,PROGRESS> void register(ThreadedTask<PARAMETER,RESULT,PROGRESS> threadedTask, PARAMETER parameter, java.lang.String waitingFor)
PARAMETER - Task parameter typeRESULT - Task result typePROGRESS - Task progress typethreadedTask - Task that waitparameter - Parameter to give to task when its time to play comeswaitingFor - Waiting eventpublic <PARAMETER,RESULT,PROGRESS> void wakeupAll(java.lang.String waitingFor)
PARAMETER - Task parameter typeRESULT - Task result typePROGRESS - Task progress typewaitingFor - Event to wake uppublic <PARAMETER,RESULT,PROGRESS> void wakeupNext(java.lang.String waitingFor)
PARAMETER - Task parameter typeRESULT - Task result typePROGRESS - Task progress typewaitingFor - Event to wake up