Package com.google.spanner.v1
Class KeyRange
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- com.google.spanner.v1.KeyRange
-
- All Implemented Interfaces:
com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,KeyRangeOrBuilder,Serializable
public final class KeyRange extends com.google.protobuf.GeneratedMessageV3 implements KeyRangeOrBuilder
KeyRange represents a range of rows in a table or index. A range has a start key and an end key. These keys can be open or closed, indicating if the range includes rows with that key. Keys are represented by lists, where the ith value in the list corresponds to the ith component of the table or index primary key. Individual values are encoded as described [here][google.spanner.v1.TypeCode]. For example, consider the following table definition: CREATE TABLE UserEvents ( UserName STRING(MAX), EventDate STRING(10) ) PRIMARY KEY(UserName, EventDate); The following keys name rows in this table: ["Bob", "2014-09-23"] ["Alfred", "2015-06-12"] Since the `UserEvents` table's `PRIMARY KEY` clause names two columns, each `UserEvents` key has two elements; the first is the `UserName`, and the second is the `EventDate`. Key ranges with multiple components are interpreted lexicographically by component using the table or index key's declared sort order. For example, the following range returns all events for user `"Bob"` that occurred in the year 2015: "start_closed": ["Bob", "2015-01-01"] "end_closed": ["Bob", "2015-12-31"] Start and end keys can omit trailing key components. This affects the inclusion and exclusion of rows that exactly match the provided key components: if the key is closed, then rows that exactly match the provided components are included; if the key is open, then rows that exactly match are not included. For example, the following range includes all events for `"Bob"` that occurred during and after the year 2000: "start_closed": ["Bob", "2000-01-01"] "end_closed": ["Bob"] The next example retrieves all events for `"Bob"`: "start_closed": ["Bob"] "end_closed": ["Bob"] To retrieve events before the year 2000: "start_closed": ["Bob"] "end_open": ["Bob", "2000-01-01"] The following range includes all rows in the table: "start_closed": [] "end_closed": [] This range returns all users whose `UserName` begins with any character from A to C: "start_closed": ["A"] "end_open": ["D"] This range returns all users whose `UserName` begins with B: "start_closed": ["B"] "end_open": ["C"] Key ranges honor column sort order. For example, suppose a table is defined as follows: CREATE TABLE DescendingSortedTable { Key INT64, ... ) PRIMARY KEY(Key DESC); The following range retrieves all rows with key values between 1 and 100 inclusive: "start_closed": ["100"] "end_closed": ["1"] Note that 100 is passed as the start, and 1 is passed as the end, because `Key` is a descending column in the schema.Protobuf typegoogle.spanner.v1.KeyRange- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classKeyRange.BuilderKeyRange represents a range of rows in a table or index.static classKeyRange.EndKeyTypeCasestatic classKeyRange.StartKeyTypeCase-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage,BuilderType extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageType,BuilderType>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description static intEND_CLOSED_FIELD_NUMBERstatic intEND_OPEN_FIELD_NUMBERstatic intSTART_CLOSED_FIELD_NUMBERstatic intSTART_OPEN_FIELD_NUMBER
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)static KeyRangegetDefaultInstance()KeyRangegetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()com.google.protobuf.ListValuegetEndClosed()If the end is closed, then the range includes all rows whose first `len(end_closed)` key columns exactly match `end_closed`.com.google.protobuf.ListValueOrBuildergetEndClosedOrBuilder()If the end is closed, then the range includes all rows whose first `len(end_closed)` key columns exactly match `end_closed`.KeyRange.EndKeyTypeCasegetEndKeyTypeCase()com.google.protobuf.ListValuegetEndOpen()If the end is open, then the range excludes rows whose first `len(end_open)` key columns exactly match `end_open`.com.google.protobuf.ListValueOrBuildergetEndOpenOrBuilder()If the end is open, then the range excludes rows whose first `len(end_open)` key columns exactly match `end_open`.com.google.protobuf.Parser<KeyRange>getParserForType()intgetSerializedSize()com.google.protobuf.ListValuegetStartClosed()If the start is closed, then the range includes all rows whose first `len(start_closed)` key columns exactly match `start_closed`.com.google.protobuf.ListValueOrBuildergetStartClosedOrBuilder()If the start is closed, then the range includes all rows whose first `len(start_closed)` key columns exactly match `start_closed`.KeyRange.StartKeyTypeCasegetStartKeyTypeCase()com.google.protobuf.ListValuegetStartOpen()If the start is open, then the range excludes rows whose first `len(start_open)` key columns exactly match `start_open`.com.google.protobuf.ListValueOrBuildergetStartOpenOrBuilder()If the start is open, then the range excludes rows whose first `len(start_open)` key columns exactly match `start_open`.com.google.protobuf.UnknownFieldSetgetUnknownFields()booleanhasEndClosed()If the end is closed, then the range includes all rows whose first `len(end_closed)` key columns exactly match `end_closed`.booleanhasEndOpen()If the end is open, then the range excludes rows whose first `len(end_open)` key columns exactly match `end_open`.inthashCode()booleanhasStartClosed()If the start is closed, then the range includes all rows whose first `len(start_closed)` key columns exactly match `start_closed`.booleanhasStartOpen()If the start is open, then the range excludes rows whose first `len(start_open)` key columns exactly match `start_open`.protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()static KeyRange.BuildernewBuilder()static KeyRange.BuildernewBuilder(KeyRange prototype)KeyRange.BuildernewBuilderForType()protected KeyRange.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)protected ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)static KeyRangeparseDelimitedFrom(InputStream input)static KeyRangeparseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static KeyRangeparseFrom(byte[] data)static KeyRangeparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static KeyRangeparseFrom(com.google.protobuf.ByteString data)static KeyRangeparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static KeyRangeparseFrom(com.google.protobuf.CodedInputStream input)static KeyRangeparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static KeyRangeparseFrom(InputStream input)static KeyRangeparseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static KeyRangeparseFrom(ByteBuffer data)static KeyRangeparseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<KeyRange>parser()KeyRange.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, hasField, hasOneof, internalGetMapField, isStringEmpty, makeExtensionsImmutable, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
START_CLOSED_FIELD_NUMBER
public static final int START_CLOSED_FIELD_NUMBER
- See Also:
- Constant Field Values
-
START_OPEN_FIELD_NUMBER
public static final int START_OPEN_FIELD_NUMBER
- See Also:
- Constant Field Values
-
END_CLOSED_FIELD_NUMBER
public static final int END_CLOSED_FIELD_NUMBER
- See Also:
- Constant Field Values
-
END_OPEN_FIELD_NUMBER
public static final int END_OPEN_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getUnknownFields
public final com.google.protobuf.UnknownFieldSet getUnknownFields()
- Specified by:
getUnknownFieldsin interfacecom.google.protobuf.MessageOrBuilder- Overrides:
getUnknownFieldsin classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getStartKeyTypeCase
public KeyRange.StartKeyTypeCase getStartKeyTypeCase()
- Specified by:
getStartKeyTypeCasein interfaceKeyRangeOrBuilder
-
getEndKeyTypeCase
public KeyRange.EndKeyTypeCase getEndKeyTypeCase()
- Specified by:
getEndKeyTypeCasein interfaceKeyRangeOrBuilder
-
hasStartClosed
public boolean hasStartClosed()
If the start is closed, then the range includes all rows whose first `len(start_closed)` key columns exactly match `start_closed`.
.google.protobuf.ListValue start_closed = 1;- Specified by:
hasStartClosedin interfaceKeyRangeOrBuilder- Returns:
- Whether the startClosed field is set.
-
getStartClosed
public com.google.protobuf.ListValue getStartClosed()
If the start is closed, then the range includes all rows whose first `len(start_closed)` key columns exactly match `start_closed`.
.google.protobuf.ListValue start_closed = 1;- Specified by:
getStartClosedin interfaceKeyRangeOrBuilder- Returns:
- The startClosed.
-
getStartClosedOrBuilder
public com.google.protobuf.ListValueOrBuilder getStartClosedOrBuilder()
If the start is closed, then the range includes all rows whose first `len(start_closed)` key columns exactly match `start_closed`.
.google.protobuf.ListValue start_closed = 1;- Specified by:
getStartClosedOrBuilderin interfaceKeyRangeOrBuilder
-
hasStartOpen
public boolean hasStartOpen()
If the start is open, then the range excludes rows whose first `len(start_open)` key columns exactly match `start_open`.
.google.protobuf.ListValue start_open = 2;- Specified by:
hasStartOpenin interfaceKeyRangeOrBuilder- Returns:
- Whether the startOpen field is set.
-
getStartOpen
public com.google.protobuf.ListValue getStartOpen()
If the start is open, then the range excludes rows whose first `len(start_open)` key columns exactly match `start_open`.
.google.protobuf.ListValue start_open = 2;- Specified by:
getStartOpenin interfaceKeyRangeOrBuilder- Returns:
- The startOpen.
-
getStartOpenOrBuilder
public com.google.protobuf.ListValueOrBuilder getStartOpenOrBuilder()
If the start is open, then the range excludes rows whose first `len(start_open)` key columns exactly match `start_open`.
.google.protobuf.ListValue start_open = 2;- Specified by:
getStartOpenOrBuilderin interfaceKeyRangeOrBuilder
-
hasEndClosed
public boolean hasEndClosed()
If the end is closed, then the range includes all rows whose first `len(end_closed)` key columns exactly match `end_closed`.
.google.protobuf.ListValue end_closed = 3;- Specified by:
hasEndClosedin interfaceKeyRangeOrBuilder- Returns:
- Whether the endClosed field is set.
-
getEndClosed
public com.google.protobuf.ListValue getEndClosed()
If the end is closed, then the range includes all rows whose first `len(end_closed)` key columns exactly match `end_closed`.
.google.protobuf.ListValue end_closed = 3;- Specified by:
getEndClosedin interfaceKeyRangeOrBuilder- Returns:
- The endClosed.
-
getEndClosedOrBuilder
public com.google.protobuf.ListValueOrBuilder getEndClosedOrBuilder()
If the end is closed, then the range includes all rows whose first `len(end_closed)` key columns exactly match `end_closed`.
.google.protobuf.ListValue end_closed = 3;- Specified by:
getEndClosedOrBuilderin interfaceKeyRangeOrBuilder
-
hasEndOpen
public boolean hasEndOpen()
If the end is open, then the range excludes rows whose first `len(end_open)` key columns exactly match `end_open`.
.google.protobuf.ListValue end_open = 4;- Specified by:
hasEndOpenin interfaceKeyRangeOrBuilder- Returns:
- Whether the endOpen field is set.
-
getEndOpen
public com.google.protobuf.ListValue getEndOpen()
If the end is open, then the range excludes rows whose first `len(end_open)` key columns exactly match `end_open`.
.google.protobuf.ListValue end_open = 4;- Specified by:
getEndOpenin interfaceKeyRangeOrBuilder- Returns:
- The endOpen.
-
getEndOpenOrBuilder
public com.google.protobuf.ListValueOrBuilder getEndOpenOrBuilder()
If the end is open, then the range excludes rows whose first `len(end_open)` key columns exactly match `end_open`.
.google.protobuf.ListValue end_open = 4;- Specified by:
getEndOpenOrBuilderin interfaceKeyRangeOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static KeyRange parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static KeyRange parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static KeyRange parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static KeyRange parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static KeyRange parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static KeyRange parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static KeyRange parseFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static KeyRange parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static KeyRange parseDelimitedFrom(InputStream input) throws IOException
- Throws:
IOException
-
parseDelimitedFrom
public static KeyRange parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
parseFrom
public static KeyRange parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
- Throws:
IOException
-
parseFrom
public static KeyRange parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
- Throws:
IOException
-
newBuilderForType
public KeyRange.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static KeyRange.Builder newBuilder()
-
newBuilder
public static KeyRange.Builder newBuilder(KeyRange prototype)
-
toBuilder
public KeyRange.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected KeyRange.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static KeyRange getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<KeyRange> parser()
-
getParserForType
public com.google.protobuf.Parser<KeyRange> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public KeyRange getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-