X
- The class being annotatedpublic interface ProcessSyntheticAnnotatedType<X> extends ProcessAnnotatedType<X>
The container fires an event of this type for each Java class or interface added by
BeforeBeanDiscovery.addAnnotatedType(AnnotatedType, String)
or
AfterTypeDiscovery.addAnnotatedType(AnnotatedType, String)
Any observer of this event is permitted to wrap and/or replace the AnnotatedType
. The
container must use the final value of this property, after all observers have been called, to discover the types and read the
annotations of the program elements.
For example, the following observer decorates the AnnotatedType
for every class that is
added by BeforeBeanDiscovery.addAnnotatedType(AnnotatedType, String)
.
public <T> void decorateAnnotatedType(@Observes ProcessSyntheticAnnotatedType<T> pat) { pat.setAnnotatedType(decorate(pat.getAnnotatedType())); }
If any observer method of a ProcessSyntheticAnnotatedType
event throws an exception, the exception is treated as a
definition error by the container.
CDI Lite implementations are not required to provide support for Portable Extensions.
AnnotatedType
,
ProcessAnnotatedType
Modifier and Type | Method and Description |
---|---|
Extension |
getSource()
Get the extension instance which added the
AnnotatedType for which this event is being fired. |
configureAnnotatedType, getAnnotatedType, setAnnotatedType, veto
Extension getSource()
AnnotatedType
for which this event is being fired.java.lang.IllegalStateException
- if called outside of the observer method invocation