package org.greencheek.elasticacheconfig.confighandler; import org.greencheek.elasticacheconfig.domain.ConfigInfo; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * Created by dominictootell on 20/07/2014. */ public class AsyncExecutorServiceConfigInfoMessageHandler implements AsyncConfigInfoMessageHandler { private final ExecutorService executor = Executors.newSingleThreadExecutor(); private final ConfigInfoProcessor processor; public AsyncExecutorServiceConfigInfoMessageHandler(ConfigInfoProcessor configInfoProcessor) { processor = configInfoProcessor; } @Override public void processConfig(final ConfigInfo info) { executor.submit(new Runnable() { @Override public void run() { processor.processConfig(info); } }); } @Override public void shutdown() { executor.shutdownNow(); } }