Thanks @luciano-sabenca-movile! A couple comments: * I'd modify the ChefService interface and the strategies to have only a method that accepts a regular `ExecutorService`, and internally call the `listeningDecorator`. It is safe, as it will do nothing if the passed object is already a `ListeningExecutorService` and will simplify the interfaces considerably. * Is it really needed to split the classes and create the base class? The logic is not that long. Couldn't the methods in the base class be part of the class itself? As I see it, strategies represent one concrete behavior, and it is unlikely to have subclasses of the "base" class. Subclassing just the strategy class could be a more common approach if someone needs to customize them.
--- Reply to this email directly or view it on GitHub: https://github.com/jclouds/jclouds-chef/pull/47#issuecomment-48971480
