1 20 package net.sf.clirr.ant; 21 22 import java.util.HashMap ; 23 import java.util.Map ; 24 25 import net.sf.clirr.core.DiffListenerAdapter; 26 import net.sf.clirr.core.Severity; 27 import net.sf.clirr.core.MessageTranslator; 28 import net.sf.clirr.core.ApiDifference; 29 import org.apache.tools.ant.Project; 30 import org.apache.tools.ant.Task; 31 32 final class AntLogger extends DiffListenerAdapter 33 { 34 private Task task; 35 36 private MessageTranslator translator = new MessageTranslator(); 37 38 private Map severityPrioMap = new HashMap (3); 39 40 AntLogger(Task task) 41 { 42 this.task = task; 43 severityPrioMap.put(Severity.INFO, new Integer (Project.MSG_INFO)); 44 severityPrioMap.put(Severity.WARNING, new Integer (Project.MSG_WARN)); 45 severityPrioMap.put(Severity.ERROR, new Integer (Project.MSG_ERR)); 46 } 47 48 public void reportDiff(ApiDifference difference) 49 { 50 final Severity severity = difference.getMaximumSeverity(); 51 final Integer prio = (Integer ) severityPrioMap.get(severity); 52 task.log( 53 severity.toString() + ": " + difference.getAffectedClass() 54 + ": " + difference.getReport(translator), 55 prio.intValue()); 56 } 57 } 58 | Popular Tags |