Package org.picocontainer
Interface ComponentMonitor
- All Known Implementing Classes:
AbstractComponentMonitor
,ComposingMonitor
,ConsoleComponentMonitor
,LifecycleComponentMonitor
,NullComponentMonitor
,WriterComponentMonitor
public interface ComponentMonitor
A component monitor is responsible for monitoring the component instantiation
and method invocation.
- Author:
- Paul Hammant, Obie Fernandez, Aslak Hellesøy, Mauro Talevi
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescription<T> void
instantiated
(PicoContainer container, ComponentAdapter<T> componentAdapter, Constructor<T> constructor, Object instantiated, Object[] injected, long duration) Event thrown after the component has been instantiated using the given constructor.<T> Constructor<T>
instantiating
(PicoContainer container, ComponentAdapter<T> componentAdapter, Constructor<T> constructor) Event thrown as the component is being instantiated using the given constructor<T> void
instantiationFailed
(PicoContainer container, ComponentAdapter<T> componentAdapter, Constructor<T> constructor, Exception cause) Event thrown if the component instantiation failed using the given constructorvoid
invocationFailed
(Member member, Object instance, Exception cause) Event thrown if the component method invocation failed on the given instancevoid
invoked
(PicoContainer container, ComponentAdapter<?> componentAdapter, Member member, Object instance, long duration, Object[] args, Object retVal) Event thrown after the component method has been invoked on the given instanceinvoking
(PicoContainer container, ComponentAdapter<?> componentAdapter, Member member, Object instance, Object[] args) Event thrown as the component method is being invoked on the given instancevoid
lifecycleInvocationFailed
(MutablePicoContainer container, ComponentAdapter<?> componentAdapter, Method method, Object instance, RuntimeException cause) Event thrown if a lifecycle method invocation - start, stop or dispose - failed on the given instancenewBehavior
(Behavior behavior) A mechanism to monitor or override the Behaviors being made for components.newInjector
(Injector injector) A mechanism to monitor or override the Injectors being made for components.noComponentFound
(MutablePicoContainer container, Object componentKey) No Component has been found for the key in question.
-
Field Details
-
KEEP
-
-
Method Details
-
instantiating
<T> Constructor<T> instantiating(PicoContainer container, ComponentAdapter<T> componentAdapter, Constructor<T> constructor) Event thrown as the component is being instantiated using the given constructor- Parameters:
container
-componentAdapter
-constructor
- the Constructor used to instantiate the addComponent @return the constructor to use in instantiation (nearly always the same one as passed in)
-
instantiated
<T> void instantiated(PicoContainer container, ComponentAdapter<T> componentAdapter, Constructor<T> constructor, Object instantiated, Object[] injected, long duration) Event thrown after the component has been instantiated using the given constructor. This should be called for both Constructor and Setter DI.- Parameters:
container
-componentAdapter
-constructor
- the Constructor used to instantiate the addComponentinstantiated
- the component that was instantiated by PicoContainerinjected
- the components during instantiation.duration
- the duration in milliseconds of the instantiation
-
instantiationFailed
<T> void instantiationFailed(PicoContainer container, ComponentAdapter<T> componentAdapter, Constructor<T> constructor, Exception cause) Event thrown if the component instantiation failed using the given constructor- Parameters:
container
-componentAdapter
-constructor
- the Constructor used to instantiate the addComponentcause
- the Exception detailing the cause of the failure
-
invoking
Object invoking(PicoContainer container, ComponentAdapter<?> componentAdapter, Member member, Object instance, Object[] args) Event thrown as the component method is being invoked on the given instance- Parameters:
container
-componentAdapter
-member
-instance
- the component instanceargs
-
-
invoked
void invoked(PicoContainer container, ComponentAdapter<?> componentAdapter, Member member, Object instance, long duration, Object[] args, Object retVal) Event thrown after the component method has been invoked on the given instance- Parameters:
container
-componentAdapter
-member
-instance
- the component instanceduration
-args
-retVal
-
-
invocationFailed
Event thrown if the component method invocation failed on the given instance- Parameters:
member
-instance
- the component instancecause
- the Exception detailing the cause of the failure
-
lifecycleInvocationFailed
void lifecycleInvocationFailed(MutablePicoContainer container, ComponentAdapter<?> componentAdapter, Method method, Object instance, RuntimeException cause) Event thrown if a lifecycle method invocation - start, stop or dispose - failed on the given instance- Parameters:
container
-componentAdapter
-method
- the lifecycle Method invoked on the component instanceinstance
- the component instancecause
- the RuntimeException detailing the cause of the failure
-
noComponentFound
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. - Parameters:
container
-componentKey
-
-
newInjector
A mechanism to monitor or override the Injectors being made for components.- Parameters:
injector
-- Returns:
- an Injector. For most implementations, the same one as was passed in.
-
newBehavior
A mechanism to monitor or override the Behaviors being made for components.- Parameters:
behavior
-- Returns:
- an Behavior. For most implementations, the same one as was passed in.
-