Package org.apache.hadoop.hbase.types
Class RawBytes
java.lang.Object
org.apache.hadoop.hbase.types.RawBytes
- All Implemented Interfaces:
DataType<byte[]>
An
DataType
for interacting with variable-length values encoded using
Bytes.putBytes(byte[], int, byte[], int, int)
. Intended to make it easier to transition
away from direct use of Bytes
.-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]
Read an instance ofT
from the buffersrc
.byte[]
decode
(PositionedByteRange src, int length) Read abyte[]
from the buffersrc
.int
encode
(PositionedByteRange dst, byte[] val) Write instanceval
into bufferdst
.int
encode
(PositionedByteRange dst, byte[] val, int voff, int vlen) Writeval
intodst
, respectingvoff
andvlen
.Class<byte[]>
Inform consumers over what type thisDataType
operates.int
encodedLength
(byte[] val) Inform consumers how long the encodedbyte[]
will be.getOrder()
Retrieve the sortOrder
imposed by this data type, or null when natural ordering is not preserved.boolean
Indicates whether this instance supports encoding null values.boolean
Indicates whether this instance writes encodedbyte[]
's which preserve the natural sort order of the unencoded value.boolean
Indicates whether this instance is able to skip over it's encoded value.int
skip
(PositionedByteRange src) Skipsrc
's position forward over one encoded value.
-
Field Details
-
ASCENDING
-
DESCENDING
-
order
-
-
Constructor Details
-
RawBytes
protected RawBytes() -
RawBytes
-
-
Method Details
-
isOrderPreserving
Description copied from interface:DataType
Indicates whether this instance writes encodedbyte[]
's which preserve the natural sort order of the unencoded value.- Specified by:
isOrderPreserving
in interfaceDataType<byte[]>
- Returns:
true
when natural order is preserved,false
otherwise.
-
getOrder
Description copied from interface:DataType
Retrieve the sortOrder
imposed by this data type, or null when natural ordering is not preserved. Value is either ascending or descending. Default is assumed to beOrder.ASCENDING
. -
isNullable
Description copied from interface:DataType
Indicates whether this instance supports encoding null values. This depends on the implementation details of the encoding format. AllDataType
s that support null should treat null as comparing less than any non-null value for default sort ordering purposes.- Specified by:
isNullable
in interfaceDataType<byte[]>
- Returns:
true
when null is supported,false
otherwise.
-
isSkippable
Description copied from interface:DataType
Indicates whether this instance is able to skip over it's encoded value.DataType
s that are not skippable can only be used as the right-most field of aStruct
.- Specified by:
isSkippable
in interfaceDataType<byte[]>
-
skip
Description copied from interface:DataType
Skipsrc
's position forward over one encoded value. -
encodedLength
Description copied from interface:DataType
Inform consumers how long the encodedbyte[]
will be.- Specified by:
encodedLength
in interfaceDataType<byte[]>
- Parameters:
val
- The value to check.- Returns:
- the number of bytes required to encode
val
.a
-
encodedClass
Description copied from interface:DataType
Inform consumers over what type thisDataType
operates. Useful when working with bareDataType
instances.- Specified by:
encodedClass
in interfaceDataType<byte[]>
-
decode
Description copied from interface:DataType
Read an instance ofT
from the buffersrc
. -
encode
Description copied from interface:DataType
Write instanceval
into bufferdst
. -
decode
Read abyte[]
from the buffersrc
. -
encode
Writeval
intodst
, respectingvoff
andvlen
.- Returns:
- number of bytes written.
-