Package org.glassfish.pfl.tf.timer.spi
Class TimerEvent
java.lang.Object
org.glassfish.pfl.tf.timer.spi.TimerEvent
Represents a particular observable event. We are mostly interested
in measuring how long an operation takes. An operation is typically
represented by a Timer, and then the timer is used to generate
a TimerEvent at the entry to and exit from the operation.
Note that this class can also be used as a base class, in case there is a need to attach extra information to a TimerEvent.
All access to this class is unsynchronized. This class must be used either as an immutable (no calls to update), or access must be restricted to a single thread (as in an iterator).
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionTimerEvent
(TimerEvent te) TimerEvent
(Timer timer, TimerEvent.TimerEventType etype) Create a TimerEvent at the current time.TimerEvent
(Timer timer, TimerEvent.TimerEventType etype, long time) Create a TimerEvent at the given time. -
Method Summary
Modifier and TypeMethodDescriptionvoid
incrementTime
(long update) private void
internalSetData
(Timer timer, TimerEvent.TimerEventType etype, long time) long
time()
Time of event in nanoseconds since the TimerLog was created or cleared.timer()
The name of the Timer used to create this entry.toString()
type()
Type of event: ENTER for start of interval for a Timer, EXIT for end of the interval.void
update
(Timer timer, TimerEvent.TimerEventType etype, long time) Re-use the same TimerEvent instance with different data.
-
Field Details
-
timer
-
etype
-
time
private long time
-
-
Constructor Details
-
TimerEvent
-
TimerEvent
Create a TimerEvent at the current time. -
TimerEvent
Create a TimerEvent at the given time.
-
-
Method Details
-
toString
-
update
Re-use the same TimerEvent instance with different data. Used to create flyweight instances for iteration over a collection of TimerEvent instances. -
internalSetData
-
incrementTime
public void incrementTime(long update) -
timer
The name of the Timer used to create this entry. -
type
Type of event: ENTER for start of interval for a Timer, EXIT for end of the interval. -
time
public long time()Time of event in nanoseconds since the TimerLog was created or cleared.
-