Package net.sf.jasperreports.engine.data
Class JRCsvDataSourceProvider
- java.lang.Object
-
- net.sf.jasperreports.engine.data.JRCsvDataSourceProvider
-
- All Implemented Interfaces:
JRDataSourceProvider
public class JRCsvDataSourceProvider extends Object implements JRDataSourceProvider
- Author:
- Ionut Nedelcu (ionutned@users.sourceforge.net)
-
-
Field Summary
Fields Modifier and Type Field Description static String
EXCEPTION_MESSAGE_KEY_CANNOT_FIND_SOURCE
-
Constructor Summary
Constructors Constructor Description JRCsvDataSourceProvider(File file)
Builds a datasource instance.JRCsvDataSourceProvider(InputStream stream)
JRCsvDataSourceProvider(Reader reader)
Builds a datasource instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description JRDataSource
create(JasperReport report)
Creates and returns a new instance of the provided data source.void
dispose(JRDataSource dataSource)
Disposes the data source previously obtained using thecreate
method.String[]
getColumnNames()
DateFormat
getDateFormat()
char
getFieldDelimiter()
JRField[]
getFields(JasperReport report)
Returns the fields that are available from the data source.NumberFormat
getNumberFormat()
String
getRecordDelimiter()
void
setColumnNames(String[] colNames)
void
setDateFormat(DateFormat dateFormat)
void
setFieldDelimiter(char fieldDelimiter)
void
setNumberFormat(NumberFormat numberFormat)
void
setRecordDelimiter(String recordDelimiter)
boolean
supportsGetFieldsOperation()
Returns true if the provider supports thegetFields
operation.
-
-
-
Field Detail
-
EXCEPTION_MESSAGE_KEY_CANNOT_FIND_SOURCE
public static final String EXCEPTION_MESSAGE_KEY_CANNOT_FIND_SOURCE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
JRCsvDataSourceProvider
public JRCsvDataSourceProvider(InputStream stream)
- Parameters:
stream
- an input stream containing CSV data
-
JRCsvDataSourceProvider
public JRCsvDataSourceProvider(File file) throws FileNotFoundException
Builds a datasource instance.- Parameters:
file
- a file containing CSV data- Throws:
FileNotFoundException
-
JRCsvDataSourceProvider
public JRCsvDataSourceProvider(Reader reader)
Builds a datasource instance.- Parameters:
reader
- a Reader instance, for reading the stream
-
-
Method Detail
-
supportsGetFieldsOperation
public boolean supportsGetFieldsOperation()
Description copied from interface:JRDataSourceProvider
Returns true if the provider supports thegetFields
operation. By returning true in this method the data source provider indicates that it is able to introspect the data source and discover the available fields.- Specified by:
supportsGetFieldsOperation
in interfaceJRDataSourceProvider
- Returns:
- true if the getFields() operation is supported.
-
getFields
public JRField[] getFields(JasperReport report) throws JRException, UnsupportedOperationException
Description copied from interface:JRDataSourceProvider
Returns the fields that are available from the data source. The provider can use the passed in report to extract some additional configuration information such as report properties.- Specified by:
getFields
in interfaceJRDataSourceProvider
- Parameters:
report
- the report that will be filled using the data source created by this provider. The passed in report can be null. That means that no compiled report is available yet.- Returns:
- a non null fields array. If there are no fields then an empty array must be returned.
- Throws:
JRException
- if an error occurs.UnsupportedOperationException
- is the method is not supported
-
create
public JRDataSource create(JasperReport report) throws JRException
Description copied from interface:JRDataSourceProvider
Creates and returns a new instance of the provided data source. The provider can use the passed in report to extract some additional configuration information such as report properties.- Specified by:
create
in interfaceJRDataSourceProvider
- Parameters:
report
- the report that will be filled using the created data source.- Throws:
JRException
- if the data source creation has failed
-
dispose
public void dispose(JRDataSource dataSource) throws JRException
Description copied from interface:JRDataSourceProvider
Disposes the data source previously obtained using thecreate
method. This method must close any resources associated with the data source. For instance the database connection should be closed in case of theJRResultSetDataSource
.
Note: The provider must take care of the resource - data source association. For example in case of theJRResultSetDataSource
a subclass of this data source can be created. This subclass will hold the database connection and the prepared statement that were used to obtain the ResultSet. On the time of the dispose these resources can be retrieved from the data source object and closed.- Specified by:
dispose
in interfaceJRDataSourceProvider
- Parameters:
dataSource
- the data source to dispose- Throws:
JRException
- if the data source could not be disposed
-
getColumnNames
public String[] getColumnNames()
-
setColumnNames
public void setColumnNames(String[] colNames)
-
getDateFormat
public DateFormat getDateFormat()
-
setDateFormat
public void setDateFormat(DateFormat dateFormat)
-
getFieldDelimiter
public char getFieldDelimiter()
-
setFieldDelimiter
public void setFieldDelimiter(char fieldDelimiter)
-
getRecordDelimiter
public String getRecordDelimiter()
-
setRecordDelimiter
public void setRecordDelimiter(String recordDelimiter)
-
getNumberFormat
public NumberFormat getNumberFormat()
-
setNumberFormat
public void setNumberFormat(NumberFormat numberFormat)
-
-