@ Override public Object invoke ( Object o , Method method , Object [ ] objects ) throws Throwable { // throws ShutdownRequestedException when in shutdown mode _shutdown . startCall ( ) ; try { return method . invoke ( _object , objects ) ; } catch ( InvocationTargetException e ) { Throwable th = e . getTargetException ( ) ; try { throw th ; } catch ( Exception ex ) { throw ex ; } catch ( Throwable throwable ) { log . error ( method . toString ( ) , throwable ) ; throw throwable ; } } finally { _shutdown . endCall ( ) ; } }
Method from the interface . Checks for shutdown then dispatches the call