org.nuiton.util.csv
Class Import<E>
java.lang.Object
org.nuiton.util.csv.Import<E>
- All Implemented Interfaces:
- Closeable, Iterable<E>
- Direct Known Subclasses:
- ImportToMap
public class Import<E>
- extends Object
- implements Iterable<E>, Closeable
Import engine for a given import model.
It acts as an Iterable, you can use directly inside a foreach.
The method prepareAndValidate() will be invoked before all and
only once. It mainly obtain header from the csv input, pass it to the model
and then validate the model.
- Since:
- 2.4
- Author:
- bleny , tchemit , fdesbois
|
Field Summary |
protected ImportModel<E> |
model
Csv import model. |
protected com.csvreader.CsvReader |
reader
Csv reader (this is the input). |
protected boolean |
validate
A flag to know if model was already validated. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
model
protected ImportModel<E> model
- Csv import model.
reader
protected com.csvreader.CsvReader reader
- Csv reader (this is the input).
validate
protected boolean validate
- A flag to know if model was already validated.
Save once done to prevent multiple headers read leading to consider
first lines as headers.
Import
protected Import(ImportModel<E> model,
InputStream inputStream)
Import
protected Import(ImportModel<E> model,
Reader reader)
newImport
public static <E> Import<E> newImport(ImportModel<E> model,
InputStream inputStream)
newImport
public static <E> Import<E> newImport(ImportModel<E> model,
Reader reader)
iterator
public Iterator<E> iterator()
- Specified by:
iterator in interface Iterable<E>
close
public void close()
- Specified by:
close in interface Closeable
prepareAndValidate
public void prepareAndValidate()
checkHeaderNamesAreAllKnown
protected void checkHeaderNamesAreAllKnown(String[] headers)
checkUniqueModelColumnNames
protected void checkUniqueModelColumnNames()
checkAllManadatoryHeadersArePresent
protected void checkAllManadatoryHeadersArePresent(String[] headers)
getHeaders
protected String[] getHeaders()
throws ImportRuntimeException
- Throws:
ImportRuntimeException
getNonIgnoredHeaders
protected List<ImportableColumn<E,Object>> getNonIgnoredHeaders()
getAllMandatoryHeaders
protected List<ImportableColumn<E,?>> getAllMandatoryHeaders()
readFirstLine
protected void readFirstLine()
throws ImportRuntimeException
- Throws:
ImportRuntimeException
Copyright © 2011 CodeLutin. All Rights Reserved.