com.sun.faban.driver.engine
Class RunInfo

java.lang.Object
  extended by com.sun.faban.driver.engine.RunInfo
All Implemented Interfaces:
Serializable

public class RunInfo
extends Object
implements Serializable

RunInfo This class contains the run parameters used for the run. They directly reflect the run configuration. sdo 10/17/08: Add support for https into driver template

See Also:
Serialized Form

Nested Class Summary
static class RunInfo.AgentInfo
          Information passed to individual agents.
static class RunInfo.DriverConfig
          The RunInfo.DriverConfig for a specific driver.
 
Field Summary
 RunInfo.AgentInfo agentInfo
          The current agent information.
 boolean audit
          Whether audit is on or not.
 int benchStartTime
          The benchmark start time, relative to the timer.
 byte[] defBytes
          fhb bytes defining a class.
 RunInfo.DriverConfig driverConfig
          The current driver config object.
static String DRIVERURI
          Namespace URI for the Faban driver.
static String FABANURI
          Namespace URI for Faban in general.
 int graphInterval
          The time interval for graphing.
 Handler logHandler
          The log handler.
 int maxRunTime
          The maximum run time, used only for cycle runs.
 int msBetweenThreadStart
          Milliseconds between thread start.
 boolean parallelAgentThreadStart
          Whether agents start in parallel.
 int rampDown
          Ramp Down, in seconds.
 int rampUp
          Ramp Up, in seconds.
 String resultsDir
          The results directory.
 String runId
          The run ID.
 boolean runtimeStatsEnabled
          Whether the runtime stats are enabled.
 int runtimeStatsInterval
          Interval for runtime stats.
 int scale
          Scale of the run.
 boolean simultaneousStart
          Whether all threads start simultaneously.
 long start
          The actual millisec start time.
 int stdyState
          Steady State, in seconds.
 boolean variableLoad
          Use varable load or not.
 String variableLoadFile
          Variable load input file.
 VariableLoadHandler variableLoadHandler
          The load adjuster for variable load.
 
Method Summary
static String getDefiningClassName()
          Obtains the defining class name from the configuration file.
static RunInfo getInstance()
          Obtains the singleton RunInfo instance for this JVM.
 void postDeserialize()
          The method postDeserialize re-establishes the non-serializable fields.
static RunInfo read(BenchmarkDefinition benchDef)
          Reads all the configuration parameters from the file and combines it with the benchmark definition.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

FABANURI

public static final String FABANURI
Namespace URI for Faban in general.

See Also:
Constant Field Values

DRIVERURI

public static final String DRIVERURI
Namespace URI for the Faban driver.

See Also:
Constant Field Values

resultsDir

public String resultsDir
The results directory.


scale

public int scale
Scale of the run.


audit

public boolean audit
Whether audit is on or not. This is not used.


runId

public String runId
The run ID.


rampUp

public int rampUp
Ramp Up, in seconds.


rampDown

public int rampDown
Ramp Down, in seconds.


stdyState

public int stdyState
Steady State, in seconds.


variableLoad

public boolean variableLoad
Use varable load or not.


variableLoadFile

public String variableLoadFile
Variable load input file.


variableLoadHandler

public VariableLoadHandler variableLoadHandler
The load adjuster for variable load.


simultaneousStart

public boolean simultaneousStart
Whether all threads start simultaneously.


parallelAgentThreadStart

public boolean parallelAgentThreadStart
Whether agents start in parallel.


msBetweenThreadStart

public int msBetweenThreadStart
Milliseconds between thread start.


benchStartTime

public int benchStartTime
The benchmark start time, relative to the timer.


start

public long start
The actual millisec start time.


maxRunTime

public int maxRunTime
The maximum run time, used only for cycle runs.


graphInterval

public int graphInterval
The time interval for graphing.


runtimeStatsEnabled

public boolean runtimeStatsEnabled
Whether the runtime stats are enabled.


runtimeStatsInterval

public int runtimeStatsInterval
Interval for runtime stats.


driverConfig

public RunInfo.DriverConfig driverConfig
The current driver config object.


agentInfo

public RunInfo.AgentInfo agentInfo
The current agent information.


defBytes

public byte[] defBytes
fhb bytes defining a class.


logHandler

public transient Handler logHandler
The log handler.

Method Detail

getDefiningClassName

public static String getDefiningClassName()
                                   throws Exception
Obtains the defining class name from the configuration file.

Returns:
The name of the defining class
Throws:
Exception - An error occurred reading the configuration

read

public static RunInfo read(BenchmarkDefinition benchDef)
                    throws Exception
Reads all the configuration parameters from the file and combines it with the benchmark definition.

Parameters:
benchDef - The benchmark definition
Returns:
The resulting RunInfo structure
Throws:
Exception - If there is an error reading the configuration, or it mesmatches the definition

getInstance

public static RunInfo getInstance()
Obtains the singleton RunInfo instance for this JVM.

Returns:
The singleton instance or null if it has not been initialized

postDeserialize

public void postDeserialize()
                     throws ClassNotFoundException
The method postDeserialize re-establishes the non-serializable fields.

Throws:
ClassNotFoundException