javax.enterprise.inject.spi

## Interface ProcessBeanAttributes<T>

- Type Parameters:
    `T` - The class of the bean

      public interface ProcessBeanAttributes<T>

  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.

  No event is fired for `New` qualified beans.

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

  Since:
    1.1
  Author:
    Pete Muir

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDefinitionError(Throwable t)` Registers a definition error with the container, causing the container to abort deployment after bean discovery is complete.
    `Annotated` | `getAnnotated()`
    `BeanAttributes<T>` | `getBeanAttributes()`
    `void` | `setBeanAttributes(BeanAttributes<T> beanAttributes)` Replaces the `BeanAttributes`.
    `void` | `veto()` Forces the container to ignore the bean.

- - ### Method Detail

    - #### getAnnotated

          Annotated getAnnotated()

      Returns:
        the `AnnotatedType` representing the managed bean class or session bean class, the `AnnotatedMethod` representing the producer field, or the `AnnotatedField` representing the producer field
      Throws:
        `IllegalStateException` - if called outside of the observer method invocation

    - #### getBeanAttributes

          BeanAttributes<T> getBeanAttributes()

      Returns:
        the `BeanAttributes` object that will be used by the container to manage instances of the bean
      Throws:
        `IllegalStateException` - if called outside of the observer method invocation

    - #### setBeanAttributes

          void setBeanAttributes(BeanAttributes<T> beanAttributes)

      Replaces the `BeanAttributes`.
      Parameters:
        `beanAttributes` - the new `BeanAttributes` to use
      Throws:
        `IllegalStateException` - if called outside of the observer method invocation

    - #### 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 error to add
      Throws:
        `IllegalStateException` - if called outside of the observer method invocation

    - #### veto

          void veto()

      Forces the container to ignore the bean.
      Throws:
        `IllegalStateException` - if called outside of the observer method invocation

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.