Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

...

Terminology

...

Library

A library in the reporting space is a independent, self-contained and widely reusable code.

...

A library cannot depend on one of the Main-projects. If it does, then it does not belong into the library space and should be a extension-project instead..h2

Main project

A main project is one of the releasable top-level libraries or applications. For the reporting domain, this is the

...

Main projects can depend on libraries or other main-projects and their extensions. However, circular dependencies are not allowed..h2

Extension project

A Extension project is a plugin or extension-library that depends on one of the main-projects and extends its functionality. Extension projects can depend on libraries, the main project for which they are a declared extension and other main-projects and their extensions. Circular dependencies are not allowed.

Examples for extension projects are Data-Source plugins or the Demo projects of the reporting engines..h1

Repository Structure

  • svn://source.pentaho.org/pentaho-reporting/libraries/

...

Contains the Flow-Engine and all Flow-Engine Extension projects.

  • svn://source.pentaho.org/pentaho-reporting/tools/wizard-core/
  • svn://source.pentaho.org/pentaho-reporting/enginestools/wizard-swing/

Contains the Report-DesigDesign-Wizard and all Wizard-Plugin projects.

  • svn://source.pentaho.org/pentaho-reporting/enginestools/wizarddesigner/

Contains the Report-Designer and all Designer-Plugin projects.

Package structure

The package structure should mirror the global SVN structure. Each project has a unique package space that should not overlap with other projects (the extensions being the only exception).

  • Classic Engine
    • org.pentaho.reporting.engine.classic.core
    • org.pentaho.reporting.engine.classic.extensions
    • org.pentaho.reporting.engine.classic.extensions.datasources.kettle
    • org.pentaho.reporting.engine.classic.extensions.datasources.pmd
    • org.pentaho.reporting.engine.classic.extensions.datasources.mondrian
    • org.pentaho.reporting.engine.classic.testcases
    • org.pentaho.reporting.engine.classic.demo
  • Flow Engine
    • org.pentaho.reporting.engine.flow.core
    • org.pentaho.reporting.engine.flow.extensions
    • org.pentaho.reporting.engine.flow.testcases
  • Report-Design-Wizard
    • org.pentaho.reporting.tools.wizard.core
    • org.pentaho.reporting.tools.wizard.swing
    • org.pentaho.reporting.tools.wizard.swt (question)
  • Report-Designer
    • org.pentaho.reporting.tools.designer.core
    • org.pentaho.reporting.tools.designer.pentaho
  • Libraries
    • org.pentaho.reporting.libraries.base
    • org.pentaho.reporting.libraries.xmlns
    • org.pentaho.reporting.libraries.resourceloader
    • org.pentaho.reporting.libraries.fonts
    • org.pentaho.reporting.libraries.docbundle
    • org.pentaho.reporting.libraries.formatting
    • org.pentaho.reporting.libraries.formula
    • org.pentaho.reporting.libraries.pixie
    • org.pentaho.reporting.libraries.repository
    • org.pentaho.reporting.libraries.serializer
    • org.pentaho.reporting.libraries.sparklines