org.incava.analysis
Class Report

java.lang.Object
  extended by org.incava.analysis.Report
Direct Known Subclasses:
ContextReport, TerseReport

public abstract class Report
extends java.lang.Object

Reports errors (violations), in a format that is determined by the subclass.


Field Summary
protected  java.lang.String fileName
          The file to which this report currently applies.
 
Constructor Summary
Report(java.io.OutputStream os)
          Creates a report for the given output stream.
Report(java.io.OutputStream os, java.io.File file)
          Creates a report for the given output stream, and file.
Report(java.io.OutputStream os, java.lang.String source)
          Creates a report for the given output stream, and string source.
Report(java.io.Writer writer)
          Creates a report for the given writer.
Report(java.io.Writer writer, java.io.File file)
          Creates a report for the given writer, and a file source.
Report(java.io.Writer writer, java.lang.String source)
          Creates a report for the given writer, and a string source.
 
Method Summary
 void addViolation(Violation v)
          Adds the given violation.
 void flush()
          Writes all violations, and clears the list.
 java.util.Set getViolations()
          Exists only for testing.
 void reset(java.io.File file)
          Associates the given file with the list of violations, including that are adding to this report later, i.e., prior to flush.
 void reset(java.lang.String source)
          Associates the given string source with the list of violations, including that are adding to this report later, i.e., prior to flush.
protected abstract  java.lang.String toString(Violation violation)
          Returns a string representing the given violation, consistent with the format of the Report subclass.
protected  void write(java.lang.String str)
          Sends the given string to the writer associated with this Report.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fileName

protected java.lang.String fileName
The file to which this report currently applies. By default, this is '-', denoting standard output.

Constructor Detail

Report

public Report(java.io.Writer writer)
Creates a report for the given writer.

Parameters:
writer - The writer associated with this report.

Report

public Report(java.io.OutputStream os)
Creates a report for the given output stream.

Parameters:
os - The output stream associated with this report.

Report

public Report(java.io.Writer writer,
              java.lang.String source)
Creates a report for the given writer, and a string source.

Parameters:
writer - The writer associated with this report.
source - The source code to which this report applies.

Report

public Report(java.io.Writer writer,
              java.io.File file)
Creates a report for the given writer, and a file source.

Parameters:
writer - The writer associated with this report.
file - The file, containing source code, to which this report applies.

Report

public Report(java.io.OutputStream os,
              java.lang.String source)
Creates a report for the given output stream, and string source.

Parameters:
os - The output stream associated with this report.
source - The source code to which this report applies.

Report

public Report(java.io.OutputStream os,
              java.io.File file)
Creates a report for the given output stream, and file.

Parameters:
os - The output stream associated with this report.
file - The file, containing source code, to which this report applies.
Method Detail

reset

public void reset(java.io.File file)
Associates the given file with the list of violations, including that are adding to this report later, i.e., prior to flush.

Parameters:
file - The file associated with the set of violations.

reset

public void reset(java.lang.String source)
Associates the given string source with the list of violations, including that are adding to this report later, i.e., prior to flush.

Parameters:
source - The source code associated with the set of violations.

flush

public void flush()
Writes all violations, and clears the list.


addViolation

public void addViolation(Violation v)
Adds the given violation.

Parameters:
v - The violation being added.

getViolations

public java.util.Set getViolations()
Exists only for testing.


toString

protected abstract java.lang.String toString(Violation violation)
Returns a string representing the given violation, consistent with the format of the Report subclass.

Parameters:
violation - The violation to represent as a string.

write

protected void write(java.lang.String str)
Sends the given string to the writer associated with this Report.

Parameters:
str - The string to be written.