Class AbstractMDXDataFactory
- java.lang.Object
-
- org.pentaho.reporting.engine.classic.core.AbstractDataFactory
-
- org.pentaho.reporting.engine.classic.extensions.datasources.olap4j.AbstractMDXDataFactory
-
- All Implemented Interfaces:
Serializable
,Cloneable
,org.pentaho.reporting.engine.classic.core.DataFactory
,org.pentaho.reporting.engine.classic.core.DataFactoryDesignTimeSupport
,org.pentaho.reporting.engine.classic.core.DataFactoryMetaProvider
- Direct Known Subclasses:
AbstractNamedMDXDataFactory
,SimpleBandedMDXDataFactory
,SimpleDenormalizedMDXDataFactory
,SimpleLegacyBandedMDXDataFactory
public abstract class AbstractMDXDataFactory extends org.pentaho.reporting.engine.classic.core.AbstractDataFactory
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
AbstractMDXDataFactory.MDXCompiler
The message compiler maps all named references into numeric references.
-
Constructor Summary
Constructors Constructor Description AbstractMDXDataFactory(OlapConnectionProvider connectionProvider)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AbstractMDXDataFactory
clone()
void
close()
Closes the data factory and frees all resources held by this instance.protected String
computedQuery(String queryName, org.pentaho.reporting.engine.classic.core.DataRow parameters)
protected int
extractQueryLimit(org.pentaho.reporting.engine.classic.core.DataRow parameters)
OlapConnectionProvider
getConnectionProvider()
String
getJdbcPasswordField()
String
getJdbcUserField()
ArrayList<Object>
getQueryHash(String queryRaw, org.pentaho.reporting.engine.classic.core.DataRow parameter)
String[]
getQueryNames()
String[]
getReferencedFields(String queryName, org.pentaho.reporting.engine.classic.core.DataRow parameter)
String
getRoleField()
protected org.olap4j.PreparedOlapStatement
getStatement(String query, org.pentaho.reporting.engine.classic.core.DataRow parameter)
void
initialize(org.pentaho.reporting.engine.classic.core.DataFactoryContext dataFactoryContext)
boolean
isMembersOnAxisSorted()
boolean
isQueryExecutable(String query, org.pentaho.reporting.engine.classic.core.DataRow parameters)
Checks whether the query would be executable by this datafactory.protected QueryResultWrapper
performQuery(String rawMdxQuery, org.pentaho.reporting.engine.classic.core.DataRow parameters)
protected static String
quote(String original)
void
setConnectionProvider(OlapConnectionProvider connectionProvider)
void
setJdbcPasswordField(String jdbcPasswordField)
void
setJdbcUserField(String jdbcUserField)
void
setMembersOnAxisSorted(boolean membersOnAxisSorted)
void
setRoleField(String roleField)
protected String
translateQuery(String queryName)
-
Methods inherited from class org.pentaho.reporting.engine.classic.core.AbstractDataFactory
calculateQueryLimit, calculateQueryTimeOut, cancelRunningQuery, derive, getConfiguration, getContextKey, getDataFactoryContext, getDisplayConnectionName, getLocale, getMetaData, getResourceBundleFactory, getResourceManager, queryDesignTimeStructure
-
-
-
-
Constructor Detail
-
AbstractMDXDataFactory
public AbstractMDXDataFactory(OlapConnectionProvider connectionProvider)
-
-
Method Detail
-
setConnectionProvider
public void setConnectionProvider(OlapConnectionProvider connectionProvider)
-
getConnectionProvider
public OlapConnectionProvider getConnectionProvider()
-
isMembersOnAxisSorted
public boolean isMembersOnAxisSorted()
-
setMembersOnAxisSorted
public void setMembersOnAxisSorted(boolean membersOnAxisSorted)
-
getJdbcUserField
public String getJdbcUserField()
-
setJdbcUserField
public void setJdbcUserField(String jdbcUserField)
-
getJdbcPasswordField
public String getJdbcPasswordField()
-
setJdbcPasswordField
public void setJdbcPasswordField(String jdbcPasswordField)
-
getRoleField
public String getRoleField()
-
setRoleField
public void setRoleField(String roleField)
-
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.- Parameters:
query
-parameters
-- Returns:
-
getQueryNames
public String[] getQueryNames()
-
getStatement
protected org.olap4j.PreparedOlapStatement getStatement(String query, org.pentaho.reporting.engine.classic.core.DataRow parameter) throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException, org.olap4j.OlapException
- Throws:
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
org.olap4j.OlapException
-
performQuery
protected QueryResultWrapper performQuery(String rawMdxQuery, org.pentaho.reporting.engine.classic.core.DataRow parameters) throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException, SQLException
- Throws:
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
SQLException
-
getReferencedFields
public String[] getReferencedFields(String queryName, org.pentaho.reporting.engine.classic.core.DataRow parameter) throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
- Specified by:
getReferencedFields
in interfaceorg.pentaho.reporting.engine.classic.core.DataFactoryMetaProvider
- Overrides:
getReferencedFields
in classorg.pentaho.reporting.engine.classic.core.AbstractDataFactory
- Throws:
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
-
extractQueryLimit
protected int extractQueryLimit(org.pentaho.reporting.engine.classic.core.DataRow parameters)
-
close
public void close()
Closes the data factory and frees all resources held by this instance.
-
clone
public AbstractMDXDataFactory clone()
- Specified by:
clone
in interfaceorg.pentaho.reporting.engine.classic.core.DataFactory
- Overrides:
clone
in classorg.pentaho.reporting.engine.classic.core.AbstractDataFactory
-
computedQuery
protected String computedQuery(String queryName, org.pentaho.reporting.engine.classic.core.DataRow parameters) throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
- Throws:
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
-
getQueryHash
public ArrayList<Object> getQueryHash(String queryRaw, org.pentaho.reporting.engine.classic.core.DataRow parameter) throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
- Specified by:
getQueryHash
in interfaceorg.pentaho.reporting.engine.classic.core.DataFactoryMetaProvider
- Overrides:
getQueryHash
in classorg.pentaho.reporting.engine.classic.core.AbstractDataFactory
- Throws:
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
-
initialize
public void initialize(org.pentaho.reporting.engine.classic.core.DataFactoryContext dataFactoryContext) throws org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
- Specified by:
initialize
in interfaceorg.pentaho.reporting.engine.classic.core.DataFactory
- Overrides:
initialize
in classorg.pentaho.reporting.engine.classic.core.AbstractDataFactory
- Throws:
org.pentaho.reporting.engine.classic.core.ReportDataFactoryException
-
-