Class TemplateRow
- java.lang.Object
-
- org.apache.derby.impl.store.access.conglomerate.TemplateRow
-
public final class TemplateRow extends java.lang.Object
-
-
Constructor Summary
Constructors Modifier Constructor Description private
TemplateRow()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static DataValueDescriptor[]
allocate_objects(Transaction rawtran, int num_cols_to_allocate, FormatableBitSet column_list, int[] format_ids, int[] collation_ids)
Allocate new objects to array based on format id's and column_list.static boolean
checkColumnTypes(DataValueFactory dvf, int[] format_ids, int[] collation_ids, DataValueDescriptor[] row)
Check that columns in the row conform to a set of format id's, both in number and type.static DataValueDescriptor[]
newBranchRow(Transaction rawtran, int[] format_ids, int[] collation_ids, DataValueDescriptor page_ptr)
Generate an "empty" row to match the format id + coluumn specification.static DataValueDescriptor[]
newRow(Transaction rawtran, FormatableBitSet column_list, int[] format_ids, int[] collation_ids)
Generate an "empty" row to match the format id specification.static DataValueDescriptor[]
newRow(DataValueDescriptor[] template)
Generate an "empty" row to match the format id specification.static DataValueDescriptor[]
newU8Row(int nkeys)
Constuctor for creating a template row which stores n SQLLongint's
-
-
-
Method Detail
-
allocate_objects
private static DataValueDescriptor[] allocate_objects(Transaction rawtran, int num_cols_to_allocate, FormatableBitSet column_list, int[] format_ids, int[] collation_ids) throws StandardException
Allocate new objects to array based on format id's and column_list.- Parameters:
num_cols_to_allocate
- The number of columns to allocate for array.column_list
- description of partial set of columns to built as described in RowUtil. If null do all the columns.format_ids
- An array of format ids representing every column in the table. column_list describes which of these columns to populate into the columns array.- Throws:
StandardException
- Standard exception policy.
-
newU8Row
public static DataValueDescriptor[] newU8Row(int nkeys)
Constuctor for creating a template row which stores n SQLLongint's
-
newRow
public static DataValueDescriptor[] newRow(DataValueDescriptor[] template) throws StandardException
Generate an "empty" row to match the format id specification.Generate an array of new'd objects matching the format id specification passed in. This routine is mostly used by the btree code to generate temporary rows needed during operations like split. It is more efficient to allocate new objects based on the old object vs. calling the Monitor.
- Parameters:
template
- An array which represents a row as described in RowUtil.- Returns:
- The new row.
- Throws:
StandardException
- Standard exception policy.- See Also:
RowUtil
-
newRow
public static DataValueDescriptor[] newRow(Transaction rawtran, FormatableBitSet column_list, int[] format_ids, int[] collation_ids) throws StandardException
Generate an "empty" row to match the format id specification.Generate an array of new'd objects matching the format id specification passed in. This routine is mostly used by the btree code to generate temporary rows needed during operations like split.
- Parameters:
format_ids
- an array of format id's, one per column in row.- Returns:
- The new row.
- Throws:
StandardException
- Standard exception policy.
-
newBranchRow
public static DataValueDescriptor[] newBranchRow(Transaction rawtran, int[] format_ids, int[] collation_ids, DataValueDescriptor page_ptr) throws StandardException
Generate an "empty" row to match the format id + coluumn specification.Generate an array of new'd objects matching the format id specification passed in, and the column passed in. The new row is first made up of columns matching the format ids, and then followed by one other column matching the column passed in. This routine is mostly used by the btree code to generate temporary branch rows needed during operations like split.
- Parameters:
format_ids
- an array of format id's, one per column in row.page_ptr
- The object to place in the last column of the template.- Returns:
- The new row.
- Throws:
StandardException
- Standard exception policy.
-
checkColumnTypes
public static boolean checkColumnTypes(DataValueFactory dvf, int[] format_ids, int[] collation_ids, DataValueDescriptor[] row) throws StandardException
Check that columns in the row conform to a set of format id's, both in number and type.- Parameters:
format_ids
- array of format ids which are the types of cols in rowrow
- the array of columns that make up the row.- Returns:
- boolean indicating if template matches format id's
- Throws:
StandardException
- Standard exception policy.
-
-