Package com.ocient.cli.extract
Class ResultSetExtractor
java.lang.Object
com.ocient.cli.extract.ResultSetExtractor
- All Implemented Interfaces:
RowTransformerFactory
- Direct Known Subclasses:
WriteThroughResultSetExtractor
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassImplementation ofRowTransformerthat sanitizes the column values, then formats the row data into a flattened, string-based representation (e.g., CSV, TSV). -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ExtractConfigurationprotected final RecordExtractorFactory -
Method Summary
Modifier and TypeMethodDescriptionacquire()Acquires and returns aRowTransformerinstance.abstract voidextract(ResultSet resultSet, ResultSetMetaData resultSetMetaData) protected voidparseHeader(ResultSetMetaData resultSetMetaData) voidrelease(RowTransformer transformer) Releases aRowTransformerinstance back to the factory.protected voidsanitizeValues(List<Object> row, ExtractConfiguration config) protected RecordExtractorFactory.WriterHandlestartNewWriter(int fileIndex) protected static String
-
Field Details
-
recordExtractorFactory
-
extractConfig
-
headers
-
-
Method Details
-
extract
public abstract void extract(ResultSet resultSet, ResultSetMetaData resultSetMetaData) throws IllegalStateException, IOException, SQLException -
startNewWriter
- Throws:
IOException
-
sanitizeValues
-
parseHeader
- Throws:
SQLException
-
acquire
Description copied from interface:RowTransformerFactoryAcquires and returns aRowTransformerinstance.- Specified by:
acquirein interfaceRowTransformerFactory
-
release
Description copied from interface:RowTransformerFactoryReleases aRowTransformerinstance back to the factory. This method should be called when the transformer is no longer needed.- Specified by:
releasein interfaceRowTransformerFactory- Parameters:
transformer- The non-nullRowTransformerinstance, previously obtained from this factory.
-
unpack
-