Clover coverage report - PMD - 3.9 Coverage timestamp: Tue Dec 19 2006 09:38:44 EST FRAMES NO FRAMES |
file stats: | LOC: | 52 |  | Methods: | 1
| NCLOC: | 27 |  | 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.IRuleViolation;
7 |  | import net.sourceforge.pmd.PMD;
8 |  | import net.sourceforge.pmd.Report;
9 |  |
10 |  | import java.io.IOException;
11 |  | import java.io.Writer;
12 |  | import java.util.Iterator;
13 |  |
14 |  | /**
15 |  | * <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>
16 |  | * <p/>
17 |  | * <P>Output lines are in the form:</P>
18 |  | * <p/>
19 |  | * <P><CODE>pathtojavafile(line#, NameOfRule):&nbsp; Specific rule violation message</CODE></P>
20 |  | * <p/>
21 |  | * <P>For example:</P>
22 |  | * <p/>
23 |  | * <P><CODE>D:\java\pmd\src\src\net\sourceforge\pmd\renderers\TextPadRenderer.java(24, AtLeastOneConstructor):&nbsp; Each class should declare at least one constructor
24 |  | * <br>D:\java\pmd\src\src\net\sourceforge\pmd\renderers\TextPadRenderer.java(26, VariableNamingConventionsRule):&nbsp; Variables should start with a lowercase character
25 |  | * <br>D:\java\pmd\src\src\net\sourceforge\pmd\renderers\TextPadRenderer.java(31, ShortVariable):&nbsp; Avoid variables with short names</CODE></P>
26 |  | *
27 |  | * @author Jeff Epstein, based upon <a href="EmacsRenderer.html">EmacsRenderer</a>, Tuesday, September 23, 2003
28 |  | */
29 |  | public class TextPadRenderer extends AbstractRenderer {
30 | 5 | public void render(Writer writer, Report report) throws IOException {
31 | 5 | StringBuffer buf = new StringBuffer();
32 | 5 | Iterator i;
33 | 5 | try {
34 | 5 | i = report.iterator();
35 |  | } catch (NullPointerException npx) {
36 | 1 | throw new NullPointerException("ERROR in " + this.getClass().getName() + ".render: Parameter report is null.");
37 |  | }
38 | 4 | while (i.hasNext()) {
39 | 3 | IRuleViolation rv = (IRuleViolation) i.next();
40 | 3 | buf.setLength(0);
41 |  | //Filename
42 | 3 | buf.append(PMD.EOL).append(rv.getFilename() + "(");
43 |  | //Line number
44 | 3 | buf.append(Integer.toString(rv.getBeginLine())).append(", ");
45 |  | //Name of violated rule
46 | 3 | buf.append(rv.getRule().getName()).append("): ");
47 |  | //Specific violation message
48 | 3 | buf.append(rv.getDescription());
49 | 3 | writer.write(buf.toString());
50 |  | }
51 |  | }
52 |  | }