root / trunk / JavaChecker / jsrc / ua / gradsoft / javachecker / DefectReportItem.java @ 15107

1
/*
2
 * DefectReport.java
3
 *
4
 */
5
6
package ua.gradsoft.javachecker;
7
8
import java.io.PrintStream;
9
import ua.gradsoft.javachecker.checkers.AbstractChecker;
10
11
12
13
/**
14
 *Defect report item.
15
 * @author  Ruslan Shevchenko
16
 */
17
public class DefectReportItem {
18
    
19
    /** Creates a new instance of DefectReport */
20
    public DefectReportItem(String category,
21
                            String description,
22
                            FileAndLine marker,
23
                            AbstractChecker checker)
24
    {
25
     category_=category;
26
     description_=description;
27
     marker_=marker;
28
     checker_=checker;
29
    }
30
    
31
    public void println(PrintStream out, ReportFormat format)
32
    {
33
     switch(format) {
34
         case TEXT:
35
          out.print(marker_.getFname());   
36
          out.print(":");   
37
          out.print(marker_.getLine());   
38
          out.print(":(");   
39
          out.print(category_);
40
          out.print(") ");
41
          out.print(description_);
42
          out.println();
43
          break;
44
         case HTML:
45
             out.print("<tr>");
46
             out.print("<td>");
47
             out.print(category_);
48
             out.print(":");
49
             out.print("</td><td>");
50
             out.print(description_);
51
             out.print("</td><td>");
52
             out.print("(file:");
53
             out.print(marker_.getFname());
54
             out.print(",line:"+marker_.getLine());
55
             out.print(")");
56
             out.println("</td>");
57
             out.println("</tr>");
58
           break;
59
         default:
60
             // UNKNOWN
61
          out.println("Warning: unknown output format:"+format);
62
          // output as text.
63
          out.print(marker_.getFname());   
64
          out.print(":");   
65
          out.print(marker_.getLine());   
66
          out.print(":(");   
67
          out.print(category_);
68
          out.print(") ");
69
          out.print(description_);
70
          out.println();                     
71
     }  
72
    }
73
    
74
    public String getCategory()
75
    { return category_; }
76
    
77
    public String getDescription()
78
    { return description_; }
79
    
80
    public FileAndLine  getFileAndLine()
81
    { return marker_; }
82
    
83
    public AbstractChecker getChecker()
84
    { return checker_; }
85
86
    private String category_;
87
    private String description_;
88
    private FileAndLine marker_;
89
    private AbstractChecker checker_;
90
}