org.marketcetera.strategy.ExecutionEngine Maven / Gradle / Ivy
package org.marketcetera.strategy;
import org.marketcetera.core.ClassVersion;
/* $License$ */
/**
* Executes a strategy script.
*
* @author Colin DuPlantis
* @version $Id: ExecutionEngine.java 16154 2012-07-14 16:34:05Z colin $
* @since 1.0.0
*/
@ClassVersion("$Id: ExecutionEngine.java 16154 2012-07-14 16:34:05Z colin $")
interface ExecutionEngine
{
/**
* Prepares the ExecutionEngine
to execute the given Strategy
.
*
* @param inStrategy a Strategy
value
* @param inProcessedScript a String
value containing the actual text of the strategy to execute
* @throws StrategyException if an error occurs
*/
void prepare(Strategy inStrategy,
String inProcessedScript)
throws StrategyException;
/**
* Starts the execution of the {@link Strategy}.
*
* @return an Object
containing a reference to the {@link Strategy} being executed
* @throws StrategyException if an error occurs
*/
Object start()
throws StrategyException;
/**
* Stops the execution of the {@link Strategy}.
*
* @throws StrategyException if an error occurs
*/
void stop()
throws StrategyException;
}