26 lines
732 B
Java
Raw Normal View History

package fr.monlouyan.bakefile;
import java.util.List;
public class BakeEngine {
private BakeCLI cli;
private BakefileParser parser;
private DependencyResolver resolver;
private CommandExecutor executor;
public BakeEngine(BakeCLI cli) {
this.cli = cli;
this.parser = new BakefileParser("Bakefile");
this.resolver = new DependencyResolver(cli.isDebug());
this.executor = new CommandExecutor(cli.isDebug());
}
public void run() {
List<Target> targets = parser.parse();
List<Target> targetsToBuild = resolver.resolve(targets, cli.getTargets());
for (Target target : targetsToBuild) {
executor.execute(target);
}
}
}