Class RowInfo
- java.lang.Object
- com.iizix.db.api.RowInfo
public class RowInfo extends java.lang.Object
Row data instance holding the values to process for a row. This instance is a data holder instance and serves as input/output for the row processor. The member arrayvsValues
contains on input the suggested values to update the VirtualSpace row with. The row processor can modify this array'sValue
's to it's liking.The VirtualSpace arrays
vsValues
andvsValueTypes
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 theResultSetProps
.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
Fields Modifier and Type Field Description java.sql.ResultSet
resultSet
The SQL ResultSet instance.ResultSetProps
resultSetProps
The result set properties for the transaction.int[]
sqlColumnIndicies
The SQL column indicies are one-based values, 1=first column, etc.java.lang.Object[]
sqlValues
The SQL row values in their native form.VSTable
table
The VSTable connected to the result set.int[]
vsColumnIndicies
The indicies of the VirtualSpace column of the row.Value[]
vsValues
The row values.Value.Type[]
vsValueTypes
The VirtualSpace Value types for the row.
Constructor Summary
Constructors Constructor Description RowInfo(ResultSetProps resultSetProps, VSTable table, java.sql.ResultSet resultSet, int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, java.lang.Object[] sqlValues, Value[] vsValues)
Constructor.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
initialize(int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, java.lang.Object[] sqlValues, Value[] vsValues)
Initializes this same instance for re-use to avoid garbage collection.
Field Detail
table
public final VSTable table
The VSTable connected to the result set.
resultSet
public final java.sql.ResultSet resultSet
The SQL ResultSet instance.
resultSetProps
public final ResultSetProps resultSetProps
The result set properties for the transaction.
vsColumnIndicies
public final int[] vsColumnIndicies
The 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
public final Value.Type[] 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[] sqlColumnIndicies
The SQL column indicies are one-based values, 1=first column, etc.Changes to this array does not affect anything.
sqlValues
public final java.lang.Object[] sqlValues
The SQL row values in their native form.Changes done to this array will not affect anything.
vsValues
public final Value[] vsValues
The row values. This array's entries can be modified.
Constructor Detail
RowInfo
public RowInfo(ResultSetProps resultSetProps, VSTable table, java.sql.ResultSet resultSet, int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, java.lang.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 Detail
initialize
public void initialize(int[] vsColumnIndicies, Value.Type[] vsValueTypes, int[] sqlColumnIndicies, java.lang.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.