public class BufferStoreReader extends Thread
IBufferStore, restores the incoming and stored Records
and publishes them in a new IBuffer using a RecordWriter whose locator returns to be used by any interested
reader. The demultiplexing procedure is performed based on the multiplexing type that was set in the respective
IBufferStoreThread.State, Thread.UncaughtExceptionHandlerMAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY| Constructor and Description |
|---|
BufferStoreReader(String key,
IWriterProxy proxy)
Creates a new instance
|
| Modifier and Type | Method and Description |
|---|---|
void |
dispose()
Disposes all managed resources
|
URI |
populate()
Starts the background execution of the demultiplex procedure and authors the restored
Records
using an RecordWriter whose locator is then returned |
void |
run() |
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yieldpublic BufferStoreReader(String key, IWriterProxy proxy) throws GRS2BufferStoreInvalidOperationException, GRS2BufferStoreAccessException, GRS2BufferStoreInvalidArgumentException, GRS2WriterException
key - the key with which the IBufferStore that is to be demultiplexed is associatedproxy - the proxy to use for the RecordWriter that will make the restored Records availableGRS2BufferStoreInvalidOperationException - the IBufferStore did not yield any BufferStoreEntry to useGRS2BufferStoreAccessException - The RecordDefinitions of the Records could not be foundGRS2BufferStoreInvalidArgumentException - No IBufferStore was foundGRS2WriterException - Could nmot initialize and retrieve the locator of the RecordWriterpublic URI populate() throws GRS2WriterException
Records
using an RecordWriter whose locator is then returnedIBufferGRS2WriterException - the state of the demultiplexing procedure does not permit this operation to be completedpublic void dispose()
public void run()
Once the populate() method is invoked, the execution is performed in a background daemon
thread that depending on the IBufferStore.getMultiplexType() value, will forward the execution on the
appropriate IDemultiplex implementation. Depending on the multiplex type defined, the implementations used
are FifoDemultiplex and FirstAvailableDemultiplex
run in interface Runnablerun in class ThreadThread.run()Copyright © 2014. All Rights Reserved.