- 
- Type Parameters:
 X- The class of the bean
- All Known Subinterfaces:
 ProcessManagedBean<X>,ProcessProducerField<T,X>,ProcessProducerMethod<T,X>,ProcessSessionBean<X>,ProcessSyntheticBean<X>
public interface ProcessBean<X>The container fires an event of this type for each enabled bean, interceptor or decorator deployed in a bean archive, before registering the
Beanobject.The event object type depends upon what kind of bean was discovered:
- For a managed bean with bean class X, the container must raise an event of type
 
ProcessManagedBean. - For a session bean with bean class X, the container must raise an event of type
 
ProcessSessionBean. - For a producer method with method return type X of a bean with bean class T, the container must raise an event of type
 
ProcessProducerMethod. - For a producer field with field type X of a bean with bean class T, the container must raise an event of type
 
ProcessProducerField. - For a custom implementation of 
Bean, the container must raise an event of typeProcessSyntheticBean. 
Resources are considered to be producer fields.
If any observer method of a
ProcessBeanevent 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.
- Author:
 - David Allen
 - See Also:
 Bean
 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddDefinitionError(java.lang.Throwable t)Registers a definition error with the container, causing the container to abort deployment after bean discovery is complete.AnnotatedgetAnnotated()Returns theAnnotatedTyperepresenting the bean class, theAnnotatedMethodrepresenting the producer method, or theAnnotatedFieldrepresenting the producer field.Bean<X>getBean()Returns theBeanobject that is about to be registered. 
 - 
 
- 
- 
Method Detail
- 
getAnnotated
Annotated getAnnotated()
Returns theAnnotatedTyperepresenting the bean class, theAnnotatedMethodrepresenting the producer method, or theAnnotatedFieldrepresenting the producer field.If invoked upon a
ProcessSyntheticBeanevent, non-portable behavior results and the returned value should be ignored.- Returns:
 - the 
Annotatedfor the bean being registered - Throws:
 java.lang.IllegalStateException- if called outside of the observer method invocation
 
- 
getBean
Bean<X> getBean()
Returns theBeanobject that is about to be registered. TheBeanmay implementInterceptororDecorator.- Returns:
 - the 
Beanobject about to be registered - Throws:
 java.lang.IllegalStateException- if called outside of the observer method invocation
 
- 
addDefinitionError
void addDefinitionError(java.lang.Throwable t)
Registers a definition error with the container, causing the container to abort deployment after bean discovery is complete.- Parameters:
 t- The definition error to register as aThrowable- Throws:
 java.lang.IllegalStateException- if called outside of the observer method invocation
 
 - 
 
 -