Class AbstractNamedMDXDataFactory

    • Constructor Detail

      • AbstractNamedMDXDataFactory

        public AbstractNamedMDXDataFactory()
    • Method Detail

      • isQueryExecutable

        public boolean isQueryExecutable​(String query,
                                         org.pentaho.reporting.engine.classic.core.DataRow parameters)
        Checks whether the query would be executable by this datafactory. This performs a rough check, not a full query.
        Specified by:
        isQueryExecutable in interface org.pentaho.reporting.engine.classic.core.DataFactory
        Overrides:
        isQueryExecutable in class AbstractMDXDataFactory
        Parameters:
        query - the query.
        parameters - the parameters.
        Returns:
        true, if the query would be executable, false if the query is not recognized.
      • setQuery

        public void setQuery​(String name,
                             String queryString)
        Parameters:
        name -
        queryString -
      • setQuery

        public void setQuery​(String name,
                             String queryString,
                             String queryScriptLanguage,
                             String queryScript)
      • remove

        public void remove​(String name)
      • getGlobalScriptLanguage

        public String getGlobalScriptLanguage()
      • setGlobalScriptLanguage

        public void setGlobalScriptLanguage​(String scriptLanguage)
      • getGlobalScript

        public String getGlobalScript()
      • setGlobalScript

        public void setGlobalScript​(String globalScript)
      • getScriptingLanguage

        public String getScriptingLanguage​(String name)
      • getQueryNames

        public String[] getQueryNames()
        Description copied from class: AbstractMDXDataFactory
        Returns all known query-names. A data-factory may accept more than the query-names returned here.
        Specified by:
        getQueryNames in interface org.pentaho.reporting.engine.classic.core.DataFactory
        Overrides:
        getQueryNames in class AbstractMDXDataFactory
        Returns:
        the known query names.
      • initialize

        public void initialize​(org.pentaho.reporting.engine.classic.core.DataFactoryContext dataFactoryContext)
                        throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
        Specified by:
        initialize in interface org.pentaho.reporting.engine.classic.core.DataFactory
        Overrides:
        initialize in class AbstractMDXDataFactory
        Throws:
        org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
      • performQuery

        public mondrian.olap.Result performQuery​(String queryName,
                                                 org.pentaho.reporting.engine.classic.core.DataRow parameters)
                                          throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
        Queries a datasource. The string 'query' defines the name of the query. The Parameterset given here may contain more data than actually needed for the query.

        The parameter-dataset may change between two calls, do not assume anything, and do not hold references to the parameter-dataset or the position of the columns in the dataset.

        Overrides:
        performQuery in class AbstractMDXDataFactory
        Parameters:
        queryName - the query name
        parameters - the parameters for the query
        Returns:
        the result of the query as table model.
        Throws:
        org.pentaho.reporting.engine.classic.core.ReportDataFactoryException - if an error occured while performing the query.
      • postProcess

        protected TableModel postProcess​(String queryName,
                                         org.pentaho.reporting.engine.classic.core.DataRow parameters,
                                         TableModel tableModel)
                                  throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
        Throws:
        org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
      • computedQuery

        protected String computedQuery​(String queryName,
                                       org.pentaho.reporting.engine.classic.core.DataRow parameters)
                                throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
        Overrides:
        computedQuery in class AbstractMDXDataFactory
        Throws:
        org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
      • getReferencedFields

        public String[] getReferencedFields​(String query,
                                            org.pentaho.reporting.engine.classic.core.DataRow parameter)
                                     throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
        Specified by:
        getReferencedFields in interface org.pentaho.reporting.engine.classic.core.DataFactoryMetaProvider
        Overrides:
        getReferencedFields in class AbstractMDXDataFactory
        Throws:
        org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
      • getQueryHash

        public ArrayList<Object> getQueryHash​(String queryName,
                                              org.pentaho.reporting.engine.classic.core.DataRow parameters)
                                       throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
        Specified by:
        getQueryHash in interface org.pentaho.reporting.engine.classic.core.DataFactoryMetaProvider
        Overrides:
        getQueryHash in class AbstractMDXDataFactory
        Throws:
        org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
      • close

        public void close()
        Description copied from class: AbstractMDXDataFactory
        Closes the data factory and frees all resources held by this instance.
        Specified by:
        close in interface org.pentaho.reporting.engine.classic.core.DataFactory
        Overrides:
        close in class AbstractMDXDataFactory