Package net.sf.jasperreports.olap.xmla
Class Olap4jXmlaQueryExecuter
- java.lang.Object
-
- net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
-
- net.sf.jasperreports.olap.xmla.Olap4jXmlaQueryExecuter
-
- All Implemented Interfaces:
JRQueryExecuter
public class Olap4jXmlaQueryExecuter extends JRAbstractQueryExecuter
- Author:
- swood
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
JRAbstractQueryExecuter.QueryParameter, JRAbstractQueryExecuter.QueryParameterEntry, JRAbstractQueryExecuter.QueryParameterVisitor, JRAbstractQueryExecuter.ValuedQueryParameter, JRAbstractQueryExecuter.VisitExceptionWrapper
-
-
Field Summary
Fields Modifier and Type Field Description static String
EXCEPTION_MESSAGE_KEY_CONNECTION_ERROR
static String
EXCEPTION_MESSAGE_KEY_EXECUTE_QUERY_ERROR
static String
OLAP4J_DRIVER
static String
OLAP4J_URL_PREFIX
static String
OLAP4J_XMLA_DRIVER_CLASS
static String
OLAP4J_XMLA_URL_PREFIX
static String
XMLA_CATALOG
static String
XMLA_DATA_SOURCE
static String
XMLA_PASSWORD
static String
XMLA_SERVER
static String
XMLA_USER
-
Fields inherited from class net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
clauseFunctions, dataset, EXCEPTION_MESSAGE_KEY_NUMERIC_TYPE_REQUIRED, EXCEPTION_MESSAGE_KEY_PARAMETER_NOT_FOUND, EXCEPTION_MESSAGE_KEY_QUERY_CLAUSE_CIRCULARLY_NESTED_PARAMETER, EXCEPTION_MESSAGE_KEY_QUERY_CLAUSE_ID_FIRST_TOKEN_MISSING, EXCEPTION_MESSAGE_KEY_QUERY_CLAUSE_NOT_FOUND, EXCEPTION_MESSAGE_KEY_UNSUPPORTED_PARAMETER_TYPE, GET_COLLECTED
-
-
Constructor Summary
Constructors Constructor Description Olap4jXmlaQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, Map<String,? extends JRValueParameter> parametersMap)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
cancelQuery()
Cancels the query if it's currently running.void
close()
Closes resources kept open during the data source iteration.JRDataSource
createDatasource()
Executes the query and creates aJRDataSource
out of the result.protected String
getCanonicalQueryLanguage()
Returns a canonical query language for this query executer implementation.protected String
getParameterReplacement(String parameterName)
Returns the replacement text for a query parameter.protected void
handleCellErrors(org.olap4j.Cell currentCell)
protected void
handleHierInfo(JRXmlaResultAxis xmlaAxis, org.olap4j.CellSetAxisMetaData axisMetaData)
protected void
handlePosition(JRXmlaResultAxis axis, org.olap4j.CellSetAxis itAxisElement, org.olap4j.Position p)
protected void
parseAxes(org.olap4j.CellSet result)
protected void
parseCellDataElement(org.olap4j.CellSet result)
protected void
parseResult(org.olap4j.CellSet result)
Parses the result into this class's structure-
Methods inherited from class net.sf.jasperreports.engine.query.JRAbstractQueryExecuter
addQueryMultiParameters, addQueryMultiParameters, addQueryParameter, addQueryParameter, appendClauseChunk, appendParameterChunk, appendParameterClauseChunk, appendQueryChunk, appendTextChunk, applyClause, checkParameter, findExtensionQueryFunction, getBooleanParameter, getBooleanParameter, getBooleanParameterOrProperty, getBooleanParameterOrProperty, getCollectedParameterNames, getCollectedParameters, getIntegerParameter, getIntegerParameter, getIntegerParameterOrProperty, getIntegerParameterOrProperty, getJasperReportsContext, getParameterValue, getParameterValue, getPropertiesUtil, getQueryExecutionContext, getQueryString, getRepositoryContext, getStringParameter, getStringParameterOrProperty, getValueParameter, getValueParameter, parameterHasValue, parseQuery, registerClauseFunction, resolveFunction, unregisterClauseFunction, visitQueryParameters
-
-
-
-
Field Detail
-
EXCEPTION_MESSAGE_KEY_CONNECTION_ERROR
public static final String EXCEPTION_MESSAGE_KEY_CONNECTION_ERROR
- See Also:
- Constant Field Values
-
EXCEPTION_MESSAGE_KEY_EXECUTE_QUERY_ERROR
public static final String EXCEPTION_MESSAGE_KEY_EXECUTE_QUERY_ERROR
- See Also:
- Constant Field Values
-
OLAP4J_DRIVER
public static final String OLAP4J_DRIVER
- See Also:
- Constant Field Values
-
OLAP4J_URL_PREFIX
public static final String OLAP4J_URL_PREFIX
- See Also:
- Constant Field Values
-
XMLA_SERVER
public static final String XMLA_SERVER
- See Also:
- Constant Field Values
-
XMLA_CATALOG
public static final String XMLA_CATALOG
- See Also:
- Constant Field Values
-
XMLA_DATA_SOURCE
public static final String XMLA_DATA_SOURCE
- See Also:
- Constant Field Values
-
XMLA_USER
public static final String XMLA_USER
- See Also:
- Constant Field Values
-
XMLA_PASSWORD
public static final String XMLA_PASSWORD
- See Also:
- Constant Field Values
-
OLAP4J_XMLA_DRIVER_CLASS
public static final String OLAP4J_XMLA_DRIVER_CLASS
- See Also:
- Constant Field Values
-
OLAP4J_XMLA_URL_PREFIX
public static final String OLAP4J_XMLA_URL_PREFIX
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Olap4jXmlaQueryExecuter
public Olap4jXmlaQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, Map<String,? extends JRValueParameter> parametersMap)
-
-
Method Detail
-
getCanonicalQueryLanguage
protected String getCanonicalQueryLanguage()
Description copied from class:JRAbstractQueryExecuter
Returns a canonical query language for this query executer implementation.The canonical language is used to retrieve extensions for the query executer.
The default implementation returns the runtime query language used in the dataset, but query executer implementations should override this method and return a fixed language.
- Overrides:
getCanonicalQueryLanguage
in classJRAbstractQueryExecuter
- Returns:
- a canonical query language
-
getParameterReplacement
protected String getParameterReplacement(String parameterName)
Description copied from class:JRAbstractQueryExecuter
Returns the replacement text for a query parameter.- Specified by:
getParameterReplacement
in classJRAbstractQueryExecuter
- Parameters:
parameterName
- the parameter name- Returns:
- the replacement text
- See Also:
JRQueryChunk.TYPE_PARAMETER
-
createDatasource
public JRDataSource createDatasource() throws JRException
Description copied from interface:JRQueryExecuter
Executes the query and creates aJRDataSource
out of the result.- Returns:
- a
JRDataSource
wrapping the query execution result. - Throws:
JRException
-
cancelQuery
public boolean cancelQuery() throws JRException
Description copied from interface:JRQueryExecuter
Cancels the query if it's currently running. This method will be called from a different thread if the client decides to cancel the filling process.- Returns:
true
if and only if the query was running and it has been canceled- Throws:
JRException
-
close
public void close()
Description copied from interface:JRQueryExecuter
Closes resources kept open during the data source iteration. This method is called after the report is filled or the dataset is iterated. If a resource is not needed after the data source has been created, it should be released at the end ofcreateDatasource
.
-
parseResult
protected void parseResult(org.olap4j.CellSet result) throws JRException
Parses the result into this class's structure- Parameters:
result
- The CellSet query result- Throws:
JRException
-
parseAxes
protected void parseAxes(org.olap4j.CellSet result)
-
parseCellDataElement
protected void parseCellDataElement(org.olap4j.CellSet result) throws JRException
- Throws:
JRException
-
handleCellErrors
protected void handleCellErrors(org.olap4j.Cell currentCell) throws JRException
- Throws:
JRException
-
handleHierInfo
protected void handleHierInfo(JRXmlaResultAxis xmlaAxis, org.olap4j.CellSetAxisMetaData axisMetaData)
-
handlePosition
protected void handlePosition(JRXmlaResultAxis axis, org.olap4j.CellSetAxis itAxisElement, org.olap4j.Position p)
-
-