Interface ProcessInjectionPoint<T,X>

  • Type Parameters:
    X - the declared type of the injection point.
    T - the bean class of the bean that declares 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 javax.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.

    See Also:
    InjectionPoint
    • Method Detail

      • getInjectionPoint

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

        void setInjectionPoint​(InjectionPoint injectionPoint)
        Replaces the InjectionPoint.
        Parameters:
        injectionPoint - the new injection point
        Throws:
        java.lang.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:
        java.lang.IllegalStateException - if called outside of the observer method invocation
        Since:
        2.0
      • 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
        Throws:
        java.lang.IllegalStateException - if called outside of the observer method invocation