org.jactr.tools.tracer
Class RuntimeTracer

java.lang.Object
  extended by org.jactr.tools.tracer.RuntimeTracer
All Implemented Interfaces:
org.jactr.core.utils.IInitializable, org.jactr.core.utils.IInstallable, org.jactr.core.utils.parameter.IParameterized, org.jactr.instrument.IInstrument

public class RuntimeTracer
extends java.lang.Object
implements org.jactr.instrument.IInstrument, org.jactr.core.utils.parameter.IParameterized

tracer that can listen and record the actions of all running models. At the start of the run (via ACTRRuntimeEvent.STARTED), the runtime tracer snags the current controller, which must be NetworkedIOHandler

Author:
developer

Field Summary
static java.lang.String EXECUTOR_PARAM
           
static java.lang.String LISTENERS
           
static org.apache.commons.logging.Log LOGGER
          logger definition
static java.lang.String SINK_CLASS
           
 
Constructor Summary
RuntimeTracer()
           
 
Method Summary
 void add(ITraceListener listener)
           
 java.util.concurrent.Executor getExecutor()
           
 java.lang.String getParameter(java.lang.String key)
           
 java.util.Collection<java.lang.String> getPossibleParameters()
           
 java.util.Collection<java.lang.String> getSetableParameters()
           
 void initialize()
          we attach two listeners.
 void install(org.jactr.core.model.IModel model)
           
 void setExecutor(java.lang.String executorName)
           
 void setParameter(java.lang.String key, java.lang.String value)
           
 void setTraceSink(ITraceSink sink)
          where should we send all the transformed events to?
 void uninstall(org.jactr.core.model.IModel model)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOGGER

public static final org.apache.commons.logging.Log LOGGER
logger definition


EXECUTOR_PARAM

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

SINK_CLASS

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

LISTENERS

public static final java.lang.String LISTENERS
See Also:
Constant Field Values
Constructor Detail

RuntimeTracer

public RuntimeTracer()
Method Detail

getExecutor

public java.util.concurrent.Executor getExecutor()

setExecutor

public void setExecutor(java.lang.String executorName)

add

public void add(ITraceListener listener)

setTraceSink

public void setTraceSink(ITraceSink sink)
where should we send all the transformed events to?

Parameters:
sink -

install

public void install(org.jactr.core.model.IModel model)
Specified by:
install in interface org.jactr.core.utils.IInstallable
Specified by:
install in interface org.jactr.instrument.IInstrument

uninstall

public void uninstall(org.jactr.core.model.IModel model)
Specified by:
uninstall in interface org.jactr.core.utils.IInstallable
Specified by:
uninstall in interface org.jactr.instrument.IInstrument

initialize

public void initialize()
we attach two listeners. The first is the runtime listener which when the runtime stops, will force us to flush our data. The other is the a breakpoint listener so that it a breakpoint is reached, we flush.

Specified by:
initialize in interface org.jactr.core.utils.IInitializable
Specified by:
initialize in interface org.jactr.instrument.IInstrument
See Also:
IInstrument.initialize()

getParameter

public java.lang.String getParameter(java.lang.String key)
Specified by:
getParameter in interface org.jactr.core.utils.parameter.IParameterized
See Also:
IParameterized.getParameter(java.lang.String)

getPossibleParameters

public java.util.Collection<java.lang.String> getPossibleParameters()
Specified by:
getPossibleParameters in interface org.jactr.core.utils.parameter.IParameterized
See Also:
IParameterized.getPossibleParameters()

getSetableParameters

public java.util.Collection<java.lang.String> getSetableParameters()
Specified by:
getSetableParameters in interface org.jactr.core.utils.parameter.IParameterized
See Also:
IParameterized.getSetableParameters()

setParameter

public void setParameter(java.lang.String key,
                         java.lang.String value)
Specified by:
setParameter in interface org.jactr.core.utils.parameter.IParameterized
See Also:
IParameterized.setParameter(java.lang.String, java.lang.String)