Package org.h2.mvstore.type
Class ObjectDataType.ObjectArrayType
- java.lang.Object
-
- org.h2.mvstore.type.BasicDataType<T>
-
- org.h2.mvstore.type.ObjectDataType.AutoDetectDataType<java.lang.Object>
-
- org.h2.mvstore.type.ObjectDataType.ObjectArrayType
-
- All Implemented Interfaces:
java.util.Comparator<java.lang.Object>
,DataType<java.lang.Object>
- Enclosing class:
- ObjectDataType
static class ObjectDataType.ObjectArrayType extends ObjectDataType.AutoDetectDataType<java.lang.Object>
The type for object arrays.
-
-
Field Summary
Fields Modifier and Type Field Description private ObjectDataType
elementType
-
Fields inherited from class org.h2.mvstore.type.ObjectDataType.AutoDetectDataType
typeId
-
-
Constructor Summary
Constructors Constructor Description ObjectArrayType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compare(java.lang.Object aObj, java.lang.Object bObj)
Compare two keys.java.lang.Object[]
createStorage(int size)
Create storage object of array type to hold valuesint
getMemory(java.lang.Object obj)
Calculates the amount of used memory in bytes.java.lang.Object
read(java.nio.ByteBuffer buff)
Read an object.java.lang.Object
read(java.nio.ByteBuffer buff, int tag)
Read an object from the buffer.void
write(WriteBuffer buff, java.lang.Object obj)
Write an object.-
Methods inherited from class org.h2.mvstore.type.ObjectDataType.AutoDetectDataType
getType
-
Methods inherited from class org.h2.mvstore.type.BasicDataType
binarySearch, cast, equals, hashCode, isMemoryEstimationAllowed, read, write
-
-
-
-
Field Detail
-
elementType
private final ObjectDataType elementType
-
-
Method Detail
-
createStorage
public java.lang.Object[] createStorage(int size)
Description copied from interface:DataType
Create storage object of array type to hold values- Parameters:
size
- number of values to hold- Returns:
- storage object
-
getMemory
public int getMemory(java.lang.Object obj)
Description copied from interface:DataType
Calculates the amount of used memory in bytes.- Specified by:
getMemory
in interfaceDataType<java.lang.Object>
- Overrides:
getMemory
in classObjectDataType.AutoDetectDataType<java.lang.Object>
- Parameters:
obj
- the object- Returns:
- the used memory
-
compare
public int compare(java.lang.Object aObj, java.lang.Object bObj)
Description copied from interface:DataType
Compare two keys.- Specified by:
compare
in interfacejava.util.Comparator<java.lang.Object>
- Specified by:
compare
in interfaceDataType<java.lang.Object>
- Overrides:
compare
in classBasicDataType<java.lang.Object>
- Parameters:
aObj
- the first keybObj
- the second key- Returns:
- -1 if the first key is smaller, 1 if larger, and 0 if equal
-
write
public void write(WriteBuffer buff, java.lang.Object obj)
Description copied from interface:DataType
Write an object.- Specified by:
write
in interfaceDataType<java.lang.Object>
- Overrides:
write
in classObjectDataType.AutoDetectDataType<java.lang.Object>
- Parameters:
buff
- the target bufferobj
- the value
-
read
public java.lang.Object read(java.nio.ByteBuffer buff)
Description copied from interface:DataType
Read an object.- Specified by:
read
in interfaceDataType<java.lang.Object>
- Specified by:
read
in classBasicDataType<java.lang.Object>
- Parameters:
buff
- the source buffer- Returns:
- the object
-
read
public java.lang.Object read(java.nio.ByteBuffer buff, int tag)
Description copied from class:ObjectDataType.AutoDetectDataType
Read an object from the buffer.- Specified by:
read
in classObjectDataType.AutoDetectDataType<java.lang.Object>
- Parameters:
buff
- the buffertag
- the first byte of the object (usually the type)- Returns:
- the read object
-
-