blob: b0bd936a3c0ecff9d45221192b21897771f031f7 [file] [log] [blame]
// Copyright 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.22.0
// protoc v3.12.3
// source: google/datastore/v1beta3/query.proto
package datastore
import (
reflect "reflect"
sync "sync"
proto "github.com/golang/protobuf/proto"
wrappers "github.com/golang/protobuf/ptypes/wrappers"
_ "google.golang.org/genproto/googleapis/api/annotations"
_ "google.golang.org/genproto/googleapis/type/latlng"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// Specifies what data the 'entity' field contains.
// A `ResultType` is either implied (for example, in `LookupResponse.missing`
// from `datastore.proto`, it is always `KEY_ONLY`) or specified by context
// (for example, in message `QueryResultBatch`, field `entity_result_type`
// specifies a `ResultType` for all the values in field `entity_results`).
type EntityResult_ResultType int32
const (
// Unspecified. This value is never used.
EntityResult_RESULT_TYPE_UNSPECIFIED EntityResult_ResultType = 0
// The key and properties.
EntityResult_FULL EntityResult_ResultType = 1
// A projected subset of properties. The entity may have no key.
EntityResult_PROJECTION EntityResult_ResultType = 2
// Only the key.
EntityResult_KEY_ONLY EntityResult_ResultType = 3
)
// Enum value maps for EntityResult_ResultType.
var (
EntityResult_ResultType_name = map[int32]string{
0: "RESULT_TYPE_UNSPECIFIED",
1: "FULL",
2: "PROJECTION",
3: "KEY_ONLY",
}
EntityResult_ResultType_value = map[string]int32{
"RESULT_TYPE_UNSPECIFIED": 0,
"FULL": 1,
"PROJECTION": 2,
"KEY_ONLY": 3,
}
)
func (x EntityResult_ResultType) Enum() *EntityResult_ResultType {
p := new(EntityResult_ResultType)
*p = x
return p
}
func (x EntityResult_ResultType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (EntityResult_ResultType) Descriptor() protoreflect.EnumDescriptor {
return file_google_datastore_v1beta3_query_proto_enumTypes[0].Descriptor()
}
func (EntityResult_ResultType) Type() protoreflect.EnumType {
return &file_google_datastore_v1beta3_query_proto_enumTypes[0]
}
func (x EntityResult_ResultType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use EntityResult_ResultType.Descriptor instead.
func (EntityResult_ResultType) EnumDescriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{0, 0}
}
// The sort direction.
type PropertyOrder_Direction int32
const (
// Unspecified. This value must not be used.
PropertyOrder_DIRECTION_UNSPECIFIED PropertyOrder_Direction = 0
// Ascending.
PropertyOrder_ASCENDING PropertyOrder_Direction = 1
// Descending.
PropertyOrder_DESCENDING PropertyOrder_Direction = 2
)
// Enum value maps for PropertyOrder_Direction.
var (
PropertyOrder_Direction_name = map[int32]string{
0: "DIRECTION_UNSPECIFIED",
1: "ASCENDING",
2: "DESCENDING",
}
PropertyOrder_Direction_value = map[string]int32{
"DIRECTION_UNSPECIFIED": 0,
"ASCENDING": 1,
"DESCENDING": 2,
}
)
func (x PropertyOrder_Direction) Enum() *PropertyOrder_Direction {
p := new(PropertyOrder_Direction)
*p = x
return p
}
func (x PropertyOrder_Direction) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (PropertyOrder_Direction) Descriptor() protoreflect.EnumDescriptor {
return file_google_datastore_v1beta3_query_proto_enumTypes[1].Descriptor()
}
func (PropertyOrder_Direction) Type() protoreflect.EnumType {
return &file_google_datastore_v1beta3_query_proto_enumTypes[1]
}
func (x PropertyOrder_Direction) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use PropertyOrder_Direction.Descriptor instead.
func (PropertyOrder_Direction) EnumDescriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{5, 0}
}
// A composite filter operator.
type CompositeFilter_Operator int32
const (
// Unspecified. This value must not be used.
CompositeFilter_OPERATOR_UNSPECIFIED CompositeFilter_Operator = 0
// The results are required to satisfy each of the combined filters.
CompositeFilter_AND CompositeFilter_Operator = 1
)
// Enum value maps for CompositeFilter_Operator.
var (
CompositeFilter_Operator_name = map[int32]string{
0: "OPERATOR_UNSPECIFIED",
1: "AND",
}
CompositeFilter_Operator_value = map[string]int32{
"OPERATOR_UNSPECIFIED": 0,
"AND": 1,
}
)
func (x CompositeFilter_Operator) Enum() *CompositeFilter_Operator {
p := new(CompositeFilter_Operator)
*p = x
return p
}
func (x CompositeFilter_Operator) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (CompositeFilter_Operator) Descriptor() protoreflect.EnumDescriptor {
return file_google_datastore_v1beta3_query_proto_enumTypes[2].Descriptor()
}
func (CompositeFilter_Operator) Type() protoreflect.EnumType {
return &file_google_datastore_v1beta3_query_proto_enumTypes[2]
}
func (x CompositeFilter_Operator) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use CompositeFilter_Operator.Descriptor instead.
func (CompositeFilter_Operator) EnumDescriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{7, 0}
}
// A property filter operator.
type PropertyFilter_Operator int32
const (
// Unspecified. This value must not be used.
PropertyFilter_OPERATOR_UNSPECIFIED PropertyFilter_Operator = 0
// Less than.
PropertyFilter_LESS_THAN PropertyFilter_Operator = 1
// Less than or equal.
PropertyFilter_LESS_THAN_OR_EQUAL PropertyFilter_Operator = 2
// Greater than.
PropertyFilter_GREATER_THAN PropertyFilter_Operator = 3
// Greater than or equal.
PropertyFilter_GREATER_THAN_OR_EQUAL PropertyFilter_Operator = 4
// Equal.
PropertyFilter_EQUAL PropertyFilter_Operator = 5
// Has ancestor.
PropertyFilter_HAS_ANCESTOR PropertyFilter_Operator = 11
)
// Enum value maps for PropertyFilter_Operator.
var (
PropertyFilter_Operator_name = map[int32]string{
0: "OPERATOR_UNSPECIFIED",
1: "LESS_THAN",
2: "LESS_THAN_OR_EQUAL",
3: "GREATER_THAN",
4: "GREATER_THAN_OR_EQUAL",
5: "EQUAL",
11: "HAS_ANCESTOR",
}
PropertyFilter_Operator_value = map[string]int32{
"OPERATOR_UNSPECIFIED": 0,
"LESS_THAN": 1,
"LESS_THAN_OR_EQUAL": 2,
"GREATER_THAN": 3,
"GREATER_THAN_OR_EQUAL": 4,
"EQUAL": 5,
"HAS_ANCESTOR": 11,
}
)
func (x PropertyFilter_Operator) Enum() *PropertyFilter_Operator {
p := new(PropertyFilter_Operator)
*p = x
return p
}
func (x PropertyFilter_Operator) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (PropertyFilter_Operator) Descriptor() protoreflect.EnumDescriptor {
return file_google_datastore_v1beta3_query_proto_enumTypes[3].Descriptor()
}
func (PropertyFilter_Operator) Type() protoreflect.EnumType {
return &file_google_datastore_v1beta3_query_proto_enumTypes[3]
}
func (x PropertyFilter_Operator) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use PropertyFilter_Operator.Descriptor instead.
func (PropertyFilter_Operator) EnumDescriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{8, 0}
}
// The possible values for the `more_results` field.
type QueryResultBatch_MoreResultsType int32
const (
// Unspecified. This value is never used.
QueryResultBatch_MORE_RESULTS_TYPE_UNSPECIFIED QueryResultBatch_MoreResultsType = 0
// There may be additional batches to fetch from this query.
QueryResultBatch_NOT_FINISHED QueryResultBatch_MoreResultsType = 1
// The query is finished, but there may be more results after the limit.
QueryResultBatch_MORE_RESULTS_AFTER_LIMIT QueryResultBatch_MoreResultsType = 2
// The query is finished, but there may be more results after the end
// cursor.
QueryResultBatch_MORE_RESULTS_AFTER_CURSOR QueryResultBatch_MoreResultsType = 4
// The query is finished, and there are no more results.
QueryResultBatch_NO_MORE_RESULTS QueryResultBatch_MoreResultsType = 3
)
// Enum value maps for QueryResultBatch_MoreResultsType.
var (
QueryResultBatch_MoreResultsType_name = map[int32]string{
0: "MORE_RESULTS_TYPE_UNSPECIFIED",
1: "NOT_FINISHED",
2: "MORE_RESULTS_AFTER_LIMIT",
4: "MORE_RESULTS_AFTER_CURSOR",
3: "NO_MORE_RESULTS",
}
QueryResultBatch_MoreResultsType_value = map[string]int32{
"MORE_RESULTS_TYPE_UNSPECIFIED": 0,
"NOT_FINISHED": 1,
"MORE_RESULTS_AFTER_LIMIT": 2,
"MORE_RESULTS_AFTER_CURSOR": 4,
"NO_MORE_RESULTS": 3,
}
)
func (x QueryResultBatch_MoreResultsType) Enum() *QueryResultBatch_MoreResultsType {
p := new(QueryResultBatch_MoreResultsType)
*p = x
return p
}
func (x QueryResultBatch_MoreResultsType) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (QueryResultBatch_MoreResultsType) Descriptor() protoreflect.EnumDescriptor {
return file_google_datastore_v1beta3_query_proto_enumTypes[4].Descriptor()
}
func (QueryResultBatch_MoreResultsType) Type() protoreflect.EnumType {
return &file_google_datastore_v1beta3_query_proto_enumTypes[4]
}
func (x QueryResultBatch_MoreResultsType) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use QueryResultBatch_MoreResultsType.Descriptor instead.
func (QueryResultBatch_MoreResultsType) EnumDescriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{11, 0}
}
// The result of fetching an entity from Datastore.
type EntityResult struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The resulting entity.
Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"`
// The version of the entity, a strictly positive number that monotonically
// increases with changes to the entity.
//
// This field is set for
// [`FULL`][google.datastore.v1beta3.EntityResult.ResultType.FULL] entity
// results.
//
// For [missing][google.datastore.v1beta3.LookupResponse.missing] entities in
// `LookupResponse`, this is the version of the snapshot that was used to look
// up the entity, and it is always set except for eventually consistent reads.
Version int64 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"`
// A cursor that points to the position after the result entity.
// Set only when the `EntityResult` is part of a `QueryResultBatch` message.
Cursor []byte `protobuf:"bytes,3,opt,name=cursor,proto3" json:"cursor,omitempty"`
}
func (x *EntityResult) Reset() {
*x = EntityResult{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *EntityResult) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*EntityResult) ProtoMessage() {}
func (x *EntityResult) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use EntityResult.ProtoReflect.Descriptor instead.
func (*EntityResult) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{0}
}
func (x *EntityResult) GetEntity() *Entity {
if x != nil {
return x.Entity
}
return nil
}
func (x *EntityResult) GetVersion() int64 {
if x != nil {
return x.Version
}
return 0
}
func (x *EntityResult) GetCursor() []byte {
if x != nil {
return x.Cursor
}
return nil
}
// A query for entities.
type Query struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The projection to return. Defaults to returning all properties.
Projection []*Projection `protobuf:"bytes,2,rep,name=projection,proto3" json:"projection,omitempty"`
// The kinds to query (if empty, returns entities of all kinds).
// Currently at most 1 kind may be specified.
Kind []*KindExpression `protobuf:"bytes,3,rep,name=kind,proto3" json:"kind,omitempty"`
// The filter to apply.
Filter *Filter `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
// The order to apply to the query results (if empty, order is unspecified).
Order []*PropertyOrder `protobuf:"bytes,5,rep,name=order,proto3" json:"order,omitempty"`
// The properties to make distinct. The query results will contain the first
// result for each distinct combination of values for the given properties
// (if empty, all results are returned).
DistinctOn []*PropertyReference `protobuf:"bytes,6,rep,name=distinct_on,json=distinctOn,proto3" json:"distinct_on,omitempty"`
// A starting point for the query results. Query cursors are
// returned in query result batches and
// [can only be used to continue the same
// query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).
StartCursor []byte `protobuf:"bytes,7,opt,name=start_cursor,json=startCursor,proto3" json:"start_cursor,omitempty"`
// An ending point for the query results. Query cursors are
// returned in query result batches and
// [can only be used to limit the same
// query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets).
EndCursor []byte `protobuf:"bytes,8,opt,name=end_cursor,json=endCursor,proto3" json:"end_cursor,omitempty"`
// The number of results to skip. Applies before limit, but after all other
// constraints. Optional. Must be >= 0 if specified.
Offset int32 `protobuf:"varint,10,opt,name=offset,proto3" json:"offset,omitempty"`
// The maximum number of results to return. Applies after all other
// constraints. Optional.
// Unspecified is interpreted as no limit.
// Must be >= 0 if specified.
Limit *wrappers.Int32Value `protobuf:"bytes,12,opt,name=limit,proto3" json:"limit,omitempty"`
}
func (x *Query) Reset() {
*x = Query{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Query) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Query) ProtoMessage() {}
func (x *Query) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Query.ProtoReflect.Descriptor instead.
func (*Query) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{1}
}
func (x *Query) GetProjection() []*Projection {
if x != nil {
return x.Projection
}
return nil
}
func (x *Query) GetKind() []*KindExpression {
if x != nil {
return x.Kind
}
return nil
}
func (x *Query) GetFilter() *Filter {
if x != nil {
return x.Filter
}
return nil
}
func (x *Query) GetOrder() []*PropertyOrder {
if x != nil {
return x.Order
}
return nil
}
func (x *Query) GetDistinctOn() []*PropertyReference {
if x != nil {
return x.DistinctOn
}
return nil
}
func (x *Query) GetStartCursor() []byte {
if x != nil {
return x.StartCursor
}
return nil
}
func (x *Query) GetEndCursor() []byte {
if x != nil {
return x.EndCursor
}
return nil
}
func (x *Query) GetOffset() int32 {
if x != nil {
return x.Offset
}
return 0
}
func (x *Query) GetLimit() *wrappers.Int32Value {
if x != nil {
return x.Limit
}
return nil
}
// A representation of a kind.
type KindExpression struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the kind.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *KindExpression) Reset() {
*x = KindExpression{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *KindExpression) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*KindExpression) ProtoMessage() {}
func (x *KindExpression) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use KindExpression.ProtoReflect.Descriptor instead.
func (*KindExpression) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{2}
}
func (x *KindExpression) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// A reference to a property relative to the kind expressions.
type PropertyReference struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The name of the property.
// If name includes "."s, it may be interpreted as a property name path.
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *PropertyReference) Reset() {
*x = PropertyReference{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PropertyReference) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PropertyReference) ProtoMessage() {}
func (x *PropertyReference) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PropertyReference.ProtoReflect.Descriptor instead.
func (*PropertyReference) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{3}
}
func (x *PropertyReference) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// A representation of a property in a projection.
type Projection struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The property to project.
Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
}
func (x *Projection) Reset() {
*x = Projection{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Projection) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Projection) ProtoMessage() {}
func (x *Projection) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Projection.ProtoReflect.Descriptor instead.
func (*Projection) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{4}
}
func (x *Projection) GetProperty() *PropertyReference {
if x != nil {
return x.Property
}
return nil
}
// The desired order for a specific property.
type PropertyOrder struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The property to order by.
Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
// The direction to order by. Defaults to `ASCENDING`.
Direction PropertyOrder_Direction `protobuf:"varint,2,opt,name=direction,proto3,enum=google.datastore.v1beta3.PropertyOrder_Direction" json:"direction,omitempty"`
}
func (x *PropertyOrder) Reset() {
*x = PropertyOrder{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PropertyOrder) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PropertyOrder) ProtoMessage() {}
func (x *PropertyOrder) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PropertyOrder.ProtoReflect.Descriptor instead.
func (*PropertyOrder) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{5}
}
func (x *PropertyOrder) GetProperty() *PropertyReference {
if x != nil {
return x.Property
}
return nil
}
func (x *PropertyOrder) GetDirection() PropertyOrder_Direction {
if x != nil {
return x.Direction
}
return PropertyOrder_DIRECTION_UNSPECIFIED
}
// A holder for any type of filter.
type Filter struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The type of filter.
//
// Types that are assignable to FilterType:
// *Filter_CompositeFilter
// *Filter_PropertyFilter
FilterType isFilter_FilterType `protobuf_oneof:"filter_type"`
}
func (x *Filter) Reset() {
*x = Filter{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Filter) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Filter) ProtoMessage() {}
func (x *Filter) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Filter.ProtoReflect.Descriptor instead.
func (*Filter) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{6}
}
func (m *Filter) GetFilterType() isFilter_FilterType {
if m != nil {
return m.FilterType
}
return nil
}
func (x *Filter) GetCompositeFilter() *CompositeFilter {
if x, ok := x.GetFilterType().(*Filter_CompositeFilter); ok {
return x.CompositeFilter
}
return nil
}
func (x *Filter) GetPropertyFilter() *PropertyFilter {
if x, ok := x.GetFilterType().(*Filter_PropertyFilter); ok {
return x.PropertyFilter
}
return nil
}
type isFilter_FilterType interface {
isFilter_FilterType()
}
type Filter_CompositeFilter struct {
// A composite filter.
CompositeFilter *CompositeFilter `protobuf:"bytes,1,opt,name=composite_filter,json=compositeFilter,proto3,oneof"`
}
type Filter_PropertyFilter struct {
// A filter on a property.
PropertyFilter *PropertyFilter `protobuf:"bytes,2,opt,name=property_filter,json=propertyFilter,proto3,oneof"`
}
func (*Filter_CompositeFilter) isFilter_FilterType() {}
func (*Filter_PropertyFilter) isFilter_FilterType() {}
// A filter that merges multiple other filters using the given operator.
type CompositeFilter struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The operator for combining multiple filters.
Op CompositeFilter_Operator `protobuf:"varint,1,opt,name=op,proto3,enum=google.datastore.v1beta3.CompositeFilter_Operator" json:"op,omitempty"`
// The list of filters to combine.
// Must contain at least one filter.
Filters []*Filter `protobuf:"bytes,2,rep,name=filters,proto3" json:"filters,omitempty"`
}
func (x *CompositeFilter) Reset() {
*x = CompositeFilter{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CompositeFilter) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CompositeFilter) ProtoMessage() {}
func (x *CompositeFilter) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CompositeFilter.ProtoReflect.Descriptor instead.
func (*CompositeFilter) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{7}
}
func (x *CompositeFilter) GetOp() CompositeFilter_Operator {
if x != nil {
return x.Op
}
return CompositeFilter_OPERATOR_UNSPECIFIED
}
func (x *CompositeFilter) GetFilters() []*Filter {
if x != nil {
return x.Filters
}
return nil
}
// A filter on a specific property.
type PropertyFilter struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The property to filter by.
Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"`
// The operator to filter by.
Op PropertyFilter_Operator `protobuf:"varint,2,opt,name=op,proto3,enum=google.datastore.v1beta3.PropertyFilter_Operator" json:"op,omitempty"`
// The value to compare the property to.
Value *Value `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
}
func (x *PropertyFilter) Reset() {
*x = PropertyFilter{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *PropertyFilter) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*PropertyFilter) ProtoMessage() {}
func (x *PropertyFilter) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use PropertyFilter.ProtoReflect.Descriptor instead.
func (*PropertyFilter) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{8}
}
func (x *PropertyFilter) GetProperty() *PropertyReference {
if x != nil {
return x.Property
}
return nil
}
func (x *PropertyFilter) GetOp() PropertyFilter_Operator {
if x != nil {
return x.Op
}
return PropertyFilter_OPERATOR_UNSPECIFIED
}
func (x *PropertyFilter) GetValue() *Value {
if x != nil {
return x.Value
}
return nil
}
// A [GQL
// query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).
type GqlQuery struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// A string of the format described
// [here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference).
QueryString string `protobuf:"bytes,1,opt,name=query_string,json=queryString,proto3" json:"query_string,omitempty"`
// When false, the query string must not contain any literals and instead must
// bind all values. For example,
// `SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while
// `SELECT * FROM Kind WHERE a = @value` is.
AllowLiterals bool `protobuf:"varint,2,opt,name=allow_literals,json=allowLiterals,proto3" json:"allow_literals,omitempty"`
// For each non-reserved named binding site in the query string, there must be
// a named parameter with that name, but not necessarily the inverse.
//
// Key must match regex `[A-Za-z_$][A-Za-z_$0-9]*`, must not match regex
// `__.*__`, and must not be `""`.
NamedBindings map[string]*GqlQueryParameter `protobuf:"bytes,5,rep,name=named_bindings,json=namedBindings,proto3" json:"named_bindings,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// Numbered binding site @1 references the first numbered parameter,
// effectively using 1-based indexing, rather than the usual 0.
//
// For each binding site numbered i in `query_string`, there must be an i-th
// numbered parameter. The inverse must also be true.
PositionalBindings []*GqlQueryParameter `protobuf:"bytes,4,rep,name=positional_bindings,json=positionalBindings,proto3" json:"positional_bindings,omitempty"`
}
func (x *GqlQuery) Reset() {
*x = GqlQuery{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GqlQuery) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GqlQuery) ProtoMessage() {}
func (x *GqlQuery) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GqlQuery.ProtoReflect.Descriptor instead.
func (*GqlQuery) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{9}
}
func (x *GqlQuery) GetQueryString() string {
if x != nil {
return x.QueryString
}
return ""
}
func (x *GqlQuery) GetAllowLiterals() bool {
if x != nil {
return x.AllowLiterals
}
return false
}
func (x *GqlQuery) GetNamedBindings() map[string]*GqlQueryParameter {
if x != nil {
return x.NamedBindings
}
return nil
}
func (x *GqlQuery) GetPositionalBindings() []*GqlQueryParameter {
if x != nil {
return x.PositionalBindings
}
return nil
}
// A binding parameter for a GQL query.
type GqlQueryParameter struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The type of parameter.
//
// Types that are assignable to ParameterType:
// *GqlQueryParameter_Value
// *GqlQueryParameter_Cursor
ParameterType isGqlQueryParameter_ParameterType `protobuf_oneof:"parameter_type"`
}
func (x *GqlQueryParameter) Reset() {
*x = GqlQueryParameter{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GqlQueryParameter) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GqlQueryParameter) ProtoMessage() {}
func (x *GqlQueryParameter) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GqlQueryParameter.ProtoReflect.Descriptor instead.
func (*GqlQueryParameter) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{10}
}
func (m *GqlQueryParameter) GetParameterType() isGqlQueryParameter_ParameterType {
if m != nil {
return m.ParameterType
}
return nil
}
func (x *GqlQueryParameter) GetValue() *Value {
if x, ok := x.GetParameterType().(*GqlQueryParameter_Value); ok {
return x.Value
}
return nil
}
func (x *GqlQueryParameter) GetCursor() []byte {
if x, ok := x.GetParameterType().(*GqlQueryParameter_Cursor); ok {
return x.Cursor
}
return nil
}
type isGqlQueryParameter_ParameterType interface {
isGqlQueryParameter_ParameterType()
}
type GqlQueryParameter_Value struct {
// A value parameter.
Value *Value `protobuf:"bytes,2,opt,name=value,proto3,oneof"`
}
type GqlQueryParameter_Cursor struct {
// A query cursor. Query cursors are returned in query
// result batches.
Cursor []byte `protobuf:"bytes,3,opt,name=cursor,proto3,oneof"`
}
func (*GqlQueryParameter_Value) isGqlQueryParameter_ParameterType() {}
func (*GqlQueryParameter_Cursor) isGqlQueryParameter_ParameterType() {}
// A batch of results produced by a query.
type QueryResultBatch struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The number of results skipped, typically because of an offset.
SkippedResults int32 `protobuf:"varint,6,opt,name=skipped_results,json=skippedResults,proto3" json:"skipped_results,omitempty"`
// A cursor that points to the position after the last skipped result.
// Will be set when `skipped_results` != 0.
SkippedCursor []byte `protobuf:"bytes,3,opt,name=skipped_cursor,json=skippedCursor,proto3" json:"skipped_cursor,omitempty"`
// The result type for every entity in `entity_results`.
EntityResultType EntityResult_ResultType `protobuf:"varint,1,opt,name=entity_result_type,json=entityResultType,proto3,enum=google.datastore.v1beta3.EntityResult_ResultType" json:"entity_result_type,omitempty"`
// The results for this batch.
EntityResults []*EntityResult `protobuf:"bytes,2,rep,name=entity_results,json=entityResults,proto3" json:"entity_results,omitempty"`
// A cursor that points to the position after the last result in the batch.
EndCursor []byte `protobuf:"bytes,4,opt,name=end_cursor,json=endCursor,proto3" json:"end_cursor,omitempty"`
// The state of the query after the current batch.
MoreResults QueryResultBatch_MoreResultsType `protobuf:"varint,5,opt,name=more_results,json=moreResults,proto3,enum=google.datastore.v1beta3.QueryResultBatch_MoreResultsType" json:"more_results,omitempty"`
// The version number of the snapshot this batch was returned from.
// This applies to the range of results from the query's `start_cursor` (or
// the beginning of the query if no cursor was given) to this batch's
// `end_cursor` (not the query's `end_cursor`).
//
// In a single transaction, subsequent query result batches for the same query
// can have a greater snapshot version number. Each batch's snapshot version
// is valid for all preceding batches.
// The value will be zero for eventually consistent queries.
SnapshotVersion int64 `protobuf:"varint,7,opt,name=snapshot_version,json=snapshotVersion,proto3" json:"snapshot_version,omitempty"`
}
func (x *QueryResultBatch) Reset() {
*x = QueryResultBatch{}
if protoimpl.UnsafeEnabled {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *QueryResultBatch) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*QueryResultBatch) ProtoMessage() {}
func (x *QueryResultBatch) ProtoReflect() protoreflect.Message {
mi := &file_google_datastore_v1beta3_query_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use QueryResultBatch.ProtoReflect.Descriptor instead.
func (*QueryResultBatch) Descriptor() ([]byte, []int) {
return file_google_datastore_v1beta3_query_proto_rawDescGZIP(), []int{11}
}
func (x *QueryResultBatch) GetSkippedResults() int32 {
if x != nil {
return x.SkippedResults
}
return 0
}
func (x *QueryResultBatch) GetSkippedCursor() []byte {
if x != nil {
return x.SkippedCursor
}
return nil
}
func (x *QueryResultBatch) GetEntityResultType() EntityResult_ResultType {
if x != nil {
return x.EntityResultType
}
return EntityResult_RESULT_TYPE_UNSPECIFIED
}
func (x *QueryResultBatch) GetEntityResults() []*EntityResult {
if x != nil {
return x.EntityResults
}
return nil
}
func (x *QueryResultBatch) GetEndCursor() []byte {
if x != nil {
return x.EndCursor
}
return nil
}
func (x *QueryResultBatch) GetMoreResults() QueryResultBatch_MoreResultsType {
if x != nil {
return x.MoreResults
}
return QueryResultBatch_MORE_RESULTS_TYPE_UNSPECIFIED
}
func (x *QueryResultBatch) GetSnapshotVersion() int64 {
if x != nil {
return x.SnapshotVersion
}
return 0
}
var File_google_datastore_v1beta3_query_proto protoreflect.FileDescriptor
var file_google_datastore_v1beta3_query_proto_rawDesc = []byte{
0x0a, 0x24, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2f, 0x71, 0x75, 0x65, 0x72, 0x79,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64,
0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33,
0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e,
0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79,
0x70, 0x65, 0x2f, 0x6c, 0x61, 0x74, 0x6c, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
0xcd, 0x01, 0x0a, 0x0c, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
0x12, 0x38, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74,
0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x45, 0x6e, 0x74, 0x69,
0x74, 0x79, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x76, 0x65, 0x72,
0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x22, 0x51, 0x0a, 0x0a,
0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45,
0x53, 0x55, 0x4c, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x55, 0x4c, 0x4c, 0x10,
0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10,
0x02, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x45, 0x59, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x03, 0x22,
0xdf, 0x03, 0x0a, 0x05, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x44, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x3c, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x4b, 0x69, 0x6e, 0x64, 0x45, 0x78, 0x70,
0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x38, 0x0a,
0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52,
0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x3d, 0x0a, 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72,
0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52,
0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x4c, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e,
0x63, 0x74, 0x5f, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76,
0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52,
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x74, 0x69, 0x6e,
0x63, 0x74, 0x4f, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x63, 0x75,
0x72, 0x73, 0x6f, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72,
0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x63,
0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x65, 0x6e, 0x64,
0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x31,
0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69,
0x74, 0x22, 0x24, 0x0a, 0x0e, 0x4b, 0x69, 0x6e, 0x64, 0x45, 0x78, 0x70, 0x72, 0x65, 0x73, 0x73,
0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x27, 0x0a, 0x11, 0x50, 0x72, 0x6f, 0x70, 0x65,
0x72, 0x74, 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x22, 0x55, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x47,
0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74,
0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70,
0x65, 0x72, 0x74, 0x79, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x70,
0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x22, 0xf0, 0x01, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x70,
0x65, 0x72, 0x74, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x08, 0x70, 0x72, 0x6f,
0x70, 0x65, 0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76,
0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52,
0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72,
0x74, 0x79, 0x12, 0x4f, 0x0a, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18,
0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64,
0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33,
0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x2e, 0x44,
0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74,
0x69, 0x6f, 0x6e, 0x22, 0x45, 0x0a, 0x09, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x12, 0x19, 0x0a, 0x15, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e,
0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x41,
0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x45,
0x53, 0x43, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x22, 0xc4, 0x01, 0x0a, 0x06, 0x46,
0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x10, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69,
0x74, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f,
0x73, 0x69, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x48, 0x00, 0x52, 0x0f, 0x63, 0x6f,
0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x53, 0x0a,
0x0f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61,
0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x48, 0x00, 0x52, 0x0e, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x46, 0x69, 0x6c, 0x74,
0x65, 0x72, 0x42, 0x0d, 0x0a, 0x0b, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70,
0x65, 0x22, 0xc0, 0x01, 0x0a, 0x0f, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x46,
0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28,
0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73,
0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x43, 0x6f, 0x6d,
0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65,
0x72, 0x61, 0x74, 0x6f, 0x72, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x3a, 0x0a, 0x07, 0x66, 0x69, 0x6c,
0x74, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31,
0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x07, 0x66, 0x69,
0x6c, 0x74, 0x65, 0x72, 0x73, 0x22, 0x2d, 0x0a, 0x08, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f,
0x72, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x4f, 0x52, 0x5f, 0x55, 0x4e,
0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x41,
0x4e, 0x44, 0x10, 0x01, 0x22, 0xeb, 0x02, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74,
0x79, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x47, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65,
0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62,
0x65, 0x74, 0x61, 0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x65, 0x66,
0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
0x12, 0x41, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x52,
0x02, 0x6f, 0x70, 0x12, 0x35, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61,
0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x56, 0x61,
0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x95, 0x01, 0x0a, 0x08, 0x4f,
0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x18, 0x0a, 0x14, 0x4f, 0x50, 0x45, 0x52, 0x41,
0x54, 0x4f, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x54, 0x48, 0x41, 0x4e, 0x10, 0x01,
0x12, 0x16, 0x0a, 0x12, 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x54, 0x48, 0x41, 0x4e, 0x5f, 0x4f, 0x52,
0x5f, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x47, 0x52, 0x45, 0x41,
0x54, 0x45, 0x52, 0x5f, 0x54, 0x48, 0x41, 0x4e, 0x10, 0x03, 0x12, 0x19, 0x0a, 0x15, 0x47, 0x52,
0x45, 0x41, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x48, 0x41, 0x4e, 0x5f, 0x4f, 0x52, 0x5f, 0x45, 0x51,
0x55, 0x41, 0x4c, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x51, 0x55, 0x41, 0x4c, 0x10, 0x05,
0x12, 0x10, 0x0a, 0x0c, 0x48, 0x41, 0x53, 0x5f, 0x41, 0x4e, 0x43, 0x45, 0x53, 0x54, 0x4f, 0x52,
0x10, 0x0b, 0x22, 0xff, 0x02, 0x0a, 0x08, 0x47, 0x71, 0x6c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12,
0x21, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x53, 0x74, 0x72, 0x69,
0x6e, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6c, 0x69, 0x74, 0x65,
0x72, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f,
0x77, 0x4c, 0x69, 0x74, 0x65, 0x72, 0x61, 0x6c, 0x73, 0x12, 0x5c, 0x0a, 0x0e, 0x6e, 0x61, 0x6d,
0x65, 0x64, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28,
0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73,
0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x47, 0x71, 0x6c,
0x51, 0x75, 0x65, 0x72, 0x79, 0x2e, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x69,
0x6e, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x6e, 0x61, 0x6d, 0x65, 0x64, 0x42,
0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x5c, 0x0a, 0x13, 0x70, 0x6f, 0x73, 0x69, 0x74,
0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x62, 0x69, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x04,
0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61,
0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e,
0x47, 0x71, 0x6c, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x52, 0x12, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x42, 0x69, 0x6e,
0x64, 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x6d, 0x0a, 0x12, 0x4e, 0x61, 0x6d, 0x65, 0x64, 0x42, 0x69,
0x6e, 0x64, 0x69, 0x6e, 0x67, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b,
0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x41, 0x0a,
0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x47, 0x71, 0x6c, 0x51, 0x75, 0x65, 0x72, 0x79,
0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
0x3a, 0x02, 0x38, 0x01, 0x22, 0x78, 0x0a, 0x11, 0x47, 0x71, 0x6c, 0x51, 0x75, 0x65, 0x72, 0x79,
0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x37, 0x0a, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
0x74, 0x61, 0x33, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x48, 0x00, 0x52, 0x05, 0x76, 0x61, 0x6c,
0x75, 0x65, 0x12, 0x18, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x03, 0x20, 0x01,
0x28, 0x0c, 0x48, 0x00, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x42, 0x10, 0x0a, 0x0e,
0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0xd6,
0x04, 0x0a, 0x10, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, 0x61,
0x74, 0x63, 0x68, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x72,
0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x6b,
0x69, 0x70, 0x70, 0x65, 0x64, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e,
0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x03,
0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x73, 0x6b, 0x69, 0x70, 0x70, 0x65, 0x64, 0x43, 0x75, 0x72,
0x73, 0x6f, 0x72, 0x12, 0x5f, 0x0a, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x72, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74,
0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x54, 0x79,
0x70, 0x65, 0x52, 0x10, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
0x54, 0x79, 0x70, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x72,
0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e,
0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65,
0x73, 0x75, 0x6c, 0x74, 0x52, 0x0d, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x65, 0x73, 0x75,
0x6c, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x63, 0x75, 0x72, 0x73, 0x6f,
0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x43, 0x75, 0x72, 0x73,
0x6f, 0x72, 0x12, 0x5d, 0x0a, 0x0c, 0x6d, 0x6f, 0x72, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c,
0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65,
0x74, 0x61, 0x33, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42,
0x61, 0x74, 0x63, 0x68, 0x2e, 0x4d, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x6d, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
0x73, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x73, 0x6e, 0x61,
0x70, 0x73, 0x68, 0x6f, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x98, 0x01, 0x0a,
0x0f, 0x4d, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x54, 0x79, 0x70, 0x65,
0x12, 0x21, 0x0a, 0x1d, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4c, 0x54, 0x53,
0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
0x44, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x54, 0x5f, 0x46, 0x49, 0x4e, 0x49, 0x53,
0x48, 0x45, 0x44, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x52, 0x45,
0x53, 0x55, 0x4c, 0x54, 0x53, 0x5f, 0x41, 0x46, 0x54, 0x45, 0x52, 0x5f, 0x4c, 0x49, 0x4d, 0x49,
0x54, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x52, 0x45, 0x53, 0x55,
0x4c, 0x54, 0x53, 0x5f, 0x41, 0x46, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x55, 0x52, 0x53, 0x4f, 0x52,
0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x4e, 0x4f, 0x5f, 0x4d, 0x4f, 0x52, 0x45, 0x5f, 0x52, 0x45,
0x53, 0x55, 0x4c, 0x54, 0x53, 0x10, 0x03, 0x42, 0xd5, 0x01, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65,
0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x42, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50,
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67,
0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x64, 0x61,
0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x3b,
0x64, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0xaa, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74, 0x6f,
0x72, 0x65, 0x2e, 0x56, 0x31, 0x42, 0x65, 0x74, 0x61, 0x33, 0xca, 0x02, 0x1e, 0x47, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x44, 0x61, 0x74, 0x61, 0x73, 0x74,
0x6f, 0x72, 0x65, 0x5c, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0xea, 0x02, 0x21, 0x47, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x44, 0x61, 0x74,
0x61, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x33, 0x62,
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_google_datastore_v1beta3_query_proto_rawDescOnce sync.Once
file_google_datastore_v1beta3_query_proto_rawDescData = file_google_datastore_v1beta3_query_proto_rawDesc
)
func file_google_datastore_v1beta3_query_proto_rawDescGZIP() []byte {
file_google_datastore_v1beta3_query_proto_rawDescOnce.Do(func() {
file_google_datastore_v1beta3_query_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_datastore_v1beta3_query_proto_rawDescData)
})
return file_google_datastore_v1beta3_query_proto_rawDescData
}
var file_google_datastore_v1beta3_query_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_google_datastore_v1beta3_query_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
var file_google_datastore_v1beta3_query_proto_goTypes = []interface{}{
(EntityResult_ResultType)(0), // 0: google.datastore.v1beta3.EntityResult.ResultType
(PropertyOrder_Direction)(0), // 1: google.datastore.v1beta3.PropertyOrder.Direction
(CompositeFilter_Operator)(0), // 2: google.datastore.v1beta3.CompositeFilter.Operator
(PropertyFilter_Operator)(0), // 3: google.datastore.v1beta3.PropertyFilter.Operator
(QueryResultBatch_MoreResultsType)(0), // 4: google.datastore.v1beta3.QueryResultBatch.MoreResultsType
(*EntityResult)(nil), // 5: google.datastore.v1beta3.EntityResult
(*Query)(nil), // 6: google.datastore.v1beta3.Query
(*KindExpression)(nil), // 7: google.datastore.v1beta3.KindExpression
(*PropertyReference)(nil), // 8: google.datastore.v1beta3.PropertyReference
(*Projection)(nil), // 9: google.datastore.v1beta3.Projection
(*PropertyOrder)(nil), // 10: google.datastore.v1beta3.PropertyOrder
(*Filter)(nil), // 11: google.datastore.v1beta3.Filter
(*CompositeFilter)(nil), // 12: google.datastore.v1beta3.CompositeFilter
(*PropertyFilter)(nil), // 13: google.datastore.v1beta3.PropertyFilter
(*GqlQuery)(nil), // 14: google.datastore.v1beta3.GqlQuery
(*GqlQueryParameter)(nil), // 15: google.datastore.v1beta3.GqlQueryParameter
(*QueryResultBatch)(nil), // 16: google.datastore.v1beta3.QueryResultBatch
nil, // 17: google.datastore.v1beta3.GqlQuery.NamedBindingsEntry
(*Entity)(nil), // 18: google.datastore.v1beta3.Entity
(*wrappers.Int32Value)(nil), // 19: google.protobuf.Int32Value
(*Value)(nil), // 20: google.datastore.v1beta3.Value
}
var file_google_datastore_v1beta3_query_proto_depIdxs = []int32{
18, // 0: google.datastore.v1beta3.EntityResult.entity:type_name -> google.datastore.v1beta3.Entity
9, // 1: google.datastore.v1beta3.Query.projection:type_name -> google.datastore.v1beta3.Projection
7, // 2: google.datastore.v1beta3.Query.kind:type_name -> google.datastore.v1beta3.KindExpression
11, // 3: google.datastore.v1beta3.Query.filter:type_name -> google.datastore.v1beta3.Filter
10, // 4: google.datastore.v1beta3.Query.order:type_name -> google.datastore.v1beta3.PropertyOrder
8, // 5: google.datastore.v1beta3.Query.distinct_on:type_name -> google.datastore.v1beta3.PropertyReference
19, // 6: google.datastore.v1beta3.Query.limit:type_name -> google.protobuf.Int32Value
8, // 7: google.datastore.v1beta3.Projection.property:type_name -> google.datastore.v1beta3.PropertyReference
8, // 8: google.datastore.v1beta3.PropertyOrder.property:type_name -> google.datastore.v1beta3.PropertyReference
1, // 9: google.datastore.v1beta3.PropertyOrder.direction:type_name -> google.datastore.v1beta3.PropertyOrder.Direction
12, // 10: google.datastore.v1beta3.Filter.composite_filter:type_name -> google.datastore.v1beta3.CompositeFilter
13, // 11: google.datastore.v1beta3.Filter.property_filter:type_name -> google.datastore.v1beta3.PropertyFilter
2, // 12: google.datastore.v1beta3.CompositeFilter.op:type_name -> google.datastore.v1beta3.CompositeFilter.Operator
11, // 13: google.datastore.v1beta3.CompositeFilter.filters:type_name -> google.datastore.v1beta3.Filter
8, // 14: google.datastore.v1beta3.PropertyFilter.property:type_name -> google.datastore.v1beta3.PropertyReference
3, // 15: google.datastore.v1beta3.PropertyFilter.op:type_name -> google.datastore.v1beta3.PropertyFilter.Operator
20, // 16: google.datastore.v1beta3.PropertyFilter.value:type_name -> google.datastore.v1beta3.Value
17, // 17: google.datastore.v1beta3.GqlQuery.named_bindings:type_name -> google.datastore.v1beta3.GqlQuery.NamedBindingsEntry
15, // 18: google.datastore.v1beta3.GqlQuery.positional_bindings:type_name -> google.datastore.v1beta3.GqlQueryParameter
20, // 19: google.datastore.v1beta3.GqlQueryParameter.value:type_name -> google.datastore.v1beta3.Value
0, // 20: google.datastore.v1beta3.QueryResultBatch.entity_result_type:type_name -> google.datastore.v1beta3.EntityResult.ResultType
5, // 21: google.datastore.v1beta3.QueryResultBatch.entity_results:type_name -> google.datastore.v1beta3.EntityResult
4, // 22: google.datastore.v1beta3.QueryResultBatch.more_results:type_name -> google.datastore.v1beta3.QueryResultBatch.MoreResultsType
15, // 23: google.datastore.v1beta3.GqlQuery.NamedBindingsEntry.value:type_name -> google.datastore.v1beta3.GqlQueryParameter
24, // [24:24] is the sub-list for method output_type
24, // [24:24] is the sub-list for method input_type
24, // [24:24] is the sub-list for extension type_name
24, // [24:24] is the sub-list for extension extendee
0, // [0:24] is the sub-list for field type_name
}
func init() { file_google_datastore_v1beta3_query_proto_init() }
func file_google_datastore_v1beta3_query_proto_init() {
if File_google_datastore_v1beta3_query_proto != nil {
return
}
file_google_datastore_v1beta3_entity_proto_init()
if !protoimpl.UnsafeEnabled {
file_google_datastore_v1beta3_query_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*EntityResult); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Query); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*KindExpression); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PropertyReference); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Projection); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PropertyOrder); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Filter); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CompositeFilter); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*PropertyFilter); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GqlQuery); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GqlQueryParameter); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*QueryResultBatch); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_google_datastore_v1beta3_query_proto_msgTypes[6].OneofWrappers = []interface{}{
(*Filter_CompositeFilter)(nil),
(*Filter_PropertyFilter)(nil),
}
file_google_datastore_v1beta3_query_proto_msgTypes[10].OneofWrappers = []interface{}{
(*GqlQueryParameter_Value)(nil),
(*GqlQueryParameter_Cursor)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_google_datastore_v1beta3_query_proto_rawDesc,
NumEnums: 5,
NumMessages: 13,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_google_datastore_v1beta3_query_proto_goTypes,
DependencyIndexes: file_google_datastore_v1beta3_query_proto_depIdxs,
EnumInfos: file_google_datastore_v1beta3_query_proto_enumTypes,
MessageInfos: file_google_datastore_v1beta3_query_proto_msgTypes,
}.Build()
File_google_datastore_v1beta3_query_proto = out.File
file_google_datastore_v1beta3_query_proto_rawDesc = nil
file_google_datastore_v1beta3_query_proto_goTypes = nil
file_google_datastore_v1beta3_query_proto_depIdxs = nil
}