package arida.ufc.br.moap.core.imp; import java.util.ArrayList; import java.util.List; import org.apache.log4j.Logger; /** * A Reporter represents the algorithm state and to check the pseudocode. * @author franzejr */ public class Reporter { public enum ReporterLevel { INFO, ERROR } private List<String> reports; private final Logger logger; public Reporter(Class<? extends Object> c) { this.logger = Logger.getLogger(c); this.reports = new ArrayList<String>(); } public String getAllReports() { return this.toString(); } /** * @return the report */ public String getReport() { return reports.get(reports.size() - 1); } /** * @param report the report to set */ public void setReport(String report) { logger.info(report); reports.add(report); } public void setReport(String report, ReporterLevel level) { if (level.equals(ReporterLevel.INFO)) { logger.info(report); } if (level.equals(ReporterLevel.ERROR)) { logger.error(report); } reports.add(report); } @Override public String toString() { //TODO return super.toString(); } }