Class AbstractComponentMonitor

    • Constructor Detail

      • AbstractComponentMonitor

        public AbstractComponentMonitor​(ComponentMonitor delegate)
        Creates a AbstractComponentMonitor with a given delegate
        Parameters:
        delegate - the ComponentMonitor to which this monitor delegates
      • AbstractComponentMonitor

        public AbstractComponentMonitor()
        Creates a AbstractComponentMonitor with an instance of NullComponentMonitor.
    • Method Detail

      • instantiating

        public <T> Constructor<T> instantiating​(PicoContainer container,
                                                ComponentAdapter<T> componentAdapter,
                                                Constructor<T> constructor)
        Description copied from interface: ComponentMonitor
        Event thrown as the component is being instantiated using the given constructor
        Specified by:
        instantiating in interface ComponentMonitor
        constructor - the Constructor used to instantiate the addComponent @return the constructor to use in instantiation (nearly always the same one as passed in)
      • instantiated

        public <T> void instantiated​(PicoContainer container,
                                     ComponentAdapter<T> componentAdapter,
                                     Constructor<T> constructor,
                                     Object instantiated,
                                     Object[] injected,
                                     long duration)
        Description copied from interface: ComponentMonitor
        Event thrown after the component has been instantiated using the given constructor. This should be called for both Constructor and Setter DI.
        Specified by:
        instantiated in interface ComponentMonitor
        constructor - the Constructor used to instantiate the addComponent
        instantiated - the component that was instantiated by PicoContainer
        injected - the components during instantiation.
        duration - the duration in milliseconds of the instantiation
      • invocationFailed

        public void invocationFailed​(Member member,
                                     Object instance,
                                     Exception e)
        Description copied from interface: ComponentMonitor
        Event thrown if the component method invocation failed on the given instance
        Specified by:
        invocationFailed in interface ComponentMonitor
        instance - the component instance
        e - the Exception detailing the cause of the failure
      • noComponentFound

        public Object noComponentFound​(MutablePicoContainer container,
                                       Object componentKey)
        Description copied from interface: ComponentMonitor
        No Component has been found for the key in question. Implementers of this have a last chance opportunity to specify something for the need. This is only relevant to component dependencies, and not to container.getComponent() in your user code.
        Specified by:
        noComponentFound in interface ComponentMonitor
      • newInjector

        public Injector newInjector​(Injector injector)
        Description copied from interface: ComponentMonitor
        A mechanism to monitor or override the Injectors being made for components.
        Specified by:
        newInjector in interface ComponentMonitor
        Returns:
        an Injector. For most implementations, the same one as was passed in.
      • newBehavior

        public Behavior newBehavior​(Behavior behavior)
        Description copied from interface: ComponentMonitor
        A mechanism to monitor or override the Behaviors being made for components.
        Specified by:
        newBehavior in interface ComponentMonitor
        Returns:
        an Behavior. For most implementations, the same one as was passed in.
      • changeMonitor

        public void changeMonitor​(ComponentMonitor monitor)
        If the delegate supports a monitor strategy, this is used to changed the monitor while keeping the same delegate. Else the delegate is replaced by the new monitor. Changes the component monitor used
        Specified by:
        changeMonitor in interface ComponentMonitorStrategy
        Parameters:
        monitor - the new ComponentMonitor to use