@Documented @Retention(value=RUNTIME) @Target(value={ANNOTATION_TYPE,TYPE}) @InterceptorBinding(kind=INTRODUCTION) public @interface Introduction
Introduction advice allows interfaces and abstract classes to be implemented at compile time by
MethodInterceptor
implementations.
This annotation should be applied as a meta annotation to another annotation that references the MethodInterceptor
by type
For example:
@Introduction
@Type(ExampleIntroduction.class)
@Documented
@Retention(RUNTIME)
public @interface Example {
}
Note that the annotation MUST be RetentionPolicy.RUNTIME
and the specified Type
must implement MethodInterceptor
Modifier and Type | Optional Element and Description |
---|---|
Class[] |
interfaces
Additional interfaces that the introduction advice should implement.
|
public abstract Class[] interfaces