- java.lang.Object
- 
- jdk.jfr.ValueDescriptor
 
- 
 public final class ValueDescriptor extends Object Describes the event fields and annotation elements.- Since:
- 9
 
- 
- 
Constructor SummaryConstructors Constructor Description ValueDescriptor(Class<?> type, String name)Constructs a value descriptor, useful for dynamically creating event types and annotations.ValueDescriptor(Class<?> type, String name, List<AnnotationElement> annotations)Constructs a value descriptor, useful for dynamically creating event types and annotations.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description <A extends Annotation>
 AgetAnnotation(Class<A> annotationType)Returns the first annotation for the specified type if an annotation element with the same name is directly present for this value descriptor,nullotherwise.List<AnnotationElement>getAnnotationElements()Returns an immutable list of annotation elements for this value descriptor.StringgetContentType()Returns a textual identifier that specifies how a value represented by thisValueDescriptoris interpreted or formatted.StringgetDescription()Returns a sentence describing the value (for example,"Maximum throughput in the transaction system. Value is reset after each new batch.").List<ValueDescriptor>getFields()Returns an immutable list of value descriptors if the type is complex, else an empty list.StringgetLabel()Returns a human-readable name that describes the value (for example,"Maximum Throughput").StringgetName()Returns the name of the value (for example,"maxThroughput").longgetTypeId()Returns a unique ID for the type in the Java virtual Machine (JVM).StringgetTypeName()Returns the fully qualified class name of the type that is associated with this value descriptor.booleanisArray()Returns if this value descriptor is an array type.
 
- 
- 
- 
Constructor Detail- 
ValueDescriptorpublic ValueDescriptor(Class<?> type, String name) Constructs a value descriptor, useful for dynamically creating event types and annotations. The following types are supported: - byte.class
- short.class
- int.class
- long.class
- char.class
- float.class
- double.class
- boolean.class
- String.class
- Class.class
- Thread.class
 The name must be a valid Java identifier (for example, "maxThroughput"). See 3.8 Java Language Specification for more information.- Parameters:
- type- the type, not- null
- name- the name, not- null
- Throws:
- SecurityException- if a security manager is present and the caller doesn't have- FlightRecorderPermission("registerEvent")
 
 - 
ValueDescriptorpublic ValueDescriptor(Class<?> type, String name, List<AnnotationElement> annotations) Constructs a value descriptor, useful for dynamically creating event types and annotations. The following types are supported: - byte.class
- short.class
- int.class
- long.class
- char.class
- float.class
- double.class
- boolean.class
- String.class
- Class.class
- Thread.class
 The name must be a valid Java identifier (for example, "maxThroughput"). See 3.8 Java Language Specification for more information.- Parameters:
- type- the type, not- null
- name- the name, not- null
- annotations- the annotations on the value descriptors, not- null
- Throws:
- SecurityException- if a security manager is present and the caller doesn't have- FlightRecorderPermission("registerEvent")
 
 
- 
 - 
Method Detail- 
getLabelpublic String getLabel() Returns a human-readable name that describes the value (for example,"Maximum Throughput").- Returns:
- a human-readable name, or nullif doesn't exist
 
 - 
getNamepublic String getName() Returns the name of the value (for example,"maxThroughput").- Returns:
- the name, not null
 
 - 
getDescriptionpublic String getDescription() Returns a sentence describing the value (for example,"Maximum throughput in the transaction system. Value is reset after each new batch.").- Returns:
- the description, or nullif doesn't exist
 
 - 
getContentTypepublic String getContentType() Returns a textual identifier that specifies how a value represented by thisValueDescriptoris interpreted or formatted.For example, if the value descriptor's type is floatand the event value is0.5f, a content type of"jdk.jfr.Percentage"hints to a client that the value is a percentage and that it should be rendered as"50%".The JDK provides the following predefined content types: - jdk.jfr.Percentage
- jdk.jfr.Timespan
- jdk.jfr.Timestamp
- jdk.jfr.Frequency
- jdk.jfr.Flag
- jdk.jfr.MemoryAddress
- jdk.jfr.DataAmount
- jdk.jfr.NetworkAddress
 User-defined content types can be created by using the ContentTypeclass.- Returns:
- the content type, or nullif doesn't exist
- See Also:
- ContentType
 
 - 
getTypeNamepublic String getTypeName() Returns the fully qualified class name of the type that is associated with this value descriptor.- Returns:
- the type name, not null
- See Also:
- getTypeId()
 
 - 
getTypeIdpublic long getTypeId() Returns a unique ID for the type in the Java virtual Machine (JVM). The ID might not be the same between JVM instances.- Returns:
- the type ID, not negative
 
 - 
isArraypublic boolean isArray() Returns if this value descriptor is an array type.- Returns:
- trueif it is an array type,- falseotherwise
 
 - 
getAnnotationpublic <A extends Annotation> A getAnnotation(Class<A> annotationType) Returns the first annotation for the specified type if an annotation element with the same name is directly present for this value descriptor,nullotherwise.- Type Parameters:
- A- the type of the annotation to query for and return if present
- Parameters:
- annotationType- the Class object that corresponds to the annotation type, not- null
- Returns:
- this element's annotation for the specified annotation type if
         directly present, else null
 
 - 
getAnnotationElementspublic List<AnnotationElement> getAnnotationElements() Returns an immutable list of annotation elements for this value descriptor.- Returns:
- a list of annotations, not null
 
 - 
getFieldspublic List<ValueDescriptor> getFields() Returns an immutable list of value descriptors if the type is complex, else an empty list.- Returns:
- a list of value descriptors, not null
 
 
- 
 
-