package com.sequenceiq.cloudbreak.cloud.reactor.config; import java.util.concurrent.ScheduledThreadPoolExecutor; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import com.google.common.util.concurrent.ListeningScheduledExecutorService; import com.google.common.util.concurrent.MoreExecutors; import com.google.common.util.concurrent.ThreadFactoryBuilder; @Configuration public class CloudReactorConfiguration { @Value("${cb.cloud.api.executorservice.pool.size:}") private int executorServicePoolSize; @Bean ListeningScheduledExecutorService listeningScheduledExecutorService() { return MoreExecutors .listeningDecorator(new ScheduledThreadPoolExecutor(executorServicePoolSize, new ThreadFactoryBuilder().setNameFormat("cloud-reactor-%d").build())); } }