Class JRCsvQueryExecuterFactory
- java.lang.Object
-
- net.sf.jasperreports.engine.query.AbstractQueryExecuterFactory
-
- net.sf.jasperreports.engine.query.JRCsvQueryExecuterFactory
-
- All Implemented Interfaces:
QueryExecuterFactory
,Designated
public class JRCsvQueryExecuterFactory extends AbstractQueryExecuterFactory implements Designated
Query executer factory for CSV file type. The factory createsJRCsvQueryExecuter
query executers.- Author:
- Narcis Marcu (narcism@users.sourceforge.net)
-
-
Field Summary
Fields Modifier and Type Field Description static String
CSV_COLUMN_NAMES
Built-in parameter/property holding the names of the columns (in a comma-separated list) to be extracted from the CSV source.static String
CSV_COLUMN_NAMES_ARRAY
Built-in parameter holding the value of the columns to be extracted from the CSV source, as ajava.lang.String[]
object.static String
CSV_DATE_FORMAT
Built-in parameter holding the value of thejava.text.DateFormat
used to format date columns from the CSV source.static String
CSV_DATE_PATTERN
Built-in parameter/property holding the value of the date format pattern to be used when parsing the CSV data.static String
CSV_ENCODING
Built-in parameter/property holding the value of the charset used to encode the CSV stream.static String
CSV_FIELD_DELIMITER
Built-in parameter/property holding the value of the field delimiter from the CSV source.static String
CSV_FILE
Built-in parameter holding the value of thejava.io.File
to be used for obtaining the CSV data.static String
CSV_INPUT_STREAM
Built-in parameter holding the value of thejava.io.InputStream
to be used for obtaining the CSV data.static String
CSV_LOCALE
Built-in parameter holding thejava.util.Locale
value of the locale to be used when parsing the CSV data.static String
CSV_LOCALE_CODE
Built-in parameter/property holding thejava.lang.String
code of the locale to be used when parsing the CSV data.static String
CSV_NUMBER_FORMAT
Built-in parameter holding the value of thejava.text.NumberFormat
used to format numeric columns from the CSV source.static String
CSV_NUMBER_PATTERN
Built-in parameter/property holding the value of the number format pattern to be used when parsing the CSV data.static String
CSV_READER
Built-in parameter holding the value of thejava.io.Reader
to be used for obtaining the CSV data.static String
CSV_RECORD_DELIMITER
Build-in parameter/property holding the value of the record delimiter from the CSV sourcestatic String
CSV_SOURCE
Built-in parameter/property holding the value of the source for the CSV file.static String
CSV_TIMEZONE
Built-in parameter holding thejava.util.TimeZone
value of the timezone to be used when parsing the CSV data.static String
CSV_TIMEZONE_ID
Built-in parameter/property holding thejava.lang.String
value of the time zone id to be used when parsing the CSV data.static String
CSV_URL
Built-in parameter holding the value of thejava.net.URL
to be used for obtaining the CSV data.static String
CSV_USE_FIRST_ROW_AS_HEADER
Built-in parameter/property specifying whether or not the column names should be obtained from the first row in the CSV source.static String
QUERY_EXECUTER_NAME
-
Fields inherited from interface net.sf.jasperreports.engine.query.QueryExecuterFactory
QUERY_EXECUTER_FACTORY_PREFIX
-
-
Constructor Summary
Constructors Constructor Description JRCsvQueryExecuterFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description JRQueryExecuter
createQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, Map<String,? extends JRValueParameter> parameters)
Creates a query executer.JRQueryExecuter
createQueryExecuter(QueryExecutionContext context, JRDataset dataset, Map<String,? extends JRValueParameter> parameters)
Object[]
getBuiltinParameters()
Returns the built-in parameters associated with this query type.String
getDesignation()
boolean
supportsQueryParameterType(String className)
Decides whether the query executers created by this factory support a query parameter type.
-
-
-
Field Detail
-
QUERY_EXECUTER_NAME
public static final String QUERY_EXECUTER_NAME
- See Also:
- Constant Field Values
-
CSV_SOURCE
public static final String CSV_SOURCE
Built-in parameter/property holding the value of the source for the CSV file. It can be:- a resource on the classpath
- a file from the filesystem, with an absolute or relative path
- a url
- See Also:
- Constant Field Values
-
CSV_INPUT_STREAM
public static final String CSV_INPUT_STREAM
Built-in parameter holding the value of thejava.io.InputStream
to be used for obtaining the CSV data.- See Also:
- Constant Field Values
-
CSV_URL
public static final String CSV_URL
Built-in parameter holding the value of thejava.net.URL
to be used for obtaining the CSV data.- See Also:
- Constant Field Values
-
CSV_FILE
public static final String CSV_FILE
Built-in parameter holding the value of thejava.io.File
to be used for obtaining the CSV data.- See Also:
- Constant Field Values
-
CSV_READER
public static final String CSV_READER
Built-in parameter holding the value of thejava.io.Reader
to be used for obtaining the CSV data.- See Also:
- Constant Field Values
-
CSV_ENCODING
public static final String CSV_ENCODING
Built-in parameter/property holding the value of the charset used to encode the CSV stream. It is meaningful only in combination withCSV_INPUT_STREAM
,CSV_URL
orCSV_FILE
.- See Also:
- Constant Field Values
-
CSV_COLUMN_NAMES
public static final String CSV_COLUMN_NAMES
Built-in parameter/property holding the names of the columns (in a comma-separated list) to be extracted from the CSV source. When used as report parameter, the value has to be ajava.lang.String
object containing column names separated by commas. It can also be used as the prefix for custom dataset properties specifying the names of the CSV columns in the format:net.sf.jasperreports.csv.column.names.{arbitrary_name}=value1[, value2, ...]
- See Also:
- Constant Field Values
-
CSV_COLUMN_NAMES_ARRAY
public static final String CSV_COLUMN_NAMES_ARRAY
Built-in parameter holding the value of the columns to be extracted from the CSV source, as ajava.lang.String[]
object. When this parameter is null or missing, its value defaults to the values provided by properties prefixed withCSV_COLUMN_NAMES
.- See Also:
- Constant Field Values
-
CSV_LOCALE
public static final String CSV_LOCALE
Built-in parameter holding thejava.util.Locale
value of the locale to be used when parsing the CSV data.- See Also:
- Constant Field Values
-
CSV_LOCALE_CODE
public static final String CSV_LOCALE_CODE
Built-in parameter/property holding thejava.lang.String
code of the locale to be used when parsing the CSV data. The allowed format is: language[_country[_variant]]- See Also:
- Constant Field Values
-
CSV_TIMEZONE
public static final String CSV_TIMEZONE
Built-in parameter holding thejava.util.TimeZone
value of the timezone to be used when parsing the CSV data.- See Also:
- Constant Field Values
-
CSV_TIMEZONE_ID
public static final String CSV_TIMEZONE_ID
Built-in parameter/property holding thejava.lang.String
value of the time zone id to be used when parsing the CSV data.- See Also:
- Constant Field Values
-
CSV_DATE_FORMAT
public static final String CSV_DATE_FORMAT
Built-in parameter holding the value of thejava.text.DateFormat
used to format date columns from the CSV source.- See Also:
- Constant Field Values
-
CSV_DATE_PATTERN
public static final String CSV_DATE_PATTERN
Built-in parameter/property holding the value of the date format pattern to be used when parsing the CSV data.- See Also:
- Constant Field Values
-
CSV_FIELD_DELIMITER
public static final String CSV_FIELD_DELIMITER
Built-in parameter/property holding the value of the field delimiter from the CSV source.- See Also:
- Constant Field Values
-
CSV_NUMBER_FORMAT
public static final String CSV_NUMBER_FORMAT
Built-in parameter holding the value of thejava.text.NumberFormat
used to format numeric columns from the CSV source.- See Also:
- Constant Field Values
-
CSV_NUMBER_PATTERN
public static final String CSV_NUMBER_PATTERN
Built-in parameter/property holding the value of the number format pattern to be used when parsing the CSV data.- See Also:
- Constant Field Values
-
CSV_RECORD_DELIMITER
public static final String CSV_RECORD_DELIMITER
Build-in parameter/property holding the value of the record delimiter from the CSV source- See Also:
- Constant Field Values
-
CSV_USE_FIRST_ROW_AS_HEADER
public static final String CSV_USE_FIRST_ROW_AS_HEADER
Built-in parameter/property specifying whether or not the column names should be obtained from the first row in the CSV source. As parameter, it should hold ajava.lang.Boolean
value, while as custom dataset property, it should be true or false. If this parameter is set to true, then setting theCSV_COLUMN_NAMES
orCSV_COLUMN_NAMES_ARRAY
would have no effect.- See Also:
- Constant Field Values
-
-
Method Detail
-
getBuiltinParameters
public Object[] getBuiltinParameters()
Description copied from interface:QueryExecuterFactory
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:
getBuiltinParameters
in interfaceQueryExecuterFactory
- Returns:
- array of built-in parameter names and types associated with this query type
-
createQueryExecuter
public JRQueryExecuter createQueryExecuter(JasperReportsContext jasperReportsContext, JRDataset dataset, Map<String,? extends JRValueParameter> parameters) throws JRException
Description copied from interface:QueryExecuterFactory
Creates a query executer. This method is called at fill time for reports/datasets having a query supported by this factory.- Specified by:
createQueryExecuter
in interfaceQueryExecuterFactory
- 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
public JRQueryExecuter createQueryExecuter(QueryExecutionContext context, JRDataset dataset, Map<String,? extends JRValueParameter> parameters) throws JRException
- Specified by:
createQueryExecuter
in interfaceQueryExecuterFactory
- Throws:
JRException
-
supportsQueryParameterType
public boolean supportsQueryParameterType(String className)
Description copied from interface:QueryExecuterFactory
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:
supportsQueryParameterType
in interfaceQueryExecuterFactory
- Parameters:
className
- the value class name of the parameter- Returns:
- whether the parameter value type is supported
-
getDesignation
public String getDesignation()
- Specified by:
getDesignation
in interfaceDesignated
-
-