W3cubDocs

/OpenJDK 21

Annotation Interface 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 extends 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:

© 1993, 2023, 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/21/docs/api/jdk.jfr/jdk/jfr/SettingDefinition.html