org.h2.mvstore.type

## Class LongDataType

- java.lang.Object
- - org.h2.mvstore.type.BasicDataType<java.lang.Long>
  - - org.h2.mvstore.type.LongDataType

All Implemented Interfaces:
  java.util.Comparator<java.lang.Long>, DataType<java.lang.Long>

    public class LongDataType
    extends BasicDataType<java.lang.Long>

Class LongDataType.

- 8/21/17 6:52 PM initial creation

### Field Summary

Fields
`static LongDataType` `INSTANCE`

### Method Summary

All Methods Instance Methods Concrete Methods
`int` `binarySearch(java.lang.Long keyObj, java.lang.Object storageObj, int size, int initialGuess)` Perform binary search for the key within the storage
`int` `compare(java.lang.Long one, java.lang.Long two)` Compare two keys.
`java.lang.Long[]` `createStorage(int size)` Create storage object of array type to hold values
`int` `getMemory(java.lang.Long obj)` Calculates the amount of used memory in bytes.
`java.lang.Long` `read(java.nio.ByteBuffer buff)` Read an object.
`void` `write(WriteBuffer buff, java.lang.Long data)` Write an object.

### Methods inherited from class org.h2.mvstore.type.BasicDataType

`cast, equals, hashCode, isMemoryEstimationAllowed, read, write`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface java.util.Comparator

`comparing, comparing, comparingDouble, comparingInt, comparingLong, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong`

### Field Detail

#### INSTANCE

    public static final LongDataType INSTANCE

### Method Detail

#### getMemory

    public int getMemory(java.lang.Long obj)

Description copied from interface: `DataType`
Calculates the amount of used memory in bytes.

Specified by:
  `getMemory` in interface `DataType<java.lang.Long>`
Specified by:
  `getMemory` in class `BasicDataType<java.lang.Long>`
Parameters:
  `obj` - the object
Returns:
  the used memory

#### write

    public void write(WriteBuffer buff,
                      java.lang.Long data)

Description copied from interface: `DataType`
Write an object.

Specified by:
  `write` in interface `DataType<java.lang.Long>`
Specified by:
  `write` in class `BasicDataType<java.lang.Long>`
Parameters:
  `buff` - the target buffer
  `data` - the value

#### read

    public java.lang.Long read(java.nio.ByteBuffer buff)

Description copied from interface: `DataType`
Read an object.

Specified by:
  `read` in interface `DataType<java.lang.Long>`
Specified by:
  `read` in class `BasicDataType<java.lang.Long>`
Parameters:
  `buff` - the source buffer
Returns:
  the object

#### createStorage

    public java.lang.Long[] 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

#### compare

    public int compare(java.lang.Long one,
                       java.lang.Long two)

Description copied from interface: `DataType`
Compare two keys.

Specified by:
  `compare` in interface `java.util.Comparator<java.lang.Long>`
Specified by:
  `compare` in interface `DataType<java.lang.Long>`
Overrides:
  `compare` in class `BasicDataType<java.lang.Long>`
Parameters:
  `one` - the first key
  `two` - the second key
Returns:
  -1 if the first key is smaller, 1 if larger, and 0 if equal

#### binarySearch

    public int binarySearch(java.lang.Long keyObj,
                            java.lang.Object storageObj,
                            int size,
                            int initialGuess)

Description copied from interface: `DataType`
Perform binary search for the key within the storage

Specified by:
  `binarySearch` in interface `DataType<java.lang.Long>`
Overrides:
  `binarySearch` in class `BasicDataType<java.lang.Long>`
Parameters:
  `keyObj` - to search for
  `storageObj` - to search within (an array of type T)
  `size` - number of data items in the storage
  `initialGuess` - for key position
Returns:
  index of the key , if found, - index of the insertion point, if not