org.archiviststoolkit.importer
Class TabImportHandler

java.lang.Object
  extended by org.archiviststoolkit.importer.ImportHandler
      extended by org.archiviststoolkit.importer.TabImportHandler
All Implemented Interfaces:
java.lang.Runnable
Direct Known Subclasses:
DelimitedAccessionImportHandler, DelimitedDigitalObjectImportHandler, TabSubjectImportHandler

public abstract class TabImportHandler
extends ImportHandler

Base class for all CSV derived import handlers.


Field Summary
protected  DomainImportController controller
          a reference to the domainimport controller.
static char DEFAULT_SEP
          The default separator.
protected  java.util.ArrayList fieldList
           
 
Fields inherited from class org.archiviststoolkit.importer.ImportHandler
file, importController
 
Constructor Summary
TabImportHandler()
          Constructor.
 
Method Summary
 java.util.ArrayList getColumnList()
          Get the list of columns.
 java.lang.String getSourceApplication()
          Get the source application name.
abstract  java.lang.Object handleRow(java.util.ArrayList dataList)
          Handle a newly parsed row.
 boolean importFile(java.io.File file, DomainImportController domainController, InfiniteProgressPanel progressPanel)
          Import the file.
 boolean isAutoCompleteOn()
          is autocomplete on.
abstract  java.util.ArrayList mapColumn(java.util.ArrayList dataList)
          Map a column.
 java.util.ArrayList parse(java.lang.String line)
          parse: break the input String into fields.
 void purify(java.util.ArrayList arrayList)
          Clean the datalist.
 void readHeaderRecord(java.io.File file)
           
 void setColumnList(java.util.ArrayList columnList)
          Set the list of columns.
 void setSourceApplication(java.lang.String sourceApplication)
          Set the source application name.
 
Methods inherited from class org.archiviststoolkit.importer.ImportHandler
canImportFile, getFile, getImportController, getInitialChunk, run, startImportThread
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_SEP

public static final char DEFAULT_SEP
The default separator.

See Also:
Constant Field Values

controller

protected DomainImportController controller
a reference to the domainimport controller.


fieldList

protected java.util.ArrayList fieldList
Constructor Detail

TabImportHandler

public TabImportHandler()
Constructor.

Method Detail

mapColumn

public abstract java.util.ArrayList mapColumn(java.util.ArrayList dataList)
Map a column.

Parameters:
dataList - the datalist
Returns:
a column

handleRow

public abstract java.lang.Object handleRow(java.util.ArrayList dataList)
                                    throws ImportException,
                                           ImportBadLookupException,
                                           UnknownLookupListException
Handle a newly parsed row.

Parameters:
dataList - the datalist map to use
Returns:
the constructed domain object
Throws:
ImportException
ImportBadLookupException
UnknownLookupListException

getSourceApplication

public java.lang.String getSourceApplication()
Get the source application name.

Returns:
the name of the source application

setSourceApplication

public void setSourceApplication(java.lang.String sourceApplication)
Set the source application name.

Parameters:
sourceApplication - the name of the source application

setColumnList

public void setColumnList(java.util.ArrayList columnList)
Set the list of columns.

Parameters:
columnList - the list of columns.

getColumnList

public java.util.ArrayList getColumnList()
Get the list of columns.

Returns:
the list of columns.

isAutoCompleteOn

public boolean isAutoCompleteOn()
is autocomplete on.

Returns:
autocomplete status.

readHeaderRecord

public void readHeaderRecord(java.io.File file)

importFile

public boolean importFile(java.io.File file,
                          DomainImportController domainController,
                          InfiniteProgressPanel progressPanel)
                   throws ImportException
Import the file.

Specified by:
importFile in class ImportHandler
Parameters:
file - the file to import.
domainController - which controller to use.
progressPanel -
Returns:
if the import succeded.
Throws:
ImportException

parse

public java.util.ArrayList parse(java.lang.String line)
parse: break the input String into fields.

Parameters:
line - the line to parse
Returns:
java.util.Iterator containing each field from the original as a String, in order.

purify

public void purify(java.util.ArrayList arrayList)
Clean the datalist.

Parameters:
arrayList - the list to be cleansed.