Clover coverage report - PMD - 3.7
Coverage timestamp: Wed May 31 2006 09:25:59 EDT

file stats: | LOC: | 49 |  | Methods: | 1
| NCLOC: | 24 |  | Classes: | 1

Source file | Conditionals | Statements | Methods | TOTAL

TextPadRenderer.java

100%

100%

100%

100%

1 |  | /**
2 |  | * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
3 |  | */
4 |  | package net.sourceforge.pmd.renderers;
5 |  |
6 |  | import net.sourceforge.pmd.PMD;
7 |  | import net.sourceforge.pmd.Report;
8 |  | import net.sourceforge.pmd.IRuleViolation;
9 |  |
10 |  | import java.util.Iterator;
11 |  |
12 |  | /**
13 |  | * <P>A Renderer for running PMD via a TextPad 'tool'. <a href="http://www.textpad.com">TextPad</a> is a text editor by Helios Software Solutions.</P>
14 |  | * <p/>
15 |  | * <P>Output lines are in the form:</P>
16 |  | * <p/>
17 |  | * <P><CODE>pathtojavafile(line#, NameOfRule):&nbsp; Specific rule violation message</CODE></P>
18 |  | * <p/>
19 |  | * <P>For example:</P>
20 |  | * <p/>
21 |  | * <P><CODE>D:\java\pmd\src\src\net\sourceforge\pmd\renderers\TextPadRenderer.java(24, AtLeastOneConstructor):&nbsp; Each class should declare at least one constructor
22 |  | * <br>D:\java\pmd\src\src\net\sourceforge\pmd\renderers\TextPadRenderer.java(26, VariableNamingConventionsRule):&nbsp; Variables should start with a lowercase character
23 |  | * <br>D:\java\pmd\src\src\net\sourceforge\pmd\renderers\TextPadRenderer.java(31, ShortVariable):&nbsp; Avoid variables with short names</CODE></P>
24 |  | *
25 |  | * @author Jeff Epstein, based upon <a href="EmacsRenderer.html">EmacsRenderer</a>, Tuesday, September 23, 2003
26 |  | */
27 |  | public class TextPadRenderer extends AbstractRenderer implements Renderer {
28 | 2 | public String render(Report report) {
29 | 2 | StringBuffer buf = new StringBuffer();
30 | 2 | Iterator i;
31 | 2 | try {
32 | 2 | i = report.iterator();
33 |  | } catch (NullPointerException npx) {
34 | 1 | throw new NullPointerException("ERROR in " + this.getClass().getName() + ".render: Parameter report is null.");
35 |  | }
36 | 1 | while (i.hasNext()) {
37 | 1 | IRuleViolation rv = (IRuleViolation) i.next();
38 |  | //Filename
39 | 1 | buf.append(PMD.EOL).append(rv.getFilename() + "(");
40 |  | //Line number
41 | 1 | buf.append(Integer.toString(rv.getBeginLine())).append(", ");
42 |  | //Name of violated rule
43 | 1 | buf.append(rv.getRule().getName()).append("): ");
44 |  | //Specific violation message
45 | 1 | buf.append(rv.getDescription());
46 |  | }
47 | 1 | return buf.toString();
48 |  | }
49 |  | }