EmacsRenderer xref

View Javadoc
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 java.io.IOException;
7 import java.io.Writer;
8 import java.util.Iterator;
9 
10 import net.sourceforge.pmd.RuleViolation;
11 
12 /**
13  * Renderer to GNU Emacs parsable format.
14  */
15 public class EmacsRenderer extends AbstractIncrementingRenderer {
16 
17 public static final String NAME = "emacs";
18 
19 protected static final String EOL = System.getProperty("line.separator", "\n");
20 
21 public EmacsRenderer() {
22 	super(NAME, "GNU Emacs integration.");
23 }
24 
25 public String defaultFileExtension() { return "emacs"; }
26 
27 /**
28  * {@inheritDoc}
29  */
30 @Override
31 public void renderFileViolations(Iterator<RuleViolation> violations) throws IOException {
32 		Writer writer = getWriter();
33 		StringBuilder buf = new StringBuilder();
34 		while (violations.hasNext()) {
35 		 RuleViolation rv = violations.next();
36 		 buf.setLength(0);
37 		 buf.append(rv.getFilename());
38 		 buf.append(':').append(Integer.toString(rv.getBeginLine()));
39 		 buf.append(": ").append(rv.getDescription()).append(EOL);
40 		 writer.write(buf.toString());
41 		}
42 }
43 }

AltStyle によって変換されたページ (->オリジナル) /