[Clirr-devel] CVS: clirr/src/java/net/sf/clirr/ant AntLogger.java,1.6,1.7 AntTask.java,1.12,1.13 Cha
Status: Alpha
Brought to you by:
lkuehne
From: <lk...@us...> - 2004-06-27 14:22:16
|
Update of /cvsroot/clirr/clirr/src/java/net/sf/clirr/ant In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2365/src/java/net/sf/clirr/ant Modified Files: AntLogger.java AntTask.java ChangeCounter.java Log Message: allow differentiating between src and binary compatibility problems Index: AntLogger.java =================================================================== RCS file: /cvsroot/clirr/clirr/src/java/net/sf/clirr/ant/AntLogger.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- AntLogger.java 22 May 2004 13:26:03 -0000 1.6 +++ AntLogger.java 27 Jun 2004 14:21:34 -0000 1.7 @@ -44,7 +44,7 @@ public void reportDiff(ApiDifference difference) { - final Severity severity = difference.getSeverity(); + final Severity severity = difference.getMaximumSeverity(); final Integer prio = (Integer) severityPrioMap.get(severity); task.log(severity.toString() + ": " + difference.getReport(), prio.intValue()); } Index: AntTask.java =================================================================== RCS file: /cvsroot/clirr/clirr/src/java/net/sf/clirr/ant/AntTask.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- AntTask.java 13 Jun 2004 10:44:25 -0000 1.12 +++ AntTask.java 27 Jun 2004 14:21:34 -0000 1.13 @@ -91,8 +91,10 @@ private Path newClassPath = null; private Path origClassPath = null; - private boolean failOnError = true; - private boolean failOnWarning = false; + private boolean failOnBinError = true; + private boolean failOnBinWarning = false; + private boolean failOnSrcError = true; + private boolean failOnSrcWarning = false; private List formatters = new LinkedList(); @@ -156,14 +158,24 @@ this.newFiles = newFiles; } - public void setFailOnError(boolean failOnError) + public void setFailOnBinError(boolean failOnBinError) { - this.failOnError = failOnError; + this.failOnBinError = failOnBinError; } - public void setFailOnWarning(boolean failOnWarning) + public void setFailOnBinWarning(boolean failOnBinWarning) { - this.failOnWarning = failOnWarning; + this.failOnBinWarning = failOnBinWarning; + } + + public void setFailOnSrcError(boolean failOnSrcError) + { + this.failOnSrcError = failOnSrcError; + } + + public void setFailOnSrcWarning(boolean failOnSrcWarning) + { + this.failOnSrcWarning = failOnSrcWarning; } public void addFormatter(Formatter formatter) @@ -253,9 +265,14 @@ throw new BuildException(ex.getMessage()); } - if (counter.getWarnings() > 0 && failOnWarning || counter.getErrors() > 0 && failOnError) + if (counter.getBinWarnings() > 0 && failOnBinWarning || counter.getBinErrors() > 0 && failOnBinError) + { + throw new BuildException("detected binary incompatible API changes"); + } + + if (counter.getSrcWarnings() > 0 && failOnSrcWarning || counter.getSrcErrors() > 0 && failOnSrcError) { - throw new BuildException("detected incompatible API changes"); + throw new BuildException("detected source incompatible API changes"); } } Index: ChangeCounter.java =================================================================== RCS file: /cvsroot/clirr/clirr/src/java/net/sf/clirr/ant/ChangeCounter.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- ChangeCounter.java 22 May 2004 13:26:03 -0000 1.4 +++ ChangeCounter.java 27 Jun 2004 14:21:34 -0000 1.5 @@ -25,43 +25,79 @@ final class ChangeCounter extends DiffListenerAdapter { - private int infos = 0; - private int warnings = 0; - private int errors = 0; + private int binInfos = 0; + private int binWarnings = 0; + private int binErrors = 0; + + private int srcInfos = 0; + private int srcWarnings = 0; + private int srcErrors = 0; + public ChangeCounter() { } - public int getInfos() + public int getBinInfos() + { + return binInfos; + } + + public int getBinWarnings() + { + return binWarnings; + } + + public int getBinErrors() + { + return binErrors; + } + + public int getSrcInfos() { - return infos; + return srcInfos; } - public int getWarnings() + public int getSrcWarnings() { - return warnings; + return srcWarnings; } - public int getErrors() + public int getSrcErrors() { - return errors; + return srcErrors; } public void reportDiff(ApiDifference difference) { - if (Severity.ERROR.equals(difference.getSeverity())) + final Severity binSeverity = difference.getBinaryCompatibilitySeverity(); + if (Severity.ERROR.equals(binSeverity)) { - errors += 1; + binErrors += 1; } - else if (Severity.WARNING.equals(difference.getSeverity())) + else if (Severity.WARNING.equals(binSeverity)) { - warnings += 1; + binWarnings += 1; } - else if (Severity.INFO.equals(difference.getSeverity())) + else if (Severity.INFO.equals(binSeverity)) { - infos += 1; + binInfos += 1; } + + final Severity srcSeverity = difference.getSourceCompatibilitySeverity(); + if (Severity.ERROR.equals(srcSeverity)) + { + srcErrors += 1; + } + else if (Severity.WARNING.equals(srcSeverity)) + { + srcWarnings += 1; + } + else if (Severity.INFO.equals(srcSeverity)) + { + srcInfos += 1; + } + } } |