[core] CPD - implement CPDReportRenderer for all renderers

This commit is contained in:
Andreas Dangel committed 2023-01-19 16:24:55 +01:00
1 parent 774a8fbadf
commit 125edb4fed
4 files changed
+22 -4

No files matched your search

@@ -189,7 +189,7 @@ public class CPDConfiguration extends AbstractConfiguration {
setRenderer((Renderer) renderer);
} else {
System.err.println("Class '" + className + "' is not a supported renderer, defaulting to SimpleRenderer.");
setRenderer(new SimpleRenderer());
setRenderer((CPDReportRenderer) new SimpleRenderer());
}
}
}
@@ -13,8 +13,9 @@ import org.apache.commons.lang3.StringEscapeUtils;
import net.sourceforge.pmd.PMD;
import net.sourceforge.pmd.cpd.renderer.CPDRenderer;
import net.sourceforge.pmd.cpd.renderer.CPDReportRenderer;
public class CSVRenderer implements Renderer, CPDRenderer {
public class CSVRenderer implements Renderer, CPDRenderer, CPDReportRenderer {
private final char separator;
private final boolean lineCountPerFile;
@@ -81,4 +82,9 @@ public class CSVRenderer implements Renderer, CPDRenderer {
}
writer.flush();
}
@Override
public void render(CPDReport report, Writer writer) throws IOException {
render(report.getMatches().iterator(), writer);
}
}
@@ -11,9 +11,10 @@ import java.util.Iterator;
import net.sourceforge.pmd.PMD;
import net.sourceforge.pmd.cpd.renderer.CPDRenderer;
import net.sourceforge.pmd.cpd.renderer.CPDReportRenderer;
import net.sourceforge.pmd.util.StringUtil;
public class SimpleRenderer implements Renderer, CPDRenderer {
public class SimpleRenderer implements Renderer, CPDRenderer, CPDReportRenderer {
private String separator;
private boolean trimLeadingWhitespace;
@@ -88,4 +89,9 @@ public class SimpleRenderer implements Renderer, CPDRenderer {
}
writer.flush();
}
@Override
public void render(CPDReport report, Writer writer) throws IOException {
render(report.getMatches().iterator(), writer);
}
}
@@ -11,8 +11,9 @@ import java.util.Iterator;
import net.sourceforge.pmd.PMD;
import net.sourceforge.pmd.cpd.renderer.CPDRenderer;
import net.sourceforge.pmd.cpd.renderer.CPDReportRenderer;
public class VSRenderer implements Renderer, CPDRenderer {
public class VSRenderer implements Renderer, CPDRenderer, CPDReportRenderer {
@Override
public String render(Iterator<Match> matches) {
@@ -39,4 +40,9 @@ public class VSRenderer implements Renderer, CPDRenderer {
}
writer.flush();
}
@Override
public void render(CPDReport report, Writer writer) throws IOException {
render(report.getMatches().iterator(), writer);
}
}