E
- Typ zdarzenia obsługiwanego przez danego menadżera.public abstract class EventsQueueManager<E>
extends java.lang.Object
addEventListener(EventListener)
. Każde zdarzenie obsługiwane jest poprzez wysłanie go do
wszystkich zarejestrowych listenerów.Modifier and Type | Field and Description |
---|---|
static java.lang.Long |
DEFAULT_THREADS_NUMBER
Domyślna liczba wątków obsługujących kolejkę
|
Constructor and Description |
---|
EventsQueueManager()
Konstruktor domyślny.
|
EventsQueueManager(java.lang.Long threadsNumber)
Konstruktor
|
EventsQueueManager(java.lang.Long threadsNumber,
java.lang.Long size)
Konstruktor
|
Modifier and Type | Method and Description |
---|---|
protected void |
addEventListener(EventListener<E> eventListener)
Dodaje listenera zdarzeń.
|
protected EventListenerManager<E> |
getEventListenerManager() |
protected java.util.concurrent.BlockingQueue<E> |
getQueue() |
java.lang.Long |
getQueueSize()
Zwraca długośą kolejki.
|
java.lang.Long |
getThreadsNumber() |
protected void |
initThread()
Metoda wywoływana jako pierwsza w ciele każdego z wątków.
|
java.lang.Boolean |
isStarted() |
protected abstract void |
loadQueue()
Zadaniem tej metody jest wczytanie do kolejki wszystkich zdarzeń do obsłużenia.
|
void |
putEvent(E event)
Dodaje do kolejki nowe zdarzenie do obsłużenia
|
void |
start()
Rozpoczyna działanie menadżera kolejki.
|
public static final java.lang.Long DEFAULT_THREADS_NUMBER
public EventsQueueManager()
public EventsQueueManager(java.lang.Long threadsNumber)
threadsNumber
- Liczba wątków, ktąre mają zostać powołane do obsługiwania kolejki zdarzeńpublic EventsQueueManager(java.lang.Long threadsNumber, java.lang.Long size)
threadsNumber
- Liczba wątków, ktąre mają zostać powołane do obsługiwania kolejki zdarzeń z kolejką
zadanej maksymalnej
wielkościprotected java.util.concurrent.BlockingQueue<E> getQueue()
protected EventListenerManager<E> getEventListenerManager()
public java.lang.Long getThreadsNumber()
public java.lang.Boolean isStarted()
public java.lang.Long getQueueSize()
public void putEvent(E event) throws java.lang.InterruptedException
event
- Nowe zdarzeniejava.lang.InterruptedException
public void start() throws EventsQueueManagerException
EventsQueueManagerException
- W przypadku gdy wystąpi błąd podczas ładowania kolejki lub w przypadku braku rejestracji
listenerów.java.lang.IllegalStateException
- W przypadku gdy nastąpi podwójne uruchomienie manadżera.protected void addEventListener(EventListener<E> eventListener)
eventListener
- Listenerprotected abstract void loadQueue() throws EventsQueueManagerException
start()
.EventsQueueManagerException
protected void initThread()