seda.sandStorm.internal
Class sandStormProfiler

java.lang.Object
  extended by java.lang.Thread
      extended by seda.sandStorm.internal.sandStormProfiler
All Implemented Interfaces:
java.lang.Runnable, ProfilerIF, sandStormConst

 class sandStormProfiler
extends java.lang.Thread
implements sandStormConst, ProfilerIF

sandStormProfiler is an implementation of the ProfilerIF interface for Sandstorm. It is implemented using a thread that periodically samples the set of ProfilableIF's registered with it, and outputs the profile to a file.

See Also:
ProfilerIF, ProfilableIF

Nested Class Summary
(package private)  class sandStormProfiler.profile
           
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
private  int delay
           
private  StageGraph graphProfiler
           
private  java.util.Vector profilables
           
private  java.io.PrintWriter pw
           
private  boolean started
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Fields inherited from interface seda.sandStorm.internal.sandStormConst
MAJOR_VERSION, MINOR_VERSION, VERSION_STRING, WELCOME_STRING
 
Constructor Summary
sandStormProfiler(ManagerIF mgr)
           
 
Method Summary
 void add(java.lang.String name, ProfilableIF pr)
          Add a class to this profiler.
 boolean enabled()
          Returns true if the profiler is enabled.
 StageGraph getGraphProfiler()
          Return a handle to the graph profiler.
 void run()
           
 
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

delay

private int delay

pw

private java.io.PrintWriter pw

profilables

private java.util.Vector profilables

started

private boolean started

graphProfiler

private StageGraph graphProfiler
Constructor Detail

sandStormProfiler

sandStormProfiler(ManagerIF mgr)
            throws java.io.IOException
Throws:
java.io.IOException
Method Detail

enabled

public boolean enabled()
Returns true if the profiler is enabled.

Specified by:
enabled in interface ProfilerIF

add

public void add(java.lang.String name,
                ProfilableIF pr)
Add a class to this profiler.

Specified by:
add in interface ProfilerIF
Parameters:
name - The name of the object as it should appear in the profile.
pr - The object to profile.

run

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

getGraphProfiler

public StageGraph getGraphProfiler()
Description copied from interface: ProfilerIF
Return a handle to the graph profiler.

Specified by:
getGraphProfiler in interface ProfilerIF