gr.uoa.di.madgik.searchlibrary.operatorlibrary.merge
Class MergeWorker

java.lang.Object
  extended by java.lang.Thread
      extended by gr.uoa.di.madgik.searchlibrary.operatorlibrary.merge.MergeWorker
All Implemented Interfaces:
Runnable

public class MergeWorker
extends Thread

This Thread class that populates the output RecordWriter in the background

Author:
UoA

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
Thread.State, Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
MergeWorker(Vector<ReaderHolder> readers, StatsContainer stats, OperationMode operationMode, long timeout, TimeUnit timeUnit, String uid)
          Creates a new MergeWorker
 
Method Summary
 Object getWriterInitSyncObject()
           
 void run()
           
 void setRecordDefinitionOffsets(int[] recordDefinitionOffsets)
           
 void setWriter(gr.uoa.di.madgik.grs.writer.RecordWriter<gr.uoa.di.madgik.grs.record.Record> writer)
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, 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, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MergeWorker

public MergeWorker(Vector<ReaderHolder> readers,
                   StatsContainer stats,
                   OperationMode operationMode,
                   long timeout,
                   TimeUnit timeUnit,
                   String uid)
Creates a new MergeWorker

Parameters:
readers - Vector holding info on the input ResultSet
stats - Statistics
operationMode - The operation mode. One of OperationMode.FIFO, OperationMode.FirstAvailable and OperationMode.Sort
timeout - The timeout that will be used by the RecordWriter and all ForwardReaders
timeUnit - The timeout unit that will be used by the RecordWriter and all ForwardReaders
uid - A unique identifier for this operation
Method Detail

setWriter

public void setWriter(gr.uoa.di.madgik.grs.writer.RecordWriter<gr.uoa.di.madgik.grs.record.Record> writer)
Parameters:
writer - The output RecordWriter to place the records to

setRecordDefinitionOffsets

public void setRecordDefinitionOffsets(int[] recordDefinitionOffsets)

getWriterInitSyncObject

public Object getWriterInitSyncObject()

run

public void run()
Specified by:
run in interface Runnable
Overrides:
run in class Thread
See Also:
Runnable.run()


Copyright © 2013. All Rights Reserved.