Class StopWatch
- java.lang.Object
-
- org.apache.wayang.commons.util.profiledb.instrumentation.StopWatch
-
public class StopWatch extends java.lang.Object
Utility to createTimeMeasurement
s for anExperiment
.
-
-
Constructor Summary
Constructors Constructor Description StopWatch(Experiment experiment)
Creates a new instance for the givenExperiment
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Experiment
getExperiment()
Get theExperiment
managed by this instance.TimeMeasurement
getOrCreateRound(java.lang.String id, java.lang.String... furtherIds)
Retrieves aTimeMeasurement
by its ID fromrounds
.TimeMeasurement
start(java.lang.String id, java.lang.String... furtherIds)
Starts aTimeMeasurement
.void
stop(java.lang.String id, java.lang.String... furtherIds)
Stops aTimeMeasurement
(if it exists).void
stopAll()
Stops allTimeMeasurement
s known to this instance.java.lang.String
toPrettyString()
Formats theTimeMeasurement
s to something easily readable.java.lang.String
toPrettyString(java.lang.String indent, java.lang.String bullet)
Formats theTimeMeasurement
s to something easily readable.
-
-
-
Constructor Detail
-
StopWatch
public StopWatch(Experiment experiment)
Creates a new instance for the givenExperiment
.- Parameters:
experiment
- that should be instrumented
-
-
Method Detail
-
getOrCreateRound
public TimeMeasurement getOrCreateRound(java.lang.String id, java.lang.String... furtherIds)
Retrieves aTimeMeasurement
by its ID fromrounds
. If it does not exist, it will be created and also registered with theexperiment
.- Parameters:
id
- the ID of theTimeMeasurement
furtherIds
- IDs of further nestedTimeMeasurement
s- Returns:
- the
TimeMeasurement
-
start
public TimeMeasurement start(java.lang.String id, java.lang.String... furtherIds)
Starts aTimeMeasurement
. Any required parentTimeMeasurement
will be started if necessary.- Parameters:
id
- ID of the rootTimeMeasurement
furtherIds
- IDs of further nestedTimeMeasurement
s- Returns:
- the (potentially new)
TimeMeasurement
-
stop
public void stop(java.lang.String id, java.lang.String... furtherIds)
Stops aTimeMeasurement
(if it exists).- Parameters:
id
- ID of the rootTimeMeasurement
furtherIds
- IDs of further nestedTimeMeasurement
s
-
toPrettyString
public java.lang.String toPrettyString()
Formats theTimeMeasurement
s to something easily readable.- Returns:
- the "pretty"
String
-
toPrettyString
public java.lang.String toPrettyString(java.lang.String indent, java.lang.String bullet)
Formats theTimeMeasurement
s to something easily readable.- Parameters:
indent
- indent to be used when formatting sub-TimeMeasurement
sbullet
- bullet point character- Returns:
- the "pretty"
String
-
stopAll
public void stopAll()
Stops allTimeMeasurement
s known to this instance.
-
getExperiment
public Experiment getExperiment()
Get theExperiment
managed by this instance.- Returns:
- the
Experiment
-
-