sg.edu.nus.comp.nlp.ims.implement
Class CTestThread

java.lang.Object
  extended by java.lang.Thread
      extended by sg.edu.nus.comp.nlp.ims.implement.CTestThread
All Implemented Interfaces:
java.lang.Runnable

public class CTestThread
extends java.lang.Thread

Test thread.

Author:
zhongzhi

Nested Class Summary
protected  class CTestThread.LexeltThread
          a thread to test one lexelt
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
protected  java.net.Socket m_Connection
           
protected  java.io.BufferedReader m_ConnReader
           
protected  ICorpus m_Corpus
           
protected  java.lang.String m_CorpusName
           
protected  java.util.concurrent.CountDownLatch m_CountDown
           
protected  java.lang.String m_EndSymbol
           
protected  IEvaluator m_Evaluator
           
protected  java.lang.String m_FeatureExtractorName
           
protected  java.io.Reader m_In
           
protected  java.lang.String m_InstanceExtractorName
           
protected  java.util.Hashtable<java.lang.String,java.util.ArrayList<java.lang.String>> m_InstanceLexeltIDs
           
protected  java.util.Hashtable<java.lang.String,ILexelt> m_Lexelts
           
protected  java.io.PrintStream m_Out
           
protected  java.util.ArrayList<java.lang.Object> m_Results
           
protected  java.util.concurrent.ExecutorService m_ThreadPool
           
protected  IResultWriter m_Writer
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
CTestThread(java.io.Reader p_In, java.util.Hashtable<java.lang.String,java.util.ArrayList<java.lang.String>> p_IDs, java.io.PrintStream p_Out, IEvaluator p_Evaluator, IResultWriter p_ResultWriter, java.lang.String[] p_Options)
          constructor with some parameters
CTestThread(java.net.Socket p_Connection, IEvaluator p_Evaluator, IResultWriter p_ResultWriter, java.lang.String p_EndSymbol, java.lang.String[] p_Options)
          constructor for socket
 
Method Summary
protected  void collect()
          collection results
protected  void exit()
          exit main thread
protected  java.lang.String getDateTime()
          get a formatted date time
protected  void initSocket()
          initial with a socket connection
protected  void load()
          load data
 void run()
           
 void setOptions(java.lang.String[] p_Options)
          set options
protected  void test()
          test instances
 
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
 

Field Detail

m_ThreadPool

protected java.util.concurrent.ExecutorService m_ThreadPool

m_Connection

protected java.net.Socket m_Connection

m_InstanceExtractorName

protected java.lang.String m_InstanceExtractorName

m_FeatureExtractorName

protected java.lang.String m_FeatureExtractorName

m_CorpusName

protected java.lang.String m_CorpusName

m_EndSymbol

protected java.lang.String m_EndSymbol

m_Evaluator

protected IEvaluator m_Evaluator

m_Writer

protected IResultWriter m_Writer

m_Lexelts

protected java.util.Hashtable<java.lang.String,ILexelt> m_Lexelts

m_Corpus

protected ICorpus m_Corpus

m_InstanceLexeltIDs

protected java.util.Hashtable<java.lang.String,java.util.ArrayList<java.lang.String>> m_InstanceLexeltIDs

m_CountDown

protected java.util.concurrent.CountDownLatch m_CountDown

m_Results

protected java.util.ArrayList<java.lang.Object> m_Results

m_In

protected java.io.Reader m_In

m_Out

protected java.io.PrintStream m_Out

m_ConnReader

protected java.io.BufferedReader m_ConnReader
Constructor Detail

CTestThread

public CTestThread(java.net.Socket p_Connection,
                   IEvaluator p_Evaluator,
                   IResultWriter p_ResultWriter,
                   java.lang.String p_EndSymbol,
                   java.lang.String[] p_Options)
            throws java.io.IOException
constructor for socket

Parameters:
p_Connection - connection
p_ResultWriter - result writer
p_Evaluator - evaluator
p_EndSymbol - end symbol
p_Options - options
Throws:
java.io.IOException - io exception

CTestThread

public CTestThread(java.io.Reader p_In,
                   java.util.Hashtable<java.lang.String,java.util.ArrayList<java.lang.String>> p_IDs,
                   java.io.PrintStream p_Out,
                   IEvaluator p_Evaluator,
                   IResultWriter p_ResultWriter,
                   java.lang.String[] p_Options)
constructor with some parameters

Parameters:
p_In - corpus
p_IDs - instance lexelt ids
p_Out - output
p_Evaluator - evaluator
p_ResultWriter - writer
p_Options - options
Method Detail

initSocket

protected void initSocket()
                   throws java.io.IOException
initial with a socket connection

Throws:
java.io.IOException - initial error

setOptions

public void setOptions(java.lang.String[] p_Options)
set options

Parameters:
p_Options - options

load

protected void load()
             throws java.lang.Exception
load data

Throws:
java.lang.Exception - error

test

protected void test()
             throws java.lang.InterruptedException
test instances

Throws:
java.lang.InterruptedException - error

collect

protected void collect()
collection results


exit

protected void exit()
             throws java.io.IOException
exit main thread

Throws:
java.io.IOException - error

getDateTime

protected java.lang.String getDateTime()
get a formatted date time

Returns:
a formatted date time

run

public void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread