Класс ValueDescriptor
public final class ValueDescriptor extends Object
- Since:
- 9
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ValueDescriptor |
Создает дескриптор значения, полезный для динамического создания типов событий и аннотаций. |
ValueDescriptor |
Создает дескриптор значения, полезный для динамического создания типов событий и аннотаций. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
<A extends Annotation> |
getAnnotation |
Возвращает первую аннотацию для указанного типа, если элемент аннотации с тем же именем присутствует непосредственно для этого дескриптора значения, null в противном случае. |
List<AnnotationElement> |
getAnnotationElements() |
Возвращает неизменяемый список элементов аннотаций для этого дескриптора значения. |
String |
getContentType() |
Возвращает текстовый идентификатор, определяющий, как значение, представленное этим ValueDescriptor, интерпретируется или форматируется. |
String |
getDescription() |
Возвращает предложение, описывающее значение (например, "Maximum
throughput in the transaction system. Value is reset after each new
batch."). |
List<ValueDescriptor> |
getFields() |
Возвращает неизменяемый список дескрипторов значений, если тип является сложным, в противном случае - пустой список. |
String |
getLabel() |
Возвращает удобочитаемое имя, описывающее значение (например, "Maximum Throughput"). |
String |
getName() |
Возвращает имя значения (например, "maxThroughput"). |
long |
getTypeId() |
Возвращает уникальный идентификатор типа в виртуальной машине Java (JVM). |
String |
getTypeName() |
Возвращает полное имя класса типа, связанного с этим дескриптором значения. |
boolean |
isArray() |
Возвращает, является ли этот дескриптор значения типом массива. |
Подробное описание конструкторов
ValueDescriptor
public ValueDescriptor(Class<?> type, String name)
Создает дескриптор значения, полезный для динамического создания типов событий и аннотаций.
Поддерживаются следующие типы:
-
byte.class -
short.class -
int.class -
long.class -
char.class -
float.class -
double.class -
boolean.class -
String.class -
Class.class -
Thread.class
Имя должно быть допустимым идентификатором Java (например, "maxThroughput"). Дополнительная информация содержится в спецификации языка Java 3.8.
- Parameters:
-
type- тип, неnull -
name- имя, неnull - Throws:
-
SecurityException- если присутствует менеджер безопасности, и у вызывающего объекта нетFlightRecorderPermission("registerEvent")
ValueDescriptor
public ValueDescriptor(Class<?> type, String name, List<AnnotationElement> annotations)
Создает дескриптор значения, полезный для динамического создания типов событий и аннотаций.
Поддерживаются следующие типы:
-
byte.class -
short.class -
int.class -
long.class -
char.class -
float.class -
double.class -
boolean.class -
String.class -
Class.class -
Thread.class
Имя должно быть допустимым идентификатором Java (например, "maxThroughput"). Дополнительная информация содержится в спецификации языка Java 3.8.
- Parameters:
-
type- тип, неnull -
name- имя, неnull -
annotations- аннотации на дескрипторах значений, неnull - Throws:
-
SecurityException- если присутствует менеджер безопасности, и у вызывающего объекта нетFlightRecorderPermission("registerEvent")
Подробное описание методов
getLabel
public String getLabel()
"Maximum Throughput").- Returns:
- удобочитаемое имя или
nullесли отсутствует
getName
public String getName()
"maxThroughput").- Returns:
- имя, не
null
getDescription
public String getDescription()
"Maximum
throughput in the transaction system. Value is reset after each new
batch.").- Returns:
- описание или
nullесли отсутствует
getContentType
public String getContentType()
ValueDescriptor, интерпретируется или форматируется. Например, если тип дескриптора значения - float и значение события - 0.5f, тип содержимого "jdk.jfr.Percentage" указывает клиенту, что значение является процентом и должно отображаться как "50%".
JDK предоставляет следующие предопределённые типы содержимого:
- jdk.jfr.Percentage
- jdk.jfr.Timespan
- jdk.jfr.Timestamp
- jdk.jfr.Frequency
- jdk.jfr.Flag
- jdk.jfr.MemoryAddress
- jdk.jfr.DataAmount
- jdk.jfr.NetworkAddress
Пользовательские типы содержимого могут быть созданы с использованием класса ContentType.
- Returns:
- тип содержимого или
nullесли отсутствует - See Also:
getTypeName
public String getTypeName()
- Returns:
- имя типа, не
null - See Also:
getTypeId
public long getTypeId()
- Returns:
- идентификатор типа, не отрицательное число
isArray
public boolean isArray()
- Returns:
-
trueесли это тип массива,falseв противном случае
getAnnotation
public <A extends Annotation> A getAnnotation(Class<A> annotationType)
null в противном случае.- Type Parameters:
-
A- тип аннотации, для которой выполняется запрос и возвращается значение, если оно присутствует - Parameters:
-
annotationType- объект Class, соответствующий типу аннотации, неnull - Returns:
- аннотация данного элемента для указанного типа аннотации, если она непосредственно присутствует, иначе
null
getAnnotationElements
public List<AnnotationElement> getAnnotationElements()
- Returns:
- список аннотаций, не
null
getFields
public List<ValueDescriptor> getFields()
- Returns:
- список дескрипторов значений, не
null
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.jfr/jdk/jfr/ValueDescriptor.html