1 package no.uio.ifi.refaktor.statistics.reports;
4 public class SimpleReport implements Report {
6 public static final String FILENAME_EXTENSION = ".txt";
7 private final StringBuilder builder;
8 private String heading;
11 public SimpleReport() {
12 builder = new StringBuilder();
18 public void setHeading(String heading) {
19 this.heading = heading;
23 public void addSection(String title) {
26 String line = title.replaceAll(".", "~");
35 public void addSubsection(String title) {
37 String line = title.replaceAll(".", "-");
45 private void resetIndent() {
49 private void indentOne() {
54 public void addData(String label, Object object) {
55 addData(label, object.toString());
59 public void addData(String label, String data) {
60 append(label + ": " + data);
65 public String generateReport() {
66 String line = heading.replaceAll(".", "=");
67 builder.insert(0, heading + newline() + line + newline() + newline());
68 return builder.toString();
71 private void appendNewline() {
72 builder.append(newline());
75 private String newline() {
79 private void append(String string) {
80 builder.append(indent + string);