モジュール jdk.jfr
パッケージ jdk.jfr.consumer

クラスRecordedObject

  • 直系の既知のサブクラス:
    RecordedClass, RecordedClassLoader, RecordedEvent, RecordedFrame, RecordedMethod, RecordedStackTrace, RecordedThread, RecordedThreadGroup

    public class RecordedObject
    extends Object
    1つ以上のフィールドで構成される複合データ型。

    このクラスは、ドット"."で区切られたString、たとえば"foo.bar"を渡すことによって、ネストされたオブジェクトを選択して問合せするメソッドを提供します。 メソッドはネストされたオブジェクトを左から右に評価し、パーツがnullの場合はNullPointerExceptionをスローします。

    導入されたバージョン:
    9
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      boolean getBoolean​(String name)
      boolean型のフィールドの値を返します。
      byte getByte​(String name)
      byte型のフィールドの値を返します。
      char getChar​(String name)
      char型のフィールドの値を返します。
      RecordedClass getClass​(String name)
      Class型のフィールドの値を返します。
      double getDouble​(String name)
      double型のフィールド、または拡大変換を使用してdouble型に変換可能な別のプリミティブ型のフィールドの値を返します。
      Duration getDuration​(String name)
      timespanフィールドの値を返します。
      List<ValueDescriptor> getFields()
      このオブジェクトのフィールドの不変なリストを返します。
      float getFloat​(String name)
      float型のフィールド、または拡大変換を使用してfloat型に変換可能な別のプリミティブ型のフィールドの値を返します。
      Instant getInstant​(String name)
      タイムスタンプ・フィールドの値を返します。
      int getInt​(String name)
      int型のフィールド、または拡大変換を使用してint型に変換可能な別のプリミティブ型のフィールドの値を返します。
      long getLong​(String name)
      long型のフィールド、または拡大変換を使用してlong型に変換可能な別のプリミティブ型のフィールドの値を返します。
      short getShort​(String name)
      short型のフィールド、または拡大変換を使用してshort型に変換可能な別のプリミティブ型のフィールドの値を返します。
      String getString​(String name)
      String型のフィールドの値を返します。
      RecordedThread getThread​(String name)
      Thread型のフィールドの値を返します。
      <T> T getValue​(String name)
      指定された名前のフィールドの値を返します。
      boolean hasField​(String name)
      指定された名前のフィールドが存在する場合はtrueを返し、それ以外の場合はfalseを返します。
      String toString()
      このオブジェクトのテキスト表現を返します。
    • メソッドの詳細

      • hasField

        public boolean hasField​(String name)
        指定された名前のフィールドが存在する場合はtrueを返し、それ以外の場合はfalseを返します。
        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        フィールドが存在する場合はtrue、それ以外の場合はfalse
        関連項目:
        getFields()
      • getValue

        public final <T> T getValue​(String name)
        指定された名前のフィールドの値を返します。

        戻り値の型は、RecordedObjectのプリミティブ型またはサブクラスです。

        "."を使用してネストされたオブジェクトにインデックスを付けることができます。たとえば、"thread.group.parent.name "

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        例,

         
         if (event.hasField("intValue")) {
           int intValue = event.getValue("intValue");
           System.out.println("Int value: " + intValue);
         }
        
         if (event.hasField("objectClass")) {
           RecordedClass clazz = event.getValue("objectClass");
           System.out.println("Class name: " + clazz.getName());
         }
        
         if (event.hasField("sampledThread")) {
           RecordedThread sampledThread = event.getValue("sampledThread");
           System.out.println("Sampled thread: " + sampledThread.getName());
         }
         
         
        型パラメータ:
        T - 戻り値の型
        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        値を値nullにすることができます
        例外:
        IllegalArgumentException - nameというフィールドがない場合
        関連項目:
        hasField(String)
      • getFields

        public List<ValueDescriptor> getFields()
        このオブジェクトのフィールドの不変なリストを返します。
        戻り値:
        nullではなく、フィールド
      • getBoolean

        public final boolean getBoolean​(String name)
        boolean型のフィールドの値を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        フィールドの値、trueまたはfalse
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールドのタイプがbooleanではない場合
        関連項目:
        hasField(String), getValue(String)
      • getByte

        public final byte getByte​(String name)
        byte型のフィールドの値を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        フィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールドのタイプがbyteではない場合
        関連項目:
        hasField(String), getValue(String)
      • getChar

        public final char getChar​(String name)
        char型のフィールドの値を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        charとしてのフィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールドのタイプがcharではない場合
        関連項目:
        hasField(String), getValue(String)
      • getShort

        public final short getShort​(String name)
        short型のフィールド、または拡大変換を使用してshort型に変換可能な別のプリミティブ型のフィールドの値を返します。

        このメソッドは、shortおよびbyte型のフィールドで使用できます。

        フィールドに注釈@Unsignedがあり、shortよりも狭い型の場合、値は符号なしとして返されます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        short型に変換されたフィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールド値を拡大変換を介してタイプshortに変換できない場合
        関連項目:
        hasField(String)
      • getInt

        public final int getInt​(String name)
        int型のフィールド、または拡大変換を使用してint型に変換可能な別のプリミティブ型のフィールドの値を返します。

        このメソッドは、タイプintshortchar、およびbyteのフィールドで使用できます。

        フィールドに注釈@Unsignedがあり、intよりも狭い型の場合、値は符号なしとして返されます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        int型に変換されたフィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールド値を拡大変換を介してタイプintに変換できない場合
        関連項目:
        hasField(String)
      • getFloat

        public final float getFloat​(String name)
        float型のフィールド、または拡大変換を使用してfloat型に変換可能な別のプリミティブ型のフィールドの値を返します。

        このメソッドは、タイプfloatlongintshortcharおよびbyteのフィールドで使用できます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        float型に変換されたフィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールド値を拡大変換を介してタイプfloatに変換できない場合
        関連項目:
        hasField(String)
      • getLong

        public final long getLong​(String name)
        long型のフィールド、または拡大変換を使用してlong型に変換可能な別のプリミティブ型のフィールドの値を返します。

        このメソッドは、タイプlongintshortcharおよびbyteのフィールドで使用できます。

        フィールドに注釈@Unsignedがあり、longよりも狭い型の場合、値は符号なしとして返されます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        long型に変換されたフィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールド値を拡大変換を介してタイプlongに変換できない場合
        関連項目:
        hasField(String)
      • getDouble

        public final double getDouble​(String name)
        double型のフィールド、または拡大変換を使用してdouble型に変換可能な別のプリミティブ型のフィールドの値を返します。

        このメソッドは、タイプdoublefloatlongintshortcharおよびbyteのフィールドで使用できます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        double型に変換されたフィールドの値
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールド値を拡大変換を介してタイプdoubleに変換できない場合
        関連項目:
        hasField(String)
      • getString

        public final String getString​(String name)
        String型のフィールドの値を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        Stringとしてのフィールドの値は、null
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールドのタイプがStringではない場合
        関連項目:
        hasField(String)
      • getDuration

        public final Duration getDuration​(String name)
        timespanフィールドの値を返します。

        このメソッドは、@Timespan、およびlongintshortcharおよびbyteで注釈が付けられたフィールドで使用できます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        nullではなくDurationで表されるタイム・スパン
        例外:
        IllegalArgumentException - フィールドが存在しないか、フィールド値をDurationに変換できない場合
        関連項目:
        hasField(String)
      • getInstant

        public final Instant getInstant​(String name)
        タイムスタンプ・フィールドの値を返します。

        このメソッドは、@Timestamp、およびlongintshortcharおよびbyteで注釈が付けられたフィールドで使用できます。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        nullではなくInstantとして表されるタイムスタンプ
        例外:
        IllegalArgumentException - フィールドが存在しないか、フィールド値をInstantに変換できない場合
        関連項目:
        hasField(String)
      • getClass

        public final RecordedClass getClass​(String name)
        Class型のフィールドの値を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        RecordedClassとしてのフィールドの値は、null
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールドのタイプがClassではない場合
        関連項目:
        hasField(String)
      • getThread

        public final RecordedThread getThread​(String name)
        Thread型のフィールドの値を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        パラメータ:
        name - 取得するフィールドの名前。nullではありません。
        戻り値:
        RecordedThreadとしてのフィールドの値は、null
        例外:
        IllegalArgumentException - フィールドが存在しない場合、またはフィールドのタイプがThreadではない場合
        関連項目:
        hasField(String)
      • toString

        public final String toString()
        このオブジェクトのテキスト表現を返します。

        "." (例えば"foo.bar")を使用してネストされたオブジェクトにインデックスを付けることができます。

        このメソッドの呼び出し側は、将来のJDKバージョンでフィールドが変更されるか、削除される可能性があることを考慮する必要があります。 アクセスを試みる前にフィールドを検証することをお勧めします。

        オーバーライド:
        toString 、クラス:  Object
        戻り値:
        このオブジェクトのテキスト記述