Interface IGenerator

  • All Known Implementing Classes:
    Generator

    public interface IGenerator
    Provides an entry point into building a chart for a given model. It is implemented as a singleton and does not maintain any state information hence allowing multi-threaded requests for a single generator instance.
    • Method Detail

      • prepare

        RunTimeContext prepare​(Chart model,
                               IExternalContext externalContext,
                               IScriptClassLoader iscl,
                               com.ibm.icu.util.ULocale locale)
                        throws ChartException
        Since v2, it must be called before build( ), and should only be called once per design model.
        Parameters:
        model - Chart design model
        externalContext - External Context
        locale - Locale
        Returns:
        a runtime context used by build( )
        Throws:
        ChartException
        Since:
        2.1
      • bindData

        void bindData​(java.sql.ResultSet resultSet,
                      Chart chart,
                      RunTimeContext rtc)
               throws ChartException
        Binds a sql Resuset to a chart model. This is based on the assumption the column names of the resultset match exactly the data query definitions and other expressions set inside the chart model.
        Parameters:
        resultSet - A sql resultset that contains the data. The following methods of the interface need to be implemented: first(), next(), getObject(String), close()
        chart - The chart model to bind the data to
        rtc - The runtime context
        Throws:
        ChartException
        Since:
        2.0
      • bindData

        void bindData​(IDataRowExpressionEvaluator expressionEvaluator,
                      Chart chart,
                      RunTimeContext rtc)
               throws ChartException
        Binds data to the chart model using a row expression evaluator. The evaluator provides the ability to evaluate the expressions set in the chart on a row context.
        Parameters:
        expressionEvaluator - The data row expression evaluator implementation
        chart - The chart model
        rtc - The runtime context
        Throws:
        ChartException
        Since:
        2.0
      • bindData

        void bindData​(IDataRowExpressionEvaluator expressionEvaluator,
                      IActionEvaluator iae,
                      Chart chart,
                      RunTimeContext rtc)
               throws ChartException
        Binds data to the chart model using a row expression evaluator. The evaluator provides the ability to evaluate the expressions set in the chart on a row context.If the given IActionEvaluator is not null, then it will also search available expressions within the action and bind it as the user dataSets.
        Parameters:
        expressionEvaluator - The data row expression evaluator implementation
        iae - An IActionEvaluator instance.
        chart - The chart model
        rtc - The runtime context
        Throws:
        ChartException
        Since:
        2.0
      • build

        GeneratedChartState build​(IDisplayServer ids,
                                  Chart cmDesignTime,
                                  Bounds bo,
                                  IExternalContext externalContext,
                                  RunTimeContext rtc)
                           throws ChartException
        Builds and computes preferred sizes of various chart components offscreen using the provided display server.
        Parameters:
        ids - A display server using which the chart may be built.
        cmDesignTime - The design time chart model (bound to a dataset).
        externalContext - An external context object.
        bo - The bounds associated with the chart being built.
        rtc - Encapsulates the runtime environment for the build process.
        Returns:
        An instance of a generated chart state that encapsulates built chart information that may be subsequently rendered.
        Throws:
        ChartException
      • build

        GeneratedChartState build​(IDisplayServer ids,
                                  Chart cmDesignTime,
                                  Bounds bo,
                                  IExternalContext externalContext,
                                  RunTimeContext rtc,
                                  org.eclipse.birt.chart.style.IStyleProcessor externalProcessor)
                           throws ChartException
        Builds and computes preferred sizes of various chart components offscreen using the provided display server.
        Parameters:
        ids - A display server using which the chart may be built.
        cmDesignTime - The design time chart model (bound to a dataset).
        externalContext - An external context object.
        bo - The bounds associated with the chart being built.
        rtc - Encapsulates the runtime environment for the build process.
        externalProcessor - An external style processor. If it's null, an implicit processor will be used.
        Returns:
        An instance of a generated chart state that encapsulates built chart information that may be subsequently rendered.
        Throws:
        ChartException
      • render

        void render​(IDeviceRenderer idr,
                    GeneratedChartState gcs)
             throws ChartException
        Draws a previously built chart using the specified device renderer into a target output device.
        Parameters:
        idr - A device renderer that determines the target context on which the chart will be rendered.
        gcs - A previously built chart that needs to be rendered.
        Throws:
        ChartException
      • refresh

        void refresh​(GeneratedChartState gcs)
              throws ChartException
        Performs a minimal rebuild of the chart if non-sizing attributes are altered or the dataset for any series has changed. However, if sizing attribute changes occur that affects the relative position of the various chart subcomponents, a re-build is required.
        Parameters:
        gcs - A previously built chart encapsulated in a transient structure.
        Throws:
        ChartException