com.jrefinery.report.event
Interface ReportListener

All Superinterfaces:
java.util.EventListener
All Known Subinterfaces:
Function
All Known Implementing Classes:
AbstractFunction, ItemColumnQuotientFunction, LevelledExpressionList

public interface ReportListener
extends java.util.EventListener

ReportListeners get informed whenever the state of a report changes.

You should be aware that most events occur more than once. For example, the reportStarted event will be triggered every time the report is regenerated.

When handling these events, use the reportState to track the current changes of the report.

Author:
Thomas Morgner

Method Summary
 void groupFinished(ReportEvent event)
          Receives notification that a group is finished.
 void groupStarted(ReportEvent event)
          Receives notification that a new group has started.
 void itemsAdvanced(ReportEvent event)
          Receives notification that a new row has been read.
 void itemsFinished(ReportEvent event)
          Receives notification that a group of item bands has been completed.
 void itemsStarted(ReportEvent event)
          Receives notification that a group of item bands is about to be processed.
 void pageFinished(ReportEvent event)
          Deprecated. Implement the PageEventListener interface to receive page events.
 void pageStarted(ReportEvent event)
          Deprecated. Implement the PageEventListener interface to receive page events.
 void reportDone(ReportEvent event)
          Receives notification that report generation has completed, the report footer was printed, no more output is done.
 void reportFinished(ReportEvent event)
          Receives notification that report generation has finished (the last record is read and all groups are closed).
 void reportInitialized(ReportEvent event)
          Receives notification that report generation initializes the current run.
 void reportStarted(ReportEvent event)
          Receives notification that report generation has started.
 

Method Detail

reportInitialized

public void reportInitialized(ReportEvent event)
Receives notification that report generation initializes the current run.

The event carries a ReportState.Started state. Use this to initialize the report.

Parameters:
event - The event.

reportStarted

public void reportStarted(ReportEvent event)
Receives notification that report generation has started.

The event carries a ReportState.Started state. Use this to prepare the report header.

Parameters:
event - The event.

reportFinished

public void reportFinished(ReportEvent event)
Receives notification that report generation has finished (the last record is read and all groups are closed).

Parameters:
event - The event.

reportDone

public void reportDone(ReportEvent event)
Receives notification that report generation has completed, the report footer was printed, no more output is done. This is a helper event to shut down the output service.

Parameters:
event - The event.

pageStarted

public void pageStarted(ReportEvent event)
Deprecated. Implement the PageEventListener interface to receive page events.

Receives notification that a new page is being started.

This method is deprecated and moved to the PageEventListener interface. PageEvents will no longer be forwarded through this interface as soon as version 0.8.5 is published

Parameters:
event - The event.

pageFinished

public void pageFinished(ReportEvent event)
Deprecated. Implement the PageEventListener interface to receive page events.

Receives notification that a page is completed.

This method is deprecated and moved to the PageEventListener interface. PageEvents will no longer be forwarded through this interface as soon as version 0.8.5 is published

Parameters:
event - The event.

groupStarted

public void groupStarted(ReportEvent event)
Receives notification that a new group has started.

The group can be determined by the report state's getCurrentGroup() function.

Parameters:
event - The event.

groupFinished

public void groupFinished(ReportEvent event)
Receives notification that a group is finished.

The group can be determined by the report state's getCurrentGroup() function.

Parameters:
event - The event.

itemsStarted

public void itemsStarted(ReportEvent event)
Receives notification that a group of item bands is about to be processed.

The next events will be itemsAdvanced events until the itemsFinished event is raised.

Parameters:
event - The event.

itemsFinished

public void itemsFinished(ReportEvent event)
Receives notification that a group of item bands has been completed.

The itemBand is finished, the report starts to close open groups.

Parameters:
event - The event.

itemsAdvanced

public void itemsAdvanced(ReportEvent event)
Receives notification that a new row has been read.

This event is raised before an ItemBand is printed.

Parameters:
event - The event.