}
protected Object invokeMethod(Object componentInstance, Method method, Object[] args, PicoContainer container) throws Throwable {
ComponentMonitor componentMonitor = currentMonitor();
try {
componentMonitor.invoking(container, this, method, componentInstance);
long startTime = System.currentTimeMillis();
Object object = method.invoke(componentInstance, args);
componentMonitor.invoked(container,
this,
method, componentInstance, System.currentTimeMillis() - startTime);