Interface ProcessInjectionPoint<T,X>

Type Parameters:
T - the bean class of the bean that declares the injection point
X - the declared type of the injection point.

public interface ProcessInjectionPoint<T,X>

The container fires an event of this type for every injection point of every Java EE component class supporting injection that may be instantiated by the container at runtime, including every managed bean declared using jakarta.annotation.ManagedBean, EJB session or message-driven bean, enabled bean, enabled interceptor or enabled decorator.

Any observer of this event is permitted to wrap and/or replace the InjectionPoint by calling either setInjectionPoint(InjectionPoint) or configureInjectionPoint(). If both methods are called within an observer notification an IllegalStateException is thrown. The container must use the final value of this property, after all observers have been called, he container must use the final value of this property, after all observers have been called, whenever it performs injection upon the injection point.

If any observer method of a ProcessInjectionPoint 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.

Author:
Pete Muir, Antoine Sabot-Durand
See Also:
  • Method Details

    • getInjectionPoint

      InjectionPoint getInjectionPoint()
      Returns:
      the InjectionPoint object that will be used by the container to perform injection
      Throws:
      IllegalStateException - if called outside of the observer method invocation
    • setInjectionPoint

      void setInjectionPoint(InjectionPoint injectionPoint)
      Replaces the InjectionPoint.
      Parameters:
      injectionPoint - the new injection point
      Throws:
      IllegalStateException - if called outside of the observer method invocation
    • configureInjectionPoint

      InjectionPointConfigurator configureInjectionPoint()
      Returns an InjectionPointConfigurator initialized with the InjectionPoint processed by this event to configure a new InjectionPoint that will replace the original one at the end of the observer invocation. Each call returns the same InjectionPointConfigurator
      Returns:
      a non reusable InjectionPointConfigurator to configure the replacing InjectionPoint
      Throws:
      IllegalStateException - if called outside of the observer method invocation
      Since:
      2.0
    • 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
      Throws:
      IllegalStateException - if called outside of the observer method invocation