src/jdk.jfr/share/classes/jdk/jfr/internal/MirrorEvent.java
author egahlin
Wed, 31 Oct 2018 02:10:21 +0100
changeset 52334 a181612f0715
child 55269 098fa5ddb308
permissions -rw-r--r--
8203629: Produce events in the JDK without a dependency on jdk.jfr Reviewed-by: mgronlun
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
52334
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     1
package jdk.jfr.internal;
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     2
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     3
import java.lang.annotation.Retention;
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     4
import java.lang.annotation.Target;
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     5
import java.lang.annotation.RetentionPolicy;
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     6
import java.lang.annotation.ElementType;
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     7
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     8
@Retention(RetentionPolicy.RUNTIME)
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
     9
@Target({ ElementType.TYPE })
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    10
public @interface MirrorEvent {
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    11
    /**
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    12
     * Fully qualified name of the class to mirror metadata for (for example,
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    13
     * {@code "jdk.internal.event.Example"})
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    14
     *
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    15
     * @return the fully qualified class name of the event
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    16
     */
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    17
    String className();
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    18
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    19
    /**
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    20
     * The module where the event is located, by default {@code "java.base"}.
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    21
     *
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    22
     * @return the module name
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    23
     */
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    24
    String module() default "java.base";
a181612f0715 8203629: Produce events in the JDK without a dependency on jdk.jfr
egahlin
parents:
diff changeset
    25
}