@Test public void testInitializingExecutor() { task = spy(new MockAsyncInitializingTaskExecutor()); executor = new TestExceptionHandlingAsyncTaskExecutor(task); Throwable caught = catchThrowable(() -> { executor.afterPropertiesSet(); verify(task).afterPropertiesSet(); }); assertThat(caught).isNull(); }
@Override public void afterPropertiesSet() throws Exception { if (executor instanceof InitializingBean) { InitializingBean bean = (InitializingBean) executor; bean.afterPropertiesSet(); } }
ExceptionHandlingAsyncTaskExecutor implements AsyncTaskExecutor,
    InitializingBean, DisposableBean { @Override public void afterPropertiesSet() throws Exception { if (executor instanceof InitializingBean) { InitializingBean bean = (InitializingBean) executor; bean.afterPropertiesSet(); } } }
ExceptionHandlingAsyncTaskExecutor implements AsyncTaskExecutor,
    InitializingBean, DisposableBean { @Override public void afterPropertiesSet() throws Exception { if (executor instanceof InitializingBean) { InitializingBean bean = (InitializingBean) executor; bean.afterPropertiesSet(); } } ExceptionHandlingAsyncTaskExecutor(AsyncTaskExecutor executor); }
ExceptionHandlingAsyncTaskExecutor implements AsyncTaskExecutor,
    InitializingBean, DisposableBean { @Override public void afterPropertiesSet() throws Exception { if (executor instanceof InitializingBean) { InitializingBean bean = (InitializingBean) executor; bean.afterPropertiesSet(); } } ExceptionHandlingAsyncTaskExecutor(AsyncTaskExecutor executor); @Override void execute(Runnable task); @Override void execute(Runnable task, long startTimeout); @Override Future<?> submit(Runnable task); @Override Future<T> submit(Callable<T> task); @Override void destroy(); @Override void afterPropertiesSet(); }
ExceptionHandlingAsyncTaskExecutor implements AsyncTaskExecutor,
    InitializingBean, DisposableBean { @Override public void afterPropertiesSet() throws Exception { if (executor instanceof InitializingBean) { InitializingBean bean = (InitializingBean) executor; bean.afterPropertiesSet(); } } ExceptionHandlingAsyncTaskExecutor(AsyncTaskExecutor executor); @Override void execute(Runnable task); @Override void execute(Runnable task, long startTimeout); @Override Future<?> submit(Runnable task); @Override Future<T> submit(Callable<T> task); @Override void destroy(); @Override void afterPropertiesSet();  }