org.apache.derby.impl.store.access.conglomerate
Class OpenConglomerateScratchSpace
- java.lang.Object
-
- org.apache.derby.impl.store.access.conglomerate.OpenConglomerateScratchSpace
-
- All Implemented Interfaces:
- DynamicCompiledOpenConglomInfo
public class OpenConglomerateScratchSpace extends java.lang.Object implements DynamicCompiledOpenConglomInfo
A utility class to store and use temporary scratch space associated with a conglomerate.
-
-
Constructor Summary
Constructors Constructor and Description OpenConglomerateScratchSpace(int[] format_ids, int[] collation_ids, boolean hasCollatedTypes)Creates a new scratch space.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description DataValueDescriptor[]get_row_for_export(Transaction rawtran)Return an empty template (possibly partial) row to be given back to a client.RowPositionget_scratch_row_position()Return a scratch RowPosition.DataValueDescriptor[]get_scratch_row(Transaction rawtran)Return an empty template (possibly partial) row to be used and reused internally for processing.DataValueDescriptor[]get_template(Transaction rawtran)Return a complete empty row.booleanhasCollatedTypes()Tells if there is at least one column with a collation different than UCS BASIC in the conglomerate.
-
-
-
Constructor Detail
-
OpenConglomerateScratchSpace
public OpenConglomerateScratchSpace(int[] format_ids, int[] collation_ids, boolean hasCollatedTypes)Creates a new scratch space.- Parameters:
format_ids- format identifiers for columns in the rowcollation_ids- collation identifiers for the columns in the rowhasCollatedTypes- whether there is at least one collated type with a collation other than UCS BASIC in the conglomerate
-
-
Method Detail
-
get_row_for_export
public DataValueDescriptor[] get_row_for_export(Transaction rawtran) throws StandardException
Return an empty template (possibly partial) row to be given back to a client.The main use of this is for fetchSet() and fetchNextGroup() which allocate rows and then give them back entirely to the caller.
- Returns:
- The row to use.
- Throws:
StandardException- Standard exception policy.
-
get_scratch_row
public DataValueDescriptor[] get_scratch_row(Transaction rawtran) throws StandardException
Return an empty template (possibly partial) row to be used and reused internally for processing.The main use of this is for qualifying rows where a row has not been provided by the client. This routine cache's a single row for reuse by the caller, if the caller needs 2 concurrent scratch rows, some other mechanism must be used.
- Returns:
- The row to use.
- Throws:
StandardException- Standard exception policy.
-
get_template
public DataValueDescriptor[] get_template(Transaction rawtran) throws StandardException
Return a complete empty row.The main use of this is for searching a tree where a complete copy of the row is needed for searching.
- Returns:
- The template to use.
- Throws:
StandardException- Standard exception policy.
-
get_scratch_row_position
public RowPosition get_scratch_row_position()
Return a scratch RowPosition.Used by GenericConglomerateController.delete() and GenericConglomerateController.replace(). It may be reused so callers must insure that object no longer needed before next possible call to get it again.
- Returns:
- a scratch RowPosition.
-
hasCollatedTypes
public boolean hasCollatedTypes()
Tells if there is at least one column with a collation different than UCS BASIC in the conglomerate.- Returns:
trueif there is at least one column with a collation different than UCS BASIC.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG