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

クラスRecordedObject

java.lang.Object
jdk.jfr.consumer.RecordedObject
直系の既知のサブクラス:
RecordedClass, RecordedClassLoader, RecordedEvent, RecordedFrame, RecordedMethod, RecordedStackTrace, RecordedThread, RecordedThreadGroup

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

このクラスでは、ドット"."で区切られたStringオブジェクト(たとえば、"aaa.bbb"です。)を渡して、ネストされたオブジェクトを選択および問合せするメソッドを提供します。 メソッドはネストされたオブジェクトを左から右に評価し、部品が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
    protected Object objectAt​(int index)  
    String toString()
    このオブジェクトのテキスト表現を返します。

    クラス java.lang.Objectで宣言されたメソッド

    cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait
  • メソッドの詳細

    • 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)
    • objectAt

      protected Object objectAt​(int index)
    • getFields

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

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

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、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型のフィールドの値を返します。

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

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

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

      このメソッドは、次の型で使用できます。: shortbyte

      フィールドに@Unsigned注釈があり、shortよりも狭いタイプである場合は、値が符号なしで返されます。

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

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

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

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

      フィールドに@Unsigned注釈があり、intよりも狭いタイプである場合は、値が符号なしで返されます。

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

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

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

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

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

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

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

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

      フィールドに@Unsigned注釈があり、longよりも狭いタイプである場合は、値が符号なしで返されます。

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

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

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

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

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、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

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

      パラメータ:
      name - 取得するフィールド(nullではない)
      戻り値:
      DurationではなくDurationで表された時間スパン
      例外:
      IllegalArgumentException - フィールドが存在しない場合、またはフィールド値をDurationオブジェクトに変換できない場合
      関連項目:
      hasField(String)
    • getInstant

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

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

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、JDKの将来のリリースで変更または削除される可能性があります。 このメソッドの呼出し元のベスト・プラクティスは、アクセスを試みる前にフィールドを検証することです。

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

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

      "." (たとえば、"aaa.bbb")を使用して、ネストされたオブジェクトに索引を付けることができます。

      フィールドは、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()
      このオブジェクトのテキスト表現を返します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      このオブジェクトのテキスト記述