public void shutdown() { logger.finest("Stopping executors..."); scheduledExecutorService.notifyShutdownInitiated(); for (ExecutorService executorService : executors.values()) { executorService.shutdown(); } for (ExecutorService executorService : durableExecutors.values()) { executorService.shutdown(); } for (ExecutorService executorService : scheduleDurableExecutors.values()) { executorService.shutdown(); } scheduledExecutorService.shutdownNow(); cachedExecutorService.shutdown(); try { scheduledExecutorService.awaitTermination(AWAIT_TIME, TimeUnit.SECONDS); } catch (InterruptedException e) { currentThread().interrupt(); logger.finest(e); } try { cachedExecutorService.awaitTermination(AWAIT_TIME, TimeUnit.SECONDS); } catch (InterruptedException e) { currentThread().interrupt(); logger.finest(e); } executors.clear(); durableExecutors.clear(); scheduleDurableExecutors.clear(); }
public void shutdown() { logger.finest("Stopping executors..."); scheduledExecutorService.notifyShutdownInitiated(); for (ExecutorService executorService : executors.values()) { executorService.shutdown(); } for (ExecutorService executorService : durableExecutors.values()) { executorService.shutdown(); } for (ExecutorService executorService : scheduleDurableExecutors.values()) { executorService.shutdown(); } scheduledExecutorService.shutdownNow(); cachedExecutorService.shutdown(); try { scheduledExecutorService.awaitTermination(AWAIT_TIME, TimeUnit.SECONDS); } catch (InterruptedException e) { currentThread().interrupt(); logger.finest(e); } try { cachedExecutorService.awaitTermination(AWAIT_TIME, TimeUnit.SECONDS); } catch (InterruptedException e) { currentThread().interrupt(); logger.finest(e); } executors.clear(); durableExecutors.clear(); scheduleDurableExecutors.clear(); }