public abstract class ClusteringBoundOrBoundary extends AbstractBufferClusteringPrefix
The latter is used for range tombstones for 2 main reasons: 1) When merging multiple iterators having range tombstones (that are represented by their start and end markers), we need to know when a range is close on an iterator, if it is reopened right away. Otherwise, we cannot easily produce the markers on the merged iterators within risking to fail the sorting guarantees of an iterator. See this comment for more details: https://goo.gl/yyB5mR. 2) This saves some storage space.
Modifier and Type | Class and Description |
---|---|
static class |
ClusteringBoundOrBoundary.Serializer |
ClusteringPrefix.Deserializer, ClusteringPrefix.Kind
Modifier and Type | Field and Description |
---|---|
static ClusteringBoundOrBoundary.Serializer |
serializer |
EMPTY_VALUES_ARRAY, kind, values
Modifier | Constructor and Description |
---|---|
protected |
ClusteringBoundOrBoundary(ClusteringPrefix.Kind kind,
java.nio.ByteBuffer[] values) |
Modifier and Type | Method and Description |
---|---|
ClusteringBoundOrBoundary |
copy(AbstractAllocator allocator) |
static ClusteringBoundOrBoundary |
create(ClusteringPrefix.Kind kind,
java.nio.ByteBuffer[] values) |
static ClusteringBound |
exclusiveClose(boolean reversed,
java.nio.ByteBuffer[] boundValues) |
static ClusteringBoundary |
exclusiveCloseInclusiveOpen(boolean reversed,
java.nio.ByteBuffer[] boundValues) |
static ClusteringBound |
exclusiveOpen(boolean reversed,
java.nio.ByteBuffer[] boundValues) |
static ClusteringBound |
inclusiveClose(boolean reversed,
java.nio.ByteBuffer[] boundValues) |
static ClusteringBoundary |
inclusiveCloseExclusiveOpen(boolean reversed,
java.nio.ByteBuffer[] boundValues) |
static ClusteringBound |
inclusiveOpen(boolean reversed,
java.nio.ByteBuffer[] boundValues) |
abstract ClusteringBoundOrBoundary |
invert()
Returns the inverse of the current bound.
|
boolean |
isBoundary() |
boolean |
isClose(boolean reversed) |
boolean |
isOpen(boolean reversed) |
java.lang.String |
toString(CFMetaData metadata)
Generates a proper string representation of the prefix.
|
java.lang.String |
toString(ClusteringComparator comparator) |
clustering, get, getRawValues, kind, size, unsharedHeapSize, unsharedHeapSizeExcludingData
dataSize, digest, equals, hashCode
public static final ClusteringBoundOrBoundary.Serializer serializer
protected ClusteringBoundOrBoundary(ClusteringPrefix.Kind kind, java.nio.ByteBuffer[] values)
public static ClusteringBoundOrBoundary create(ClusteringPrefix.Kind kind, java.nio.ByteBuffer[] values)
public boolean isBoundary()
public boolean isOpen(boolean reversed)
public boolean isClose(boolean reversed)
public static ClusteringBound inclusiveOpen(boolean reversed, java.nio.ByteBuffer[] boundValues)
public static ClusteringBound exclusiveOpen(boolean reversed, java.nio.ByteBuffer[] boundValues)
public static ClusteringBound inclusiveClose(boolean reversed, java.nio.ByteBuffer[] boundValues)
public static ClusteringBound exclusiveClose(boolean reversed, java.nio.ByteBuffer[] boundValues)
public static ClusteringBoundary inclusiveCloseExclusiveOpen(boolean reversed, java.nio.ByteBuffer[] boundValues)
public static ClusteringBoundary exclusiveCloseInclusiveOpen(boolean reversed, java.nio.ByteBuffer[] boundValues)
public ClusteringBoundOrBoundary copy(AbstractAllocator allocator)
public java.lang.String toString(CFMetaData metadata)
ClusteringPrefix
metadata
- the metadata for the table the clustering prefix is of.public java.lang.String toString(ClusteringComparator comparator)
public abstract ClusteringBoundOrBoundary invert()
This invert both start into end (and vice-versa) and inclusive into exclusive (and vice-versa).
Copyright © 2017 The Apache Software Foundation