Interface ProcessObserverMethod<T,​X>

  • Type Parameters:
    T - The type of the event being observed
    X - The bean type containing the observer method
    All Known Subinterfaces:
    ProcessSyntheticObserverMethod<T,​X>

    public interface ProcessObserverMethod<T,​X>

    The container fires an event of this type for each observer method of each enabled bean, before registering the ObserverMethod object.

    For a custom implementation of ObserverMethod, the container must raise an event of type ProcessSyntheticObserverMethod.

    Any observer of this event is permitted to wrap and/or replace the ObserverMethod by calling either setObserverMethod(ObserverMethod) or configureObserverMethod(). 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 observer resolution.

    If any observer method of a ProcessObserverMethod 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:
    Gavin King, David Allen, Antoine Sabot-Durand
    See Also:
    ObserverMethod
    • Method Detail

      • getObserverMethod

        ObserverMethod<T> getObserverMethod()
        The ObserverMethod object that will be used by the container to invoke the observer when a matching event is fired.
        Returns:
        the ObserverMethod object that will be used by the container to call the observer method
        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 - A Throwable representing the definition error
        Throws:
        IllegalStateException - if called outside of the observer method invocation
      • veto

        void veto()
        Forces the container to ignore the observer method.
        Throws:
        IllegalStateException - if called outside of the observer method invocation
        Since:
        2.0