private <T> PushStream<T> cleanupThreads(boolean closeExecutorOnClose, Executor workerToUse, boolean releaseSchedulerOnClose, PushStream<T> stream) { if (closeExecutorOnClose || releaseSchedulerOnClose) { stream = stream.onClose(() -> { if (closeExecutorOnClose) { ((ExecutorService) workerToUse).shutdown(); } if (releaseSchedulerOnClose) { releaseScheduler(); } }).map(x -> x); } return stream; }
private <T> PushStream<T> cleanupThreads(boolean closeExecutorOnClose, Executor workerToUse, boolean releaseSchedulerOnClose, PushStream<T> stream) { if (closeExecutorOnClose || releaseSchedulerOnClose) { stream = stream.onClose(() -> { if (closeExecutorOnClose) { ((ExecutorService) workerToUse).shutdown(); } if (releaseSchedulerOnClose) { releaseScheduler(); } }).map(x -> x); } return stream; }
private <T> PushStream<T> cleanupThreads(boolean closeExecutorOnClose, Executor workerToUse, boolean releaseSchedulerOnClose, PushStream<T> stream) { if (closeExecutorOnClose || releaseSchedulerOnClose) { stream = stream.onClose(() -> { if (closeExecutorOnClose) { ((ExecutorService) workerToUse).shutdown(); } if (releaseSchedulerOnClose) { releaseScheduler(); } }).map(x -> x); } return stream; }