SettingDescriptor (Java SE 13 & JDK 13 )
Description: declaration: module: jdk.jfr, package: jdk.jfr, class: SettingDescriptor
Keywords: jdk.jfr.SettingDescriptor class

Module jdk.jfr
Package jdk.jfr

# Class SettingDescriptor

java.lang.Object
jdk.jfr.SettingDescriptor

    public final class SettingDescriptor
    extends Object

Describes an event setting.

Since:
  9

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `<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 available, `null` otherwise.
  `List<AnnotationElement>` | `getAnnotationElements()` | Returns an immutable list of annotation elements for this value descriptor.
  `String` | `getContentType()` | Returns a textual identifier that specifies how a value that is represented by this `SettingDescriptor` object is interpreted or formatted.
  `String` | `getDefaultValue()` | Returns the default value for this setting descriptor.
  `String` | `getDescription()` | Returns a sentence that describes the setting (for example `"Record event with duration above or equal to threshold"`).
  `String` | `getLabel()` | Returns a human-readable name that describes the setting (for example, `"Threshold"`).
  `String` | `getName()` | Returns the name of the setting (for example, `"threshold"`).
  `long` | `getTypeId()` | Returns a unique ID for the type in the Java Virtual Machine (JVM).
  `String` | `getTypeName()` | Returns the fully qualified class name of the type that is associated with this setting descriptor.

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### getName

    public String getName()
    Returns the name of the setting (for example, `"threshold"`).
    Returns:
      the name, not `null`

  - ### getLabel

    public String getLabel()
    Returns a human-readable name that describes the setting (for example, `"Threshold"`).

    If the setting lacks a label, the label for the type that is associated with this setting is returned, or `null` if doesn't exist

    Returns:
      a human-readable name, or `null` if doesn't exist

  - ### getDescription

    public String getDescription()
    Returns a sentence that describes the setting (for example `"Record event with duration above or equal to threshold"`).

    If the setting lacks a description, the description for the type that is associated with this setting is returned, or `null` if doesn't exist.

    Returns:
      the description, or `null` if doesn't exist

  - ### getContentType

    public String getContentType()
    Returns a textual identifier that specifies how a value that is represented by this `SettingDescriptor` object is interpreted or formatted.

    For example, if the setting descriptor represents a percentage, then `"jdk.jfr.Percentage"` hints to a client that a value of "0.5" is formatted 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 `ContentType`.

    If the setting lacks a content type, the content type for the type that is associated with this setting is returned, or `null` if not available.

    Returns:
      the content type, or `null` if doesn't exist
    See Also:
      `ContentType`

  - ### getTypeName

    public String getTypeName()
    Returns the fully qualified class name of the type that is associated with this setting descriptor.
    Returns:
      the type name, not `null`
    See Also:
      `getTypeId()`

  - ### getTypeId

    public 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

  - ### getAnnotation

    public <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 available, `null` otherwise.
    Type Parameters:
      `A` - the type of the annotation to query for and return if available
    Parameters:
      `annotationType` - the Class object that corresponds to the annotation type, not `null`
    Returns:
      this element's annotation for the specified annotation type if available, `null` otherwise

  - ### getAnnotationElements

    public List<AnnotationElement> getAnnotationElements()
    Returns an immutable list of annotation elements for this value descriptor.
    Returns:
      a list of annotations, not `null`

  - ### getDefaultValue

    public String getDefaultValue()
    Returns the default value for this setting descriptor.
    Returns:
      the default value, not `null`