public abstract class EventQueue extends GenericService
This is the base class for objects that queue up method calls. This will allow multiple Threads to read from the queue.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string
|
SERVICE_INFO_KEY
DEFAULT_LOG_TRACE_STATUS
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
Constructor and Description |
---|
EventQueue()
Constructs a new EventQueue
|
Modifier and Type | Method and Description |
---|---|
protected void |
addElement()
Notifies the Queue that the head of the queue has been filled in
and added to the queue.
|
protected abstract EventQueueElement |
createElement()
Constructs a new blank EventQueueElement.
|
protected abstract void |
dispatchElement(EventQueueElement pElem)
Dispatches a Queue element to be handled.
|
protected void |
dispatchQueueElements()
This will read and dispatch elements from the Queue in a loop
until the service is stopped.
|
void |
doStartService()
Initializes the service by creating the queue (if it hasn't
already been created).
|
void |
doStopService()
This will shut down the threads reading from the Queue.
|
void |
flushQueue()
Flush the queue.
|
protected boolean |
getElement(EventQueueElement pElement)
Reads one element from the queue, copies the element to the
specified element, and clears the element.
|
int |
getInitialCapacity()
Returns the initial capacity of the queue as expressed as the
number of elements.
|
int |
getQueuedEventCount()
Returns the total number of events that were added to the queue
|
protected EventQueueElement |
getQueueHead()
Returns a pointer to the next element in the queue that will be
written.
|
int |
getQueueSize()
Returns the number of events currently in the queue waiting to be
sent to their desintations.
|
int |
getThreadCount()
Returns the number Threads that will be reading and dispatching
from the queue.
|
javax.transaction.TransactionManager |
getTransactionManager() |
boolean |
getTransactionsEnabled() |
protected void |
handleDispatchError(java.lang.Throwable pThrowable)
This is called when an exception is thrown while dispatching
from the queue.
|
EventQueueElement[] |
listQueuedElements()
Creates and returns a new array containing references to all
the elements in the Queue, in the order that they were inserted.
|
void |
setInitialCapacity(int pInitialCapacity)
Sets the initial capacity of the queue as expressed as the number
of elements.
|
void |
setThreadCount(int pThreadCount)
Sets the number Threads that will be reading and dispatching from
the queue.
|
void |
setTransactionManager(javax.transaction.TransactionManager pTransactionManager) |
void |
setTransactionsEnabled(boolean pTransactionsEnabled) |
addLogListener, createAdminServlet, getAbsoluteName, getAdminServlet, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
public javax.transaction.TransactionManager getTransactionManager()
public void setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
public boolean getTransactionsEnabled()
public void setTransactionsEnabled(boolean pTransactionsEnabled)
protected abstract EventQueueElement createElement()
protected abstract void dispatchElement(EventQueueElement pElem)
protected EventQueueElement getQueueHead()
protected void addElement()
protected boolean getElement(EventQueueElement pElement)
public void flushQueue()
protected void dispatchQueueElements()
protected void handleDispatchError(java.lang.Throwable pThrowable)
public EventQueueElement[] listQueuedElements()
public void setInitialCapacity(int pInitialCapacity)
public int getInitialCapacity()
public void setThreadCount(int pThreadCount)
public int getThreadCount()
public int getQueueSize()
public int getQueuedEventCount()
public void doStartService()
doStartService
in class GenericService
public void doStopService()
doStopService
in class GenericService