com.partnersoft.v3x.io.sql
Class SQLDataRecordSource
java.lang.Object
com.partnersoft.v3x.data.DataRecordSource
com.partnersoft.v3x.io.formats.record.StreamingDataRecordSource
com.partnersoft.v3x.io.sql.SQLDataRecordSource
public class SQLDataRecordSource
- extends StreamingDataRecordSource
A source for data records, derived from an SQL query.
| 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 |
SQLDataRecordSource
public SQLDataRecordSource()
SQLDataRecordSource
public SQLDataRecordSource(DatabaseConnectionConfig database,
java.lang.String query)
SQLDataRecordSource
public SQLDataRecordSource(DatabaseConnectionConfig database,
java.sql.Connection connection,
java.lang.String query)
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
getDatabase
public DatabaseConnectionConfig getDatabase()
setDatabase
public void setDatabase(DatabaseConnectionConfig newDatabase)
getQuery
public java.lang.String getQuery()
setQuery
public void setQuery(java.lang.String newQuery)
copyStateFrom
protected void copyStateFrom(java.lang.Object nother)
- Overrides:
copyStateFrom in class StreamingDataRecordSource