@InterfaceAudience.Public public class RawBytes extends Object implements DataType<byte[]>
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.| Modifier and Type | Field and Description |
|---|---|
static RawBytes |
ASCENDING |
static RawBytes |
DESCENDING |
protected Order |
order |
| Modifier | Constructor and Description |
|---|---|
protected |
RawBytes() |
protected |
RawBytes(Order order) |
| Modifier and Type | Method and Description |
|---|---|
byte[] |
decode(PositionedByteRange src)
Read an instance of
T from the buffer src. |
byte[] |
decode(PositionedByteRange src,
int length)
Read a
byte[] from the buffer src. |
int |
encode(PositionedByteRange dst,
byte[] val)
Write instance
val into buffer dst. |
int |
encode(PositionedByteRange dst,
byte[] val,
int voff,
int vlen)
Write
val into dst, respecting voff and vlen. |
Class<byte[]> |
encodedClass()
Inform consumers over what type this
DataType operates. |
int |
encodedLength(byte[] val)
Inform consumers how long the encoded
byte[] will be. |
Order |
getOrder()
Retrieve the sort
Order imposed by this data type, or null when natural ordering is not
preserved. |
boolean |
isNullable()
Indicates whether this instance supports encoding null values.
|
boolean |
isOrderPreserving()
Indicates whether this instance writes encoded
byte[]'s which preserve the natural sort
order of the unencoded value. |
boolean |
isSkippable()
Indicates whether this instance is able to skip over it's encoded value.
|
int |
skip(PositionedByteRange src)
Skip
src's position forward over one encoded value. |
public static final RawBytes DESCENDING
public boolean isOrderPreserving()
DataTypebyte[]'s which preserve the natural sort
order of the unencoded value.isOrderPreserving in interface DataType<byte[]>true when natural order is preserved, false otherwise.public Order getOrder()
DataTypeOrder imposed by this data type, or null when natural ordering is not
preserved. Value is either ascending or descending. Default is assumed to be
Order.ASCENDING.public boolean isNullable()
DataTypeDataTypes that support null should
treat null as comparing less than any non-null value for default sort ordering purposes.isNullable in interface DataType<byte[]>true when null is supported, false otherwise.public boolean isSkippable()
DataTypeDataTypes that
are not skippable can only be used as the right-most field of a Struct.isSkippable in interface DataType<byte[]>public int skip(PositionedByteRange src)
DataTypesrc's position forward over one encoded value.public int encodedLength(byte[] val)
DataTypebyte[] will be.encodedLength in interface DataType<byte[]>val - The value to check.val.apublic Class<byte[]> encodedClass()
DataTypeDataType operates. Useful when working with bare
DataType instances.encodedClass in interface DataType<byte[]>public byte[] decode(PositionedByteRange src)
DataTypeT from the buffer src.public int encode(PositionedByteRange dst, byte[] val)
DataTypeval into buffer dst.public byte[] decode(PositionedByteRange src, int length)
byte[] from the buffer src.public int encode(PositionedByteRange dst, byte[] val, int voff, int vlen)
val into dst, respecting voff and vlen.Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.