Class RowInfo
vsValues
contains on input the suggested values to update the VirtualSpace row with. The row processor can modify this array's Value
's to it's liking.The VirtualSpace arrays vsValues
and vsValueTypes
are of the same size, i.e. the amount of columns in the VSTable.
The SQL arrays are of same sizes, i.e. the amount of ResultSetColumnProp
's in the ResultSetProps
.
It can happen that the VirtualSpace arrays have different lengths and ordering that the SQL arrays due to differences in their connections to each other. Values that are null
i.e. unset after a call to
will cause the VirtualSpace table row to get default values for new rows, and keep the old values when overwriting the table.IResultSetRowProcessor.processRow(RowInfo)
- Author:
- Christopher Mindus
Field Summary
Modifier and TypeFieldDescriptionfinal ResultSet
The SQL ResultSet instance.final ResultSetProps
The result set properties for the transaction.final int[]
The SQL column indicies are one-based values, 1=first column, etc.final Object[]
The SQL row values in their native form.final VSTable
The VSTable connected to the result set.final int[]
The indicies of the VirtualSpace column of the row.final Value[]
The row values.final Value.Type[]
The VirtualSpace Value types for the row.Constructor Summary
ConstructorDescriptionRowInfo
(ResultSetProps resultSetProps, VSTable table, ResultSet resultSet, int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, Object[] sqlValues, Value[] vsValues) Constructor.Method Summary
Modifier and TypeMethodDescriptionvoid
initialize
(int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, Object[] sqlValues, Value[] vsValues) Initializes this same instance for re-use to avoid garbage collection.
Field Details
table
The VSTable connected to the result set.resultSet
The SQL ResultSet instance.resultSetProps
The result set properties for the transaction.vsColumnIndicies
public final int[] vsColumnIndiciesThe indicies of the VirtualSpace column of the row. An entry of-1
indicates that the result set column property is not connected to a VS column. This array contains zero-based indicies.Changes done to this array will not affect anything.
vsValueTypes
The VirtualSpace Value types for the row. Changes done to this array will not affect anything. If a result set column is not connected to a VS column, the corresponding entry in the array will benull
.Changes done to this array will not affect anything.
sqlColumnIndicies
public final int[] sqlColumnIndiciesThe SQL column indicies are one-based values, 1=first column, etc.Changes to this array does not affect anything.
sqlValues
The SQL row values in their native form.Changes done to this array will not affect anything.
vsValues
The row values. This array's entries can be modified.
Constructor Details
RowInfo
public RowInfo(ResultSetProps resultSetProps, VSTable table, ResultSet resultSet, int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, Object[] sqlValues, Value[] vsValues) Constructor.- Parameters:
resultSetProps
- The result set propertiestable
- The table.resultSet
- The JDBC result set.vsColumnIndicies
- The VS column indicies.vsValueTypes
- The VS value types.sqlColumnIndicies
- The indicies of the JDBC table columns.sqlValues
- The values retrieved from a row in the table for the columns.vsValues
- The converted VS values from the JDBC values.
Method Details
initialize
public void initialize(int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, Object[] sqlValues, Value[] vsValues) Initializes this same instance for re-use to avoid garbage collection.- Parameters:
vsColumnIndicies
- The VS column indicies.vsValueTypes
- The VS value types.sqlColumnIndicies
- The indicies of the JDBC table columns.sqlValues
- The values retrieved from a row in the table for the columns.vsValues
- The converted VS values from the JDBC values.