jacson logo courtesy from Doris & Frank.
Jacson How it works? > Plugin Classes > Reports
2005-10-04 00:11:20 0.90

Reports

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.

Sourceforge Logo