SettingDefinition (Java SE 14 & JDK 14)
Description: declaration: module: jdk.jfr, package: jdk.jfr, annotation type: SettingDefinition
Keywords: jdk.jfr.SettingDefinition class

Module jdk.jfr
Package jdk.jfr

# Annotation Type SettingDefinition

    @Retention(RUNTIME)
    @Target(METHOD)
    public @interface SettingDefinition

Annotation that specifies that a method in an event class should be used to filter out events.

For the method to be valid it must return a `SettingControl` and only have one parameter, which should be a non-abstract subclass of `SettingControl`

The return value of the method specifies whether the event is to be written to the Flight Recorder system or not.

The following example shows how to annotate a method in an event class.

     class HelloWorld extend Event {

       @Label("Message");
       String message;

       @SettingDefinition;
       @Label("Message Filter");
       public boolean filter(RegExpControl regExp) {
         return regExp.matches(message);
       }
     }

For an example of how the setting controls are defined, see `SettingControl`.

Since:
  9
See Also:
  `SettingControl`