class LongValueColumnImpl extends ColumnImpl
| Modifier and Type | Class and Description |
|---|---|
private class |
LongValueColumnImpl.LegacyLongValueBufferHolder
Manages a common, shared extra page for long values.
|
private class |
LongValueColumnImpl.LongValueBufferHolder
Manages secondary page buffers for long value writing.
|
private class |
LongValueColumnImpl.UmapLongValueBufferHolder
Manages the column usage maps for long values.
|
ColumnImpl.AutoNumberGenerator, ColumnImpl.InitArgs, ColumnImpl.SortOrder| Modifier and Type | Field and Description |
|---|---|
private LongValueColumnImpl.LongValueBufferHolder |
_lvalBufferH
Holds additional info for writing long values
|
private static int |
LONG_VALUE_TYPE_MASK
Mask to apply the long length in order to get the flag bits (only the
first 2 bits are type flags).
|
private static byte |
LONG_VALUE_TYPE_OTHER_PAGE
Long value (LVAL) type that indicates that the value is stored on another
page
|
private static byte |
LONG_VALUE_TYPE_OTHER_PAGES
Long value (LVAL) type that indicates that the value is stored on
multiple other pages
|
private static byte |
LONG_VALUE_TYPE_THIS_PAGE
Long value (LVAL) type that indicates that the value is stored on the
same page
|
AUTO_NUMBER_FLAG_MASK, AUTO_NUMBER_GUID_FLAG_MASK, COMPRESSED_UNICODE_EXT_FLAG_MASK, FIXED_LEN_FLAG_MASK, GENERAL_LEGACY_SORT_ORDER, GENERAL_SORT_ORDER, HYPERLINK_FLAG_MASK, INVALID_AUTO_NUMBER, LOG, MILLIS_BETWEEN_EPOCH_AND_1900, NUMERIC_NEGATIVE_BYTE, RETURN_ROW_ID, UNKNOWN_FLAG_MASKAUTO_NUMBER, KEEP_VALUE| Constructor and Description |
|---|
LongValueColumnImpl(ColumnImpl.InitArgs args) |
| Modifier and Type | Method and Description |
|---|---|
protected int |
getMaxLengthInUnits() |
int |
getOwnedPageCount()
Returns the number of database pages owned by this column.
|
(package private) void |
postTableLoadInit()
Secondary column initialization after the table is fully loaded.
|
java.lang.Object |
read(byte[] data,
java.nio.ByteOrder order)
Deserialize a raw byte value for this column into an Object
|
private java.lang.String |
readLongStringValue(byte[] lvalDefinition) |
protected byte[] |
readLongValue(byte[] lvalDefinition) |
(package private) void |
setUsageMaps(UsageMap ownedPages,
UsageMap freeSpacePages)
Sets the usage maps for this column.
|
protected java.nio.ByteBuffer |
writeLongValue(byte[] value,
int remainingRowLength)
Write an LVAL column into a ByteBuffer inline if it fits, otherwise in
other data page(s).
|
private void |
writeLongValueHeader(java.nio.ByteBuffer lvalPage)
Writes the header info for a long value page.
|
protected java.nio.ByteBuffer |
writeRealData(java.lang.Object obj,
int remainingRowLength,
java.nio.ByteOrder order) |
booleanToInteger, compareTo, countVariableLength, create, decodeTextValue, decodeUncompressedText, encodeTextValue, encodeUncompressedText, fromDateDouble, fromLocalDateDouble, getAutoNumberGenerator, getCalendar, getCharset, getColumnIndex, getColumnNumber, getColumnValidator, getComplexInfo, getDatabase, getDisplayIndex, getFixedDataOffset, getFormat, getLength, getLengthInUnits, getName, getOriginalDataType, getPageChannel, getPrecision, getProperties, getRowValue, getRowValue, getScale, getSQLType, getTable, getTextCodePage, getTextSortOrder, getType, getVarLenTableIndex, getVersionHistoryColumn, isAppendOnly, isAutoNumber, isCalculated, isCompressedUnicode, isGUIDValue, isHyperlink, isImmutableValue, isRawData, isVariableLength, rawDataWrapper, read, readCodePage, readExtraFlags, readFromNullMask, readSortOrder, setColumnIndex, setColumnValidator, setRowValue, setRowValue, setVersionHistoryColumn, storeInNullMask, toBigDecimal, toBigDecimal, toBooleanValue, toByteArray, toCharSequence, toDateDouble, toInternalValue, toLocalDateDouble, toString, toUnscaledByteArray, validate, withErrorContext, write, write, writeDefinitions, writeFixedLengthField, writeFixedLengthField, writeToNullMaskprivate static final byte LONG_VALUE_TYPE_THIS_PAGE
private static final byte LONG_VALUE_TYPE_OTHER_PAGE
private static final byte LONG_VALUE_TYPE_OTHER_PAGES
private static final int LONG_VALUE_TYPE_MASK
private LongValueColumnImpl.LongValueBufferHolder _lvalBufferH
LongValueColumnImpl(ColumnImpl.InitArgs args) throws java.io.IOException
java.io.IOExceptionpublic int getOwnedPageCount()
ColumnImplgetOwnedPageCount in class ColumnImplvoid setUsageMaps(UsageMap ownedPages, UsageMap freeSpacePages)
ColumnImplsetUsageMaps in class ColumnImplvoid postTableLoadInit()
throws java.io.IOException
ColumnImplpostTableLoadInit in class ColumnImpljava.io.IOExceptionprotected int getMaxLengthInUnits()
public java.lang.Object read(byte[] data,
java.nio.ByteOrder order)
throws java.io.IOException
ColumnImplread in class ColumnImpldata - The raw byte valueorder - Byte order in which the raw value is storedjava.io.IOExceptionprotected java.nio.ByteBuffer writeRealData(java.lang.Object obj,
int remainingRowLength,
java.nio.ByteOrder order)
throws java.io.IOException
writeRealData in class ColumnImpljava.io.IOExceptionprotected byte[] readLongValue(byte[] lvalDefinition)
throws java.io.IOException
lvalDefinition - Column value that points to an LVAL recordjava.io.IOExceptionprivate java.lang.String readLongStringValue(byte[] lvalDefinition)
throws java.io.IOException
lvalDefinition - Column value that points to an LVAL recordjava.io.IOExceptionprotected java.nio.ByteBuffer writeLongValue(byte[] value,
int remainingRowLength)
throws java.io.IOException
value - Value of the LVAL columnjava.io.IOExceptionprivate void writeLongValueHeader(java.nio.ByteBuffer lvalPage)