com.partnersoft.v3x.io.formats.dbf
Class DBFDataRecordSource

java.lang.Object
  extended by com.partnersoft.v3x.data.DataRecordSource
      extended by com.partnersoft.v3x.io.formats.record.StreamingDataRecordSource
          extended by com.partnersoft.v3x.io.formats.dbf.DBFDataRecordSource

public class DBFDataRecordSource
extends StreamingDataRecordSource


Field Summary
static char CHARACTER
           
static char DATE
           
static char FLOAT
           
static char MEMO
           
static char NUMERIC
           
static int VERSION_DBT
           
static int VERSION_FOXBASE
           
static int VERSION_NO_DBT
           
static int VERSION_VISUAL_FOXPRO
           
 
Fields inherited from class com.partnersoft.v3x.data.DataRecordSource
iteratorWrapper, mapWrapper, parameters, showProgress, verbose
 
Constructor Summary
DBFDataRecordSource()
           
 
Method Summary
 void close()
          Do any cleanup needed.
protected  void initialize(java.util.ArrayList fieldNames)
          Subclasses must implement this to set themselves up and populate the fieldNames list.
static void main(java.lang.String[] argv)
           
protected  boolean nextRecord(java.util.ArrayList fillThis)
          Subclasses must implement this to set the current values in the given arraylist.
 
Methods inherited from class com.partnersoft.v3x.io.formats.record.StreamingDataRecordSource
copyStateFrom, createInputStream, getPath, getPaths, setInputStream, setPath, setPaths
 
Methods inherited from class com.partnersoft.v3x.data.DataRecordSource
asIterator, asMap, clear, clone, containsKey, containsValue, entrySet, fieldNames, fieldValues, get, getAfterActions, getBeforeActions, getContentsMap, getParameters, getPosition, getShowProgress, getTransforms, getTransformScript, hasNext, initialize, isEmpty, isVerbose, keySet, next, put, putAll, remove, remove, reset, setAfterActions, setBeforeActions, setParameters, setShowProgress, setTransforms, setTransformScript, setVerbose, size, values
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CHARACTER

public static final char CHARACTER
See Also:
Constant Field Values

DATE

public static final char DATE
See Also:
Constant Field Values

FLOAT

public static final char FLOAT
See Also:
Constant Field Values

NUMERIC

public static final char NUMERIC
See Also:
Constant Field Values

MEMO

public static final char MEMO
See Also:
Constant Field Values

VERSION_FOXBASE

public static final int VERSION_FOXBASE
See Also:
Constant Field Values

VERSION_NO_DBT

public static final int VERSION_NO_DBT
See Also:
Constant Field Values

VERSION_VISUAL_FOXPRO

public static final int VERSION_VISUAL_FOXPRO
See Also:
Constant Field Values

VERSION_DBT

public static final int VERSION_DBT
See Also:
Constant Field Values
Constructor Detail

DBFDataRecordSource

public DBFDataRecordSource()
Method Detail

main

public static void main(java.lang.String[] argv)

initialize

protected void initialize(java.util.ArrayList fieldNames)
Description copied from class: DataRecordSource
Subclasses must implement this to set themselves up and populate the fieldNames list. The list is empty to start with.

Specified by:
initialize in class DataRecordSource

nextRecord

protected boolean nextRecord(java.util.ArrayList fillThis)
Description copied from class: DataRecordSource
Subclasses must implement this to set the current values in the given arraylist. While this does require pulling all values from e.g. a ResultSet, it prevents oddities such as the can-only-fetch-once bug in MSAccess. The list will already be populated with values, so set(index, value) will work for all indices (assuming your record is the same size as the fieldNames list, of course). It is not nulled out, so be sure to set all values. This is done as a prefetch; return true if the prefetch succeeds.

Specified by:
nextRecord in class DataRecordSource

close

public void close()
Description copied from class: DataRecordSource
Do any cleanup needed. Be sure to call super.close().

Overrides:
close in class DataRecordSource