Package org.jfree.report.modules.gui.swing.printing

# Class PrintReportProcessor

java.lang.Object
org.jfree.report.flow.AbstractReportProcessor
org.jfree.report.flow.paginating.PaginatingReportProcessor
org.jfree.report.modules.gui.swing.printing.PrintReportProcessor

All Implemented Interfaces:
  `Pageable`, `ReportProcessor`

public class PrintReportProcessor extends PaginatingReportProcessor implements Pageable
A paginating report processor that outputs to Pageables.

Author:
  Thomas Morgner

## Field Summary

### Fields inherited from interface java.awt.print.Pageable

`UNKNOWN_NUMBER_OF_PAGES`

## Constructor Summary

Constructors
Constructor
Description
`PrintReportProcessor(ReportJob job)`

## Method Summary

Modifier and Type
Method
Description
`void`
`close()`
`protected org.jfree.layouting.modules.output.graphics.GraphicsOutputProcessor`
`getGraphicsProcessor()`
`protected ReportJob`
`getJob()`
`int`
`getNumberOfPages()`
Returns the number of pages in the set.
`org.jfree.layouting.modules.output.graphics.PageDrawable`
`getPageDrawable(int pageIndex)`
`PageFormat`
`getPageFormat(int pageIndex)`
Returns the `PageFormat` of the page specified by `pageIndex`.
`Printable`
`getPrintable(int pageIndex)`
Returns the `Printable` instance responsible for rendering the page specified by `pageIndex`.
`boolean`
`isError()`
`boolean`
`paginate()`
`protected org.jfree.layouting.modules.output.graphics.PageDrawable`
`processPage(int page)`
`final void`
`processReport(ReportJob job)`
Throws an unsupported operation exception.

### Methods inherited from class org.jfree.report.flow.paginating.PaginatingReportProcessor

`createTarget, getLogicalPageState, getOutputProcessor, getPhysicalPageState, isPaginated, prepareReportProcessing, processPage, processPaginationRun`

### Methods inherited from class org.jfree.report.flow.AbstractReportProcessor

`createFlowControler, createReportContext, processReportRun`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### PrintReportProcessor

public PrintReportProcessor(ReportJob job)

## Method Details

### getGraphicsProcessor

protected org.jfree.layouting.modules.output.graphics.GraphicsOutputProcessor getGraphicsProcessor()

### isError

public boolean isError()

### getJob

protected ReportJob getJob()

### close

public void close()

### processPage

protected org.jfree.layouting.modules.output.graphics.PageDrawable processPage(int page) throws ReportDataFactoryException, DataSourceException, ReportProcessingException, org.jfree.layouting.StateException

Throws:
  `ReportDataFactoryException`
  `DataSourceException`
  `ReportProcessingException`
  `org.jfree.layouting.StateException`

### getNumberOfPages

public int getNumberOfPages()
Returns the number of pages in the set. To enable advanced printing features, it is recommended that `Pageable` implementations return the true number of pages rather than the UNKNOWN_NUMBER_OF_PAGES constant.

Specified by:
  `getNumberOfPages` in interface `Pageable`
Returns:
  the number of pages in this `Pageable`.

### paginate

public boolean paginate()

### getPageFormat

public PageFormat getPageFormat(int pageIndex) throws IndexOutOfBoundsException
Returns the `PageFormat` of the page specified by `pageIndex`.

Specified by:
  `getPageFormat` in interface `Pageable`
Parameters:
  `pageIndex` - the zero based index of the page whose `PageFormat` is being requested
Returns:
  the `PageFormat` describing the size and orientation.
Throws:
  `IndexOutOfBoundsException` - if the `Pageable` does not contain the requested page.

### getPrintable

public Printable getPrintable(int pageIndex) throws IndexOutOfBoundsException
Returns the `Printable` instance responsible for rendering the page specified by `pageIndex`.

Specified by:
  `getPrintable` in interface `Pageable`
Parameters:
  `pageIndex` - the zero based index of the page whose `Printable` is being requested
Returns:
  the `Printable` that renders the page.
Throws:
  `IndexOutOfBoundsException` - if the `Pageable` does not contain the requested page.

### getPageDrawable

public org.jfree.layouting.modules.output.graphics.PageDrawable getPageDrawable(int pageIndex)

### processReport

public final void processReport(ReportJob job)
Throws an unsupported operation exception. Printing is controlled by a framework which calls this pageable class for each page. Therefore, printing has to be invoked from outside.

Specified by:
  `processReport` in interface `ReportProcessor`
Parameters:
  `job` -
Throws:
  `UnsupportedOperationException`