## 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:
  java.awt.print.Pageable, ReportProcessor

    public class PrintReportProcessor

extends PaginatingReportProcessor
implements java.awt.print.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
`PrintReportProcessor(ReportJob job)`

Method Summary
`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)`
`java.awt.print.PageFormat` `getPageFormat(int pageIndex)` Returns the `PageFormat` of the page specified by `pageIndex`.
`java.awt.print.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)`
`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 Detail

### PrintReportProcessor

    public PrintReportProcessor(ReportJob job)

Method Detail

### 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 `java.awt.print.Pageable`
  Returns:
    the number of pages in this `Pageable`.

### paginate

    public boolean paginate()

### getPageFormat

    public java.awt.print.PageFormat getPageFormat(int pageIndex)
                                            throws java.lang.IndexOutOfBoundsException

  Returns the `PageFormat` of the page specified by `pageIndex`.

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

### getPrintable

    public java.awt.print.Printable getPrintable(int pageIndex)
                                          throws java.lang.IndexOutOfBoundsException

  Returns the `Printable` instance responsible for rendering the page specified by `pageIndex`.

  Specified by:
    `getPrintable` in interface `java.awt.print.Pageable`
  Parameters:
    `pageIndex` - the zero based index of the page whose `Printable` is being requested
  Returns:
    the `Printable` that renders the page.
  Throws:
    `java.lang.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:
    `java.lang.UnsupportedOperationException`