# Class RecordedEvent

java.lang.Object
jdk.jfr.consumer.RecordedObject
jdk.jfr.consumer.RecordedEvent

public final class RecordedEvent extends RecordedObject
A recorded event.

Since:
  9

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Duration`
  `getDuration()`
  Returns the duration of the event, measured in nanoseconds.
  `Instant`
  `getEndTime()`
  Returns the end time of the event.
  `EventType`
  `getEventType()`
  Returns the event type that describes the event.
  `List<ValueDescriptor>`
  `getFields()`
  Returns the list of descriptors that describes the fields of the event.
  `RecordedStackTrace`
  `getStackTrace()`
  Returns the stack trace that was created when the event was committed, or `null` if the event lacks a stack trace.
  `Instant`
  `getStartTime()`
  Returns the start time of the event.
  `RecordedThread`
  `getThread()`
  Returns the thread from which the event was committed, or `null` if the thread was not recorded.

  ### Methods declared in class RecordedObject

  `getBoolean, getByte, getChar, getClass, getDouble, getDuration, getFloat, getInstant, getInt, getLong, getShort, getString, getThread, getValue, hasField, toString`
  Modifier and Type
  Method
  Description
  `final boolean`
  `getBoolean(String name)`
  Returns the value of a field of type `boolean`.
  `final byte`
  `getByte(String name)`
  Returns the value of a field of type `byte`.
  `final char`
  `getChar(String name)`
  Returns the value of a field of type `char`.
  `final RecordedClass`
  `getClass(String name)`
  Returns the value of a field of type `Class`.
  `final double`
  `getDouble(String name)`
  Returns the value of a field of type `double` or of another primitive type that is convertible to type `double` by a widening conversion.
  `final Duration`
  `getDuration(String name)`
  Returns the value of a timespan field.
  `final float`
  `getFloat(String name)`
  Returns the value of a field of type `float` or of another primitive type convertible to type `float` by a widening conversion.
  `final Instant`
  `getInstant(String name)`
  Returns the value of a timestamp field.
  `final int`
  `getInt(String name)`
  Returns the value of a field of type `int` or of another primitive type that is convertible to type `int` by a widening conversion.
  `final long`
  `getLong(String name)`
  Returns the value of a field of type `long` or of another primitive type that is convertible to type `long` by a widening conversion.
  `final short`
  `getShort(String name)`
  Returns the value of a field of type `short` or of another primitive type convertible to type `short` by a widening conversion.
  `final String`
  `getString(String name)`
  Returns the value of a field of type `String`.
  `final RecordedThread`
  `getThread(String name)`
  Returns the value of a field of type `Thread`.
  `final <T> T`
  `getValue(String name)`
  Returns the value of the field with the given name.
  `boolean`
  `hasField(String name)`
  Returns `true` if a field with the given name exists, `false` otherwise.
  `final String`
  `toString()`
  Returns a textual representation of this object.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Method Details

  - ### getStackTrace

    public RecordedStackTrace getStackTrace()
    Returns the stack trace that was created when the event was committed, or `null` if the event lacks a stack trace.
    Returns:
      stack trace, or `null` if doesn't exist for the event

  - ### getThread

    public RecordedThread getThread()
    Returns the thread from which the event was committed, or `null` if the thread was not recorded.
    Returns:
      thread, or `null` if doesn't exist for the event

  - ### getEventType

    public EventType getEventType()
    Returns the event type that describes the event.
    Returns:
      the event type, not `null`

  - ### getStartTime

    public Instant getStartTime()
    Returns the start time of the event.

    If the event is an instant event, then the start time and end time are the same.

    Returns:
      the start time, not `null`

  - ### getEndTime

    public Instant getEndTime()
    Returns the end time of the event.

    If the event is an instant event, then the start time and end time are the same.

    Returns:
      the end time, not `null`

  - ### getDuration

    public Duration getDuration()
    Returns the duration of the event, measured in nanoseconds.
    Returns:
      the duration in nanoseconds, not `null`

  - ### getFields

    public List<ValueDescriptor> getFields()
    Returns the list of descriptors that describes the fields of the event.
    Overrides:
      `getFields` in class `RecordedObject`
    Returns:
      descriptors, not `null`