Interface ProcessBean<X>

Type Parameters:
X - The class of the bean
All Known Subinterfaces:
ProcessManagedBean<X>, ProcessProducerField<T,X>, ProcessProducerMethod<T,X>, ProcessSessionBean<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 Bean object.

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<T, X>.
  • For a producer field with field type X of a bean with bean class T, the container must raise an event of type ProcessProducerField<T, X>.

Resources are considered to be producer fields.

If any observer method of a ProcessBean event throws an exception, the exception is treated as a definition error by the container.

See Also:
  • Method Details

    • getAnnotated

      Annotated getAnnotated()
      Returns the AnnotatedType representing the bean class, the AnnotatedMethod representing the producer method, or the AnnotatedField representing the producer field.
      Returns:
      the AnnotatedType for the bean being registered
    • getBean

      Bean<X> getBean()
      Returns the Bean object that is about to be registered. The Bean may implement Interceptor or Decorator.
      Returns:
      the Bean object about to be registered
    • addDefinitionError

      void addDefinitionError(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 a Throwable