Class Value
- All Implemented Interfaces:
oracle.kv.impl.util.FastExternalizable
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Value
An instance that represents an empty value for key-only records. -
Method Summary
Modifier and TypeMethodDescriptionstatic Value
createValue
(byte[] val) Creates a Value from a value byte array.boolean
static Value
fromByteArray
(byte[] bytes) Deserializes the given bytes that were returned earlier bytoByteArray()
and returns the resulting Value.Returns the value's format.static int
getRegionIdFromByteArray
(byte[] bytes) Returns the regionId given the entire encoded row orRegion.NULL_REGION_ID
if not present.byte[]
getValue()
Returns the value byte array.static int
getValueOffset
(byte[] bytes) Returns the offset index (starts with 0) of the row value given the entire encoded row.int
hashCode()
static boolean
hasRegionId
(byte[] bytes) Returns true if there is a regionId in the entire encoded row, otherwise false.static boolean
hasRowMetadata
(byte[] bytes) Returns true if there is a regionId in the entire encoded row, otherwise false.static boolean
isTombstone
(byte[] bytes) Returns true if tombstone, i.e.static int
setRegionIdAndRowMetadata
(byte[] bytes, oracle.kv.impl.api.table.RowImpl row) Sets regionId and rowMetadata if available and returns the offset of row data.byte[]
Returns this Value as a serialized byte array, such thatfromByteArray(byte[])
may be used to reconstitute the Value.toString()
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface oracle.kv.impl.util.FastExternalizable
deserializedForm
-
Field Details
-
EMPTY_VALUE
An instance that represents an empty value for key-only records.
-
-
Method Details
-
toByteArray
public byte[] toByteArray()Returns this Value as a serialized byte array, such thatfromByteArray(byte[])
may be used to reconstitute the Value.The intended use case for the
toByteArray()
andfromByteArray(byte[])
methods is to serialize values of various formats in a uniform manner, for storage outside of NoSQL DB or for sending across a network.Values returned by calls to this method can be used with current and newer releases, but are not guaranteed to be compatible with earlier releases.
WARNING: The array returned by this method should be considered to be opaque by the caller. This array is not necessarily equal to the array returned by
getValue()
; in particular, the returned array may contain an extra byte identifying the format. The only valid use of this array is to pass it tofromByteArray(byte[])
at a later time in order to reconstruct theValue
object. NormallygetValue()
should be used instead of this method.- See Also:
-
fromByteArray
Deserializes the given bytes that were returned earlier bytoByteArray()
and returns the resulting Value.The intended use case for the
toByteArray()
andfromByteArray(byte[])
methods is to serialize values of various formats in a uniform manner, for storage outside of NoSQL DB or for sending across a network.Values created with either the current or earlier releases can be used with this method, but values created by later releases are not guaranteed to be compatible.
WARNING: Misuse of this method could result in data corruption if the returned object is added to the store. The array passed to this method must have been previously created by calling
fromByteArray(byte[])
. To create aValue
object of formatValue.Format.NONE
, callcreateValue(byte[])
instead.- See Also:
-
createValue
Creates a Value from a value byte array. The format of the returned value isValue.Format.NONE
. -
getValue
public byte[] getValue()Returns the value byte array. -
getFormat
Returns the value's format.- Since:
- 2.0
-
equals
-
hashCode
public int hashCode() -
toString
-
isTombstone
public static boolean isTombstone(byte[] bytes) Returns true if tombstone, i.e. it can contain regionId or rowMetadata but payload (row data) is empty. -
hasRegionId
public static boolean hasRegionId(byte[] bytes) Returns true if there is a regionId in the entire encoded row, otherwise false. -
hasRowMetadata
public static boolean hasRowMetadata(byte[] bytes) Returns true if there is a regionId in the entire encoded row, otherwise false. -
getRegionIdFromByteArray
public static int getRegionIdFromByteArray(byte[] bytes) Returns the regionId given the entire encoded row orRegion.NULL_REGION_ID
if not present. -
getValueOffset
public static int getValueOffset(byte[] bytes) Returns the offset index (starts with 0) of the row value given the entire encoded row. -
setRegionIdAndRowMetadata
public static int setRegionIdAndRowMetadata(byte[] bytes, oracle.kv.impl.api.table.RowImpl row) Sets regionId and rowMetadata if available and returns the offset of row data.
-