Package org.apache.metamodel.csv
Class CsvDataContext
- java.lang.Object
-
- org.apache.metamodel.AbstractDataContext
-
- org.apache.metamodel.QueryPostprocessDataContext
-
- org.apache.metamodel.csv.CsvDataContext
-
- All Implemented Interfaces:
org.apache.metamodel.convert.HasReadTypeConverters,org.apache.metamodel.DataContext,org.apache.metamodel.UpdateableDataContext
public final class CsvDataContext extends org.apache.metamodel.QueryPostprocessDataContext implements org.apache.metamodel.UpdateableDataContextDataContext implementation for reading CSV files.
-
-
Constructor Summary
Constructors Constructor Description CsvDataContext(File file)Constructs a CSV DataContext based on a fileCsvDataContext(File file, CsvConfiguration configuration)Constructs a CSV DataContext based on a file The file provided can be either existing or non-existing.CsvDataContext(InputStream inputStream, CsvConfiguration configuration)Constructs a CSV DataContext based on anInputStreamCsvDataContext(URL url, CsvConfiguration configuration)Constructs a CSV DataContext based on aURLCsvDataContext(org.apache.metamodel.util.Resource resource, CsvConfiguration configuration)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected com.opencsv.CSVReadercreateCsvReader(int skipLines)protected com.opencsv.CSVReadercreateCsvReader(BufferedReader reader)protected NumberexecuteCountQuery(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.query.FilterItem> whereItems, boolean functionApproximationAllowed)org.apache.metamodel.UpdateSummaryexecuteUpdate(org.apache.metamodel.UpdateScript update)CsvConfigurationgetConfiguration()Gets the CSV configuration usedprotected org.apache.metamodel.csv.CsvSchemagetMainSchema()protected StringgetMainSchemaName()org.apache.metamodel.util.ResourcegetResource()Gets the resource that is being read from.protected booleanisWritable()org.apache.metamodel.data.DataSetmaterializeMainSchemaTable(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.schema.Column> columns, int maxRows)-
Methods inherited from class org.apache.metamodel.QueryPostprocessDataContext
addConverter, executePrimaryKeyLookupQuery, executeQuery, getDefaultSchemaName, getSchemaByNameInternal, getSchemaNamesInternal, isMainSchemaTable, isScalarFunctionMaterialized, materializeFromItem, materializeMainSchemaTable, materializeMainSchemaTable, materializeMainSchemaTableSelect, materializeTable
-
Methods inherited from class org.apache.metamodel.AbstractDataContext
compileQuery, executeQuery, executeQuery, getColumnByQualifiedLabel, getDefaultSchema, getSchemaByName, getSchemaNames, getSchemas, getTableByQualifiedLabel, isQualifiedPathDelim, onSchemaCacheRefreshed, parseQuery, query, refreshSchemas
-
-
-
-
Constructor Detail
-
CsvDataContext
public CsvDataContext(File file, CsvConfiguration configuration)
Constructs a CSV DataContext based on a file The file provided can be either existing or non-existing. In the case of non-existing files, a file will be automatically created when a CREATE TABLE update is executed on the DataContext.- Parameters:
file-configuration-
-
CsvDataContext
public CsvDataContext(org.apache.metamodel.util.Resource resource, CsvConfiguration configuration)
-
CsvDataContext
public CsvDataContext(URL url, CsvConfiguration configuration)
Constructs a CSV DataContext based on aURL- Parameters:
url-configuration-
-
CsvDataContext
public CsvDataContext(File file)
Constructs a CSV DataContext based on a file- Parameters:
file-
-
CsvDataContext
public CsvDataContext(InputStream inputStream, CsvConfiguration configuration)
Constructs a CSV DataContext based on anInputStream- Parameters:
inputStream-configuration-
-
-
Method Detail
-
getConfiguration
public CsvConfiguration getConfiguration()
Gets the CSV configuration used- Returns:
- a CSV configuration
-
getResource
public org.apache.metamodel.util.Resource getResource()
Gets the resource that is being read from.- Returns:
-
executeCountQuery
protected Number executeCountQuery(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.query.FilterItem> whereItems, boolean functionApproximationAllowed)
- Overrides:
executeCountQueryin classorg.apache.metamodel.QueryPostprocessDataContext
-
materializeMainSchemaTable
public org.apache.metamodel.data.DataSet materializeMainSchemaTable(org.apache.metamodel.schema.Table table, List<org.apache.metamodel.schema.Column> columns, int maxRows)- Specified by:
materializeMainSchemaTablein classorg.apache.metamodel.QueryPostprocessDataContext
-
createCsvReader
protected com.opencsv.CSVReader createCsvReader(int skipLines)
-
createCsvReader
protected com.opencsv.CSVReader createCsvReader(BufferedReader reader)
-
getMainSchema
protected org.apache.metamodel.csv.CsvSchema getMainSchema() throws org.apache.metamodel.MetaModelException- Specified by:
getMainSchemain classorg.apache.metamodel.QueryPostprocessDataContext- Throws:
org.apache.metamodel.MetaModelException
-
getMainSchemaName
protected String getMainSchemaName()
- Specified by:
getMainSchemaNamein classorg.apache.metamodel.QueryPostprocessDataContext
-
isWritable
protected boolean isWritable()
-
executeUpdate
public org.apache.metamodel.UpdateSummary executeUpdate(org.apache.metamodel.UpdateScript update)
- Specified by:
executeUpdatein interfaceorg.apache.metamodel.UpdateableDataContext
-
-