edu.cuny.cat.stat
Class ClientDynamicsReport

java.lang.Object
  extended by edu.cuny.cat.stat.ClientDynamicsReport
All Implemented Interfaces:
AuctionEventListener, GameReport, edu.cuny.event.RichEventListener, edu.cuny.stat.Report<AuctionEvent>, java.util.EventListener

public class ClientDynamicsReport
extends java.lang.Object
implements GameReport, edu.cuny.event.RichEventListener

A report logging the behaviors of game clients for debugging purpose. Information about each game client is stored in a separate file. TODO: to refactor later to remove static behavior.

Version:
$Revision: 1.8 $
Author:
Jinzhong Niu

Field Summary
protected  java.util.Map<java.lang.String,java.io.FileWriter> fileMap
           
static java.lang.String ID
           
static java.lang.String INFO
           
static java.lang.String PATH
           
static java.lang.String TRANSACTIONS
           
protected  java.io.Writer transactionWriter
           
 
Fields inherited from interface edu.cuny.cat.stat.GameReport
ACCEPTED, ASK, BID, CONVERGENCE_COEFFICIENT, EFFICIENCY, EQUILIBRIUM, FEE, Formatter, GLOBAL, MARKETSHARE, MAX, MEAN, MIN, PLACED, PRICE, PROFIT, PROFIT_DISPERSION, QUANTITY, SCORE, SHOUT, SPECIALIST, STDEV, TOTAL, TRADER, TRANSACTION, TRANSACTIONRATE, VALUE
 
Constructor Summary
ClientDynamicsReport()
           
 
Method Summary
protected  void closeWriter(java.lang.String id, java.io.FileWriter writer)
           
 void eventOccurred(AuctionEvent event)
           
 void eventOccurred(edu.cuny.event.RichEvent te)
          allows clients to report their behaviors without directly refering to this board
 java.util.Map<edu.cuny.stat.ReportVariable,?> getVariables()
           
protected  java.io.FileWriter openWriter(java.lang.String id)
           
 void produceUserOutput()
           
 java.lang.String toString()
           
protected  void writeTo(java.lang.String id, java.lang.String info)
           
protected  void writeTo(java.io.Writer writer, java.lang.String info)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ID

public static final java.lang.String ID
See Also:
Constant Field Values

INFO

public static final java.lang.String INFO
See Also:
Constant Field Values

PATH

public static final java.lang.String PATH
See Also:
Constant Field Values

TRANSACTIONS

public static final java.lang.String TRANSACTIONS
See Also:
Constant Field Values

transactionWriter

protected java.io.Writer transactionWriter

fileMap

protected java.util.Map<java.lang.String,java.io.FileWriter> fileMap
Constructor Detail

ClientDynamicsReport

public ClientDynamicsReport()
Method Detail

getVariables

public java.util.Map<edu.cuny.stat.ReportVariable,?> getVariables()

produceUserOutput

public void produceUserOutput()
Specified by:
produceUserOutput in interface edu.cuny.stat.Report<AuctionEvent>

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

eventOccurred

public void eventOccurred(AuctionEvent event)
Specified by:
eventOccurred in interface AuctionEventListener

openWriter

protected java.io.FileWriter openWriter(java.lang.String id)

closeWriter

protected void closeWriter(java.lang.String id,
                           java.io.FileWriter writer)

writeTo

protected void writeTo(java.lang.String id,
                       java.lang.String info)

writeTo

protected void writeTo(java.io.Writer writer,
                       java.lang.String info)

eventOccurred

public void eventOccurred(edu.cuny.event.RichEvent te)
allows clients to report their behaviors without directly refering to this board

Specified by:
eventOccurred in interface edu.cuny.event.RichEventListener