Class ConglomerateUtil
- java.lang.Object
-
- org.apache.derby.impl.store.access.conglomerate.ConglomerateUtil
-
public final class ConglomerateUtil extends java.lang.Object
Static utility routine package for all Conglomerates.A collection of static utility routines that are shared by multiple Conglomerate implementations.
-
-
Constructor Summary
Constructors Constructor Description ConglomerateUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static int[]
createCollationIds(int sizeof_ids, int[] collationIds)
Given an array of columnOrderings, return an array of collation ids.static int[]
createFormatIds(DataValueDescriptor[] template)
Given an array of objects, return an array of format id's.static java.util.Properties
createRawStorePropertySet(java.util.Properties prop)
Create a list of all the properties that Access wants to export through the getInternalTablePropertySet() call.static java.util.Properties
createUserRawStorePropertySet(java.util.Properties prop)
Create a list of all the properties that Access wants to export through the getInternalTablePropertySet() call.static java.lang.String
debugPage(Page page, int start_slot, boolean full_rh, DataValueDescriptor[] template)
Format a page of data, as access see's it.static boolean
readCollationIdArray(int[] collation_id_array, java.io.ObjectInput in)
Read "sparse" array of collation id'sstatic int[]
readFormatIdArray(int num, java.io.ObjectInput in)
Read a format id array in from a stream.static void
writeCollationIdArray(int[] collation_id_array, java.io.ObjectOutput out)
Write array of collation id's as a sparse array.static void
writeFormatIdArray(int[] format_id_array, java.io.ObjectOutput out)
Write a format id array to a stream.
-
-
-
Method Detail
-
createRawStorePropertySet
public static java.util.Properties createRawStorePropertySet(java.util.Properties prop)
Create a list of all the properties that Access wants to export through the getInternalTablePropertySet() call.This utility routine creates a list of properties that are shared by all conglomerates. This list contains the following: derby.storage.initialPages derby.storage.minimumRecordSize derby.storage.pageReservedSpace derby.storage.pageSize derby.storage.reusableRecordId
- Parameters:
prop
- If non-null the property set to fill in.- Returns:
- The Property set filled in.
-
createUserRawStorePropertySet
public static java.util.Properties createUserRawStorePropertySet(java.util.Properties prop)
Create a list of all the properties that Access wants to export through the getInternalTablePropertySet() call.This utility routine creates a list of properties that are shared by all conglomerates. This list contains the following: derby.storage.initialPages derby.storage.minimumRecordSize derby.storage.pageReservedSpace derby.storage.pageSize
- Parameters:
prop
- If non-null the property set to fill in.- Returns:
- The Property set filled in.
-
createFormatIds
public static int[] createFormatIds(DataValueDescriptor[] template)
Given an array of objects, return an array of format id's.- Parameters:
template
- a row.- Returns:
- An array of format id's describing the input array of objects.
-
readFormatIdArray
public static int[] readFormatIdArray(int num, java.io.ObjectInput in) throws java.io.IOException
Read a format id array in from a stream.- Parameters:
num
- The number of format ids to read.in
- The stream to read the array of format id's from.- Returns:
- A new array of format id's.
- Throws:
java.io.IOException
- Thown on read error.
-
writeFormatIdArray
public static void writeFormatIdArray(int[] format_id_array, java.io.ObjectOutput out) throws java.io.IOException
Write a format id array to a stream.- Parameters:
format_id_array
- The array of format ids to write.out
- The stream to write the array of format id's to.- Throws:
java.io.IOException
- Thown on write error.
-
createCollationIds
public static int[] createCollationIds(int sizeof_ids, int[] collationIds)
Given an array of columnOrderings, return an array of collation ids.If input array is null, produce a default collation_id array of all StringDataValue.COLLATION_TYPE_UCS_BASIC values.
- Returns:
- An array of collation id's describing the input array of objects.
-
writeCollationIdArray
public static void writeCollationIdArray(int[] collation_id_array, java.io.ObjectOutput out) throws java.io.IOException
Write array of collation id's as a sparse array.The format only writes out those array entries which are not StringDataValue.COLLATION_TYPE_UCS_BASIC. The sparse array first writes the number of entries as a compressed int. And then for each non-COLLATION_TYPE_UCS_BASIC, it writes out a pair of compressed ints: (array offset, array entry value)
- Parameters:
collation_id_array
- The array of collation ids to write.out
- The stream to write the collation id's to.- Throws:
java.io.IOException
- Thown on write error.
-
readCollationIdArray
public static boolean readCollationIdArray(int[] collation_id_array, java.io.ObjectInput in) throws java.io.IOException
Read "sparse" array of collation id'sThe format to be read first has the number of entries as a compressed int. And then for each non-COLLATION_TYPE_UCS_BASIC value there is pair of compressed ints: (array offset, array entry value)
reads the sparse array as written by writeCollationIdArray().
- Parameters:
collation_id_array
- update's only those array entries that have been set in the sparse array stream. Those values are set as indicated by reading the sparse array from the stream.in
- The stream to read the collation info from.- Returns:
true
if at least one column has a different collation than UCS BASIC,false
otherwise.- Throws:
java.io.IOException
-
debugPage
public static java.lang.String debugPage(Page page, int start_slot, boolean full_rh, DataValueDescriptor[] template)
Format a page of data, as access see's it.
-
-