Package org.eclipse.birt.report.engine.extension
package org.eclipse.birt.report.engine.extension
This package defines 3 key interfaces ---- IReportItemQuery, IReportItemGeneration,
and IReportItemPresentation ---- that are used to process an extended item
at query preparation, report generation and report rendering times. Among the
three interfaces, only IReportItemPresentation is required, and the other two are
optional.
The execution flow is as follows:
- Design engine creates a new instance of the extended item.
- At report query preparation time, generation engine detects that the element
is an extended item. It dynamically creates the
IReportItemQuery
object and callsgetReportQueries()
to receive all the queries. - When report is generating, an
IReportItemGeneration
object is created for each instance of the extended item. - The onRowSets methos is called, and an array of rowsets is passed to the extension.
- On each of the row set, the extension could retrieve data row-by-row, and does processing.
- Check if the extension has state information to be serialized. If so, call serialize method.
- Does generation time clean up.
- At presentation time, an
IReportItemPresentation
object is created for each instance of the extended item. - Check if the extension needs deserialization. If so, restores the generation time state.
- The onRowSets methos is called, and an array of rowsets is passed to the extension.
- On each of the row set, the extension could retrieve data row-by-row, and does processing.
- Receives the returned results from the onRowSets method.
- Does generation time clean up.
Package Specification
Provides interfaces and classes to support engine extensions.- Since:
- 1.0
-
InterfacesClassDescriptionAn extension-point for data extraction.Represents the extended item generation extension, which processes the report item at report geenration time.IReportItemPreparation is initially designed for extended item, which handles its nested items.Represents the extended item presentation time extension.Defines the extended item query extension, which handles report query preparation.Defines a row that the extension might receive.defines an interface that wraps around a row set.