Interface QueryExecuterFactory
-
- All Superinterfaces:
JRQueryExecuterFactory
- All Known Implementing Classes:
AbstractQueryExecuterFactory,AbstractXlsQueryExecuterFactory,ExcelQueryExecuterFactory,JaxenXPathQueryExecuterFactory,JRAbstractQueryExecuterFactory,JRCsvQueryExecuterFactory,JRHibernateQueryExecuterFactory,JRJdbcQueryExecuterFactory,JRJpaQueryExecuterFactory,JRMdxQueryExecuterFactory,JRMondrianQueryExecuterFactory,JRQueryExecuterUtils.WrappingQueryExecuterFactory,JRXlsxQueryExecuterFactory,JRXmlaQueryExecuterFactory,JRXPathQueryExecuterFactory,JsonQLQueryExecuterFactory,JsonQueryExecuterFactory,Olap4jMondrianQueryExecuterFactory,Olap4jQueryExecuterFactory,Olap4jXmlaQueryExecuterFactory,PlSqlQueryExecuterFactory,XlsQueryExecuterFactory
public interface QueryExecuterFactory extends JRQueryExecuterFactory
Factory classes used to create query executers. For each query language, a query executer factory must be created and registered as a JR property. Query executer factory instances must be thread-safe as they are cached and used as singletons.- Author:
- Lucian Chirita (lucianc@users.sourceforge.net)
- See Also:
JRQueryExecuter
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringQUERY_EXECUTER_FACTORY_PREFIXPrefix for query executer factory properties.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description JRQueryExecutercreateQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parameters)Creates a query executer.default JRQueryExecutercreateQueryExecuter(QueryExecutionContext context, JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parameters)java.lang.Object[]getBuiltinParameters()Returns the built-in parameters associated with this query type.booleansupportsQueryParameterType(java.lang.String className)Decides whether the query executers created by this factory support a query parameter type.-
Methods inherited from interface net.sf.jasperreports.engine.query.JRQueryExecuterFactory
createQueryExecuter
-
-
-
-
Field Detail
-
QUERY_EXECUTER_FACTORY_PREFIX
static final java.lang.String QUERY_EXECUTER_FACTORY_PREFIX
Prefix for query executer factory properties. To obtain query executer factories, a property having the query language appended to this prefix is used to get the query executer factory name.- See Also:
- Constant Field Values
-
-
Method Detail
-
getBuiltinParameters
java.lang.Object[] getBuiltinParameters()
Returns the built-in parameters associated with this query type. These parameters will be created as system-defined parameters for each report/dataset having a query of this type. The returned array should contain consecutive pairs of parameter names and parameter classes (e.g.{"Param1", String.class, "Param2", "List.class"}).- Specified by:
getBuiltinParametersin interfaceJRQueryExecuterFactory- Returns:
- array of built-in parameter names and types associated with this query type
-
createQueryExecuter
JRQueryExecuter createQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parameters) throws JRException
Creates a query executer. This method is called at fill time for reports/datasets having a query supported by this factory.- Parameters:
jasperReportsContext- the JasperReportsContextdataset- the dataset containing the query, fields, etcparameters- map of value parameters (instances ofJRValueParameter) indexed by name- Returns:
- a query executer
- Throws:
JRException
-
createQueryExecuter
default JRQueryExecuter createQueryExecuter(QueryExecutionContext context, JRDataset dataset, java.util.Map<java.lang.String,? extends JRValueParameter> parameters) throws JRException
- Throws:
JRException
-
supportsQueryParameterType
boolean supportsQueryParameterType(java.lang.String className)
Decides whether the query executers created by this factory support a query parameter type. This check is performed for all $P{..} parameters in the query.- Specified by:
supportsQueryParameterTypein interfaceJRQueryExecuterFactory- Parameters:
className- the value class name of the parameter- Returns:
- whether the parameter value type is supported
-
-