package com.sandwich.util.io.filecompiler; import java.io.File; import com.sandwich.util.io.ui.DefaultErrorPresenter; import com.sandwich.util.io.ui.ErrorPresenter; public class CompilationFailureLogger implements CompilationListener { private ErrorPresenter presenter; public CompilationFailureLogger(){ this(new DefaultErrorPresenter()); } public CompilationFailureLogger(ErrorPresenter presenter){ this.presenter = presenter; } public void compilationFailed(File src, String[] command, int exitCode, String errorMessage, Throwable x) { String lineSeparator = System.getProperty("line.separator"); presenter.displayError( lineSeparator + "*****************************************************************" + lineSeparator + "Compile Output:" + lineSeparator + errorMessage.replace(lineSeparator, lineSeparator + " ") + lineSeparator + "Compiling \"" + src.getAbsolutePath() + "\" failed." + lineSeparator + "The exit status was: " + exitCode + lineSeparator + "*****************************************************************" + lineSeparator + lineSeparator); } public void compilationSucceeded(File src, String[] command, String stdIo, Throwable x) { } }