Package org.jfree.report

## Class JFreeReport

- java.lang.Object
- - org.jfree.report.structure.Node
  - - org.jfree.report.structure.Element
    - - org.jfree.report.structure.Section
      - - org.jfree.report.structure.ReportDefinition
        - - org.jfree.report.JFreeReport

- All Implemented Interfaces:
    `java.io.Serializable`, `java.lang.Cloneable`, `ReportStructureRoot`

      public class JFreeReport
      extends ReportDefinition
      implements ReportStructureRoot

  A JFreeReport instance is used as report template to define the visual layout of a report and to collect all data sources for the reporting. Possible data sources are the `TableModel`, `Expression`s or `ReportParameters`.

  New since 0.9: Report properties contain data. They do not contain processing objects (like the outputtarget) or attribute values. Report properties should only contains things, which are intended for printing.

  The report data source is no longer part of the report definition. It is an extra object passed over to the report processor or generated using a report data factory.
  Author:
    David Gilbert, Thomas Morgner
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.jfree.report.structure.Element

      `ID_ATTRIBUTE, NAME_ATTRIBUTE, NAMESPACE_ATTRIBUTE, TYPE_ATTRIBUTE, VIRTUAL_ATTRIBUTE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `JFreeReport()` | The default constructor.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addStyleSheet​(org.jfree.layouting.input.style.StyleSheet s)` |
    `java.lang.Object` | `clone()` | private ModifiableConfiguration reportConfiguration; private ArrayList styleSheets; private StyleSheet pageFormatStyleSheet; private CSSPageRule pageRule; private ReportParameters parameters; private ReportDataFactory dataFactory; private ResourceManager resourceManager; private ResourceKey baseResource;
    `org.pentaho.reporting.libraries.resourceloader.ResourceKey` | `getBaseResource()` |
    `org.pentaho.reporting.libraries.base.config.Configuration` | `getConfiguration()` | Returns the report configuration.
    `ReportDataFactory` | `getDataFactory()` |
    `org.pentaho.reporting.libraries.base.config.ModifiableConfiguration` | `getEditableConfiguration()` |
    `ReportParameters` | `getInputParameters()` |
    `java.util.Locale` | `getLocale()` |
    `java.awt.print.PageFormat` | `getPageFormat()` |
    `org.pentaho.reporting.libraries.resourceloader.ResourceManager` | `getResourceManager()` |
    `JFreeReport` | `getRootReport()` |
    `org.jfree.layouting.input.style.StyleSheet` | `getStyleSheet​(int i)` |
    `int` | `getStyleSheetCount()` |
    `void` | `removeStyleSheet​(org.jfree.layouting.input.style.StyleSheet s)` |
    `void` | `setBaseResource​(org.pentaho.reporting.libraries.resourceloader.ResourceKey baseResource)` |
    `void` | `setDataFactory​(ReportDataFactory dataFactory)` |
    `void` | `setPageFormat​(java.awt.print.PageFormat format)` |
    `void` | `setResourceManager​(org.pentaho.reporting.libraries.resourceloader.ResourceManager resourceManager)` |

    - ### Methods inherited from class org.jfree.report.structure.ReportDefinition

      `getGroup, getQuery, getReport, setQuery`

    - ### Methods inherited from class org.jfree.report.structure.Section

      `addNode, addNode, addNodes, addOperationAfter, addOperationBefore, findFirstChild, getElementByName, getNode, getNodeArray, getNodeCount, getNodes, getOperationAfter, getOperationBefore, isRepeat, removeNode, setOperationAfter, setOperationBefore, setRepeat, toString`

    - ### Methods inherited from class org.jfree.report.structure.Element

      `addExpression, getAttribute, getAttribute, getAttributeExpression, getAttributeExpression, getAttributeExpressionMap, getAttributeExpressions, getAttributeMap, getDisplayCondition, getExpressions, getId, getLocaleFromAttributes, getName, getNamespace, getStyle, getStyleExpression, getStyleExpressions, getType, getVisibility, isEnabled, isVirtual, setAttribute, setAttribute, setAttributeExpression, setAttributeExpression, setDisplayCondition, setEnabled, setExpressions, setId, setName, setNamespace, setStyleExpression, setType, setVirtual, setVisibility`

    - ### Methods inherited from class org.jfree.report.structure.Node

      `getParent, setParent, updateParent`

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

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

- - ### Constructor Detail

    - #### JFreeReport

          public JFreeReport()

      The default constructor. Creates an empty but fully initialized report.

  - ### Method Detail

    - #### getConfiguration

          public org.pentaho.reporting.libraries.base.config.Configuration getConfiguration()

      Returns the report configuration.

      The report configuration is automatically set up when the report is first created, and uses the global JFreeReport configuration as its parent.
      Specified by:
        `getConfiguration` in interface `ReportStructureRoot`
      Returns:
        the report configuration.

    - #### addStyleSheet

          public void addStyleSheet​(org.jfree.layouting.input.style.StyleSheet s)

    - #### removeStyleSheet

          public void removeStyleSheet​(org.jfree.layouting.input.style.StyleSheet s)

    - #### getStyleSheet

          public org.jfree.layouting.input.style.StyleSheet getStyleSheet​(int i)

    - #### getStyleSheetCount

          public int getStyleSheetCount()

    - #### getRootReport

          public JFreeReport getRootReport()

      Overrides:
        `getRootReport` in class `Node`

    - #### getInputParameters

          public ReportParameters getInputParameters()

      Specified by:
        `getInputParameters` in interface `ReportStructureRoot`

    - #### getDataFactory

          public ReportDataFactory getDataFactory()

      Specified by:
        `getDataFactory` in interface `ReportStructureRoot`

    - #### setDataFactory

          public void setDataFactory​(ReportDataFactory dataFactory)

    - #### getResourceManager

          public org.pentaho.reporting.libraries.resourceloader.ResourceManager getResourceManager()

      Specified by:
        `getResourceManager` in interface `ReportStructureRoot`

    - #### setResourceManager

          public void setResourceManager​(org.pentaho.reporting.libraries.resourceloader.ResourceManager resourceManager)

    - #### getBaseResource

          public org.pentaho.reporting.libraries.resourceloader.ResourceKey getBaseResource()

      Specified by:
        `getBaseResource` in interface `ReportStructureRoot`

    - #### setBaseResource

          public void setBaseResource​(org.pentaho.reporting.libraries.resourceloader.ResourceKey baseResource)

    - #### setPageFormat

          public void setPageFormat​(java.awt.print.PageFormat format)

    - #### getPageFormat

          public java.awt.print.PageFormat getPageFormat()

    - #### getEditableConfiguration

          public org.pentaho.reporting.libraries.base.config.ModifiableConfiguration getEditableConfiguration()

    - #### getLocale

          public java.util.Locale getLocale()

      Specified by:
        `getLocale` in interface `ReportStructureRoot`
      Overrides:
        `getLocale` in class `Element`

    - #### clone

          public java.lang.Object clone()
                                 throws java.lang.CloneNotSupportedException

      private ModifiableConfiguration reportConfiguration; private ArrayList styleSheets; private StyleSheet pageFormatStyleSheet; private CSSPageRule pageRule; private ReportParameters parameters; private ReportDataFactory dataFactory; private ResourceManager resourceManager; private ResourceKey baseResource;
      Overrides:
        `clone` in class `Section`
      Returns:
      Throws:
        `java.lang.CloneNotSupportedException`