2005-10-04 00:11:20 0.90
Interface - de.spieleck.app.jacson.JacsonReport
Reports do not act on chunks, they process events fired from
Filters and Evaluators either at scanning or summary time.
Jacson comes with 5 preprogrammed reports in the package
de.spieleck.app.jacson.report
.
Note all these
currently output to a PrintWriter, though the APi makes no
restrictions for Reports to output to (say) a database.
CSVReport
-
Outputs data to a stream in Comma-Separated-Value format.
GoogleReport
-
A report to initiate a Google Search via
the Google search web service. You need a license
key to use it!
PrintingReport
-
Outputs data in a simple format. Most useful as a superclass
for all Reports outputting to a Writer.
TestReport
-
This report is used for application level regression tests,
it compares the events generated by Jacson to the ones
previously recorded by a PrintingReport and reports
differences.
ValuePrintingReport
-
Outputs data values only. This is useful as a light
output for example in combination with the LoggingEvaluator.
Log4jReport
-
Passes the filtered chunks to Log4j. Jacson grouping is
mapped to Log4j Cathegories. Log4j allows two things:
Simple reformatting of output and forwarding output to
a huge variety of destinations.
MailReport
-
Sends chunks out as mail.
XMLReport
-
Outputs data in a (mostly compatible unless there
is a character encoding problem) XML format.
XSLTReport
-
Converts the Report Events to XML Events and passes it
through an (configurable) XSLT Stylesheet. When used without
stylesheet this creates XML with correct character encoding.
This allows very flexible conversion and customization of output.
But this can also be slightly heavy in terms of memory usage
in case there is lots of output data. But it is usually worth
the effort. When the mime type of the stylesheet suggests
and Jakarta-Fop is in the classpath, the XSLTReport
automagically postprocesses it's output with FOP.