001    package com.hammurapi.flow.runtime;
002    
003    import java.util.concurrent.Executor;
004    
005    /**
006     * This interface allows to build stacks of executors with different capabilities. 
007     * @author Pavel Vlasov
008     */
009    public interface PickyExecutor extends Executor {
010            
011            /**
012             * @param command
013             * @return True if given executor can execute the command.
014             */
015            boolean canExecute(Runnable command);
016    
017    }