Skip to content

Commit 26c0548

Browse files
authored
Add protos for Or Query (#10317)
1 parent f5aad32 commit 26c0548

File tree

5 files changed

+63
-51
lines changed

5 files changed

+63
-51
lines changed

Firestore/Protos/cpp/google/firestore/v1/query.pb.cc

Lines changed: 49 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,7 @@ const char descriptor_table_protodef_google_2ffirestore_2fv1_2fquery_2eproto[] P
442442
"\n\037google/firestore/v1/query.proto\022\023googl"
443443
"e.firestore.v1\032\034google/api/annotations.p"
444444
"roto\032\"google/firestore/v1/document.proto"
445-
"\032\036google/protobuf/wrappers.proto\"\266\017\n\017Str"
445+
"\032\036google/protobuf/wrappers.proto\"\276\017\n\017Str"
446446
"ucturedQuery\022\?\n\006select\030\001 \001(\0132/.google.fi"
447447
"restore.v1.StructuredQuery.Projection\022E\n"
448448
"\004from\030\002 \003(\01327.google.firestore.v1.Struct"
@@ -461,53 +461,54 @@ const char descriptor_table_protodef_google_2ffirestore_2fv1_2fquery_2eproto[] P
461461
"r\030\002 \001(\01320.google.firestore.v1.Structured"
462462
"Query.FieldFilterH\000\022H\n\014unary_filter\030\003 \001("
463463
"\01320.google.firestore.v1.StructuredQuery."
464-
"UnaryFilterH\000B\r\n\013filter_type\032\311\001\n\017Composi"
464+
"UnaryFilterH\000B\r\n\013filter_type\032\321\001\n\017Composi"
465465
"teFilter\022I\n\002op\030\001 \001(\0162=.google.firestore."
466466
"v1.StructuredQuery.CompositeFilter.Opera"
467467
"tor\022<\n\007filters\030\002 \003(\0132+.google.firestore."
468-
"v1.StructuredQuery.Filter\"-\n\010Operator\022\030\n"
469-
"\024OPERATOR_UNSPECIFIED\020\000\022\007\n\003AND\020\001\032\230\003\n\013Fie"
470-
"ldFilter\022B\n\005field\030\001 \001(\01323.google.firesto"
471-
"re.v1.StructuredQuery.FieldReference\022E\n\002"
472-
"op\030\002 \001(\01629.google.firestore.v1.Structure"
473-
"dQuery.FieldFilter.Operator\022)\n\005value\030\003 \001"
474-
"(\0132\032.google.firestore.v1.Value\"\322\001\n\010Opera"
475-
"tor\022\030\n\024OPERATOR_UNSPECIFIED\020\000\022\r\n\tLESS_TH"
476-
"AN\020\001\022\026\n\022LESS_THAN_OR_EQUAL\020\002\022\020\n\014GREATER_"
477-
"THAN\020\003\022\031\n\025GREATER_THAN_OR_EQUAL\020\004\022\t\n\005EQU"
478-
"AL\020\005\022\r\n\tNOT_EQUAL\020\006\022\022\n\016ARRAY_CONTAINS\020\007\022"
479-
"\006\n\002IN\020\010\022\026\n\022ARRAY_CONTAINS_ANY\020\t\022\n\n\006NOT_I"
480-
"N\020\n\032\212\002\n\013UnaryFilter\022E\n\002op\030\001 \001(\01629.google"
481-
".firestore.v1.StructuredQuery.UnaryFilte"
482-
"r.Operator\022D\n\005field\030\002 \001(\01323.google.fires"
483-
"tore.v1.StructuredQuery.FieldReferenceH\000"
484-
"\"^\n\010Operator\022\030\n\024OPERATOR_UNSPECIFIED\020\000\022\n"
485-
"\n\006IS_NAN\020\002\022\013\n\007IS_NULL\020\003\022\016\n\nIS_NOT_NAN\020\004\022"
486-
"\017\n\013IS_NOT_NULL\020\005B\016\n\014operand_type\032\216\001\n\005Ord"
487-
"er\022B\n\005field\030\001 \001(\01323.google.firestore.v1."
488-
"StructuredQuery.FieldReference\022A\n\tdirect"
489-
"ion\030\002 \001(\0162..google.firestore.v1.Structur"
490-
"edQuery.Direction\032$\n\016FieldReference\022\022\n\nf"
491-
"ield_path\030\002 \001(\t\032Q\n\nProjection\022C\n\006fields\030"
492-
"\002 \003(\01323.google.firestore.v1.StructuredQu"
493-
"ery.FieldReference\"E\n\tDirection\022\031\n\025DIREC"
494-
"TION_UNSPECIFIED\020\000\022\r\n\tASCENDING\020\001\022\016\n\nDES"
495-
"CENDING\020\002\"\363\002\n\032StructuredAggregationQuery"
496-
"\022@\n\020structured_query\030\001 \001(\0132$.google.fire"
497-
"store.v1.StructuredQueryH\000\022Q\n\014aggregatio"
498-
"ns\030\003 \003(\0132;.google.firestore.v1.Structure"
499-
"dAggregationQuery.Aggregation\032\261\001\n\013Aggreg"
500-
"ation\022R\n\005count\030\001 \001(\0132A.google.firestore."
501-
"v1.StructuredAggregationQuery.Aggregatio"
502-
"n.CountH\000\022\r\n\005alias\030\007 \001(\t\0323\n\005Count\022*\n\005up_"
503-
"to\030\001 \001(\0132\033.google.protobuf.Int64ValueB\n\n"
504-
"\010operatorB\014\n\nquery_type\"D\n\006Cursor\022*\n\006val"
505-
"ues\030\001 \003(\0132\032.google.firestore.v1.Value\022\016\n"
506-
"\006before\030\002 \001(\010B\256\001\n\027com.google.firestore.v"
507-
"1B\nQueryProtoP\001Z<google.golang.org/genpr"
508-
"oto/googleapis/firestore/v1;firestore\242\002\004"
509-
"GCFS\252\002\036Google.Cloud.Firestore.V1Beta1\312\002\036"
510-
"Google\\Cloud\\Firestore\\V1beta1b\006proto3"
468+
"v1.StructuredQuery.Filter\"5\n\010Operator\022\030\n"
469+
"\024OPERATOR_UNSPECIFIED\020\000\022\007\n\003AND\020\001\022\006\n\002OR\020\002"
470+
"\032\230\003\n\013FieldFilter\022B\n\005field\030\001 \001(\01323.google"
471+
".firestore.v1.StructuredQuery.FieldRefer"
472+
"ence\022E\n\002op\030\002 \001(\01629.google.firestore.v1.S"
473+
"tructuredQuery.FieldFilter.Operator\022)\n\005v"
474+
"alue\030\003 \001(\0132\032.google.firestore.v1.Value\"\322"
475+
"\001\n\010Operator\022\030\n\024OPERATOR_UNSPECIFIED\020\000\022\r\n"
476+
"\tLESS_THAN\020\001\022\026\n\022LESS_THAN_OR_EQUAL\020\002\022\020\n\014"
477+
"GREATER_THAN\020\003\022\031\n\025GREATER_THAN_OR_EQUAL\020"
478+
"\004\022\t\n\005EQUAL\020\005\022\r\n\tNOT_EQUAL\020\006\022\022\n\016ARRAY_CON"
479+
"TAINS\020\007\022\006\n\002IN\020\010\022\026\n\022ARRAY_CONTAINS_ANY\020\t\022"
480+
"\n\n\006NOT_IN\020\n\032\212\002\n\013UnaryFilter\022E\n\002op\030\001 \001(\0162"
481+
"9.google.firestore.v1.StructuredQuery.Un"
482+
"aryFilter.Operator\022D\n\005field\030\002 \001(\01323.goog"
483+
"le.firestore.v1.StructuredQuery.FieldRef"
484+
"erenceH\000\"^\n\010Operator\022\030\n\024OPERATOR_UNSPECI"
485+
"FIED\020\000\022\n\n\006IS_NAN\020\002\022\013\n\007IS_NULL\020\003\022\016\n\nIS_NO"
486+
"T_NAN\020\004\022\017\n\013IS_NOT_NULL\020\005B\016\n\014operand_type"
487+
"\032\216\001\n\005Order\022B\n\005field\030\001 \001(\01323.google.fires"
488+
"tore.v1.StructuredQuery.FieldReference\022A"
489+
"\n\tdirection\030\002 \001(\0162..google.firestore.v1."
490+
"StructuredQuery.Direction\032$\n\016FieldRefere"
491+
"nce\022\022\n\nfield_path\030\002 \001(\t\032Q\n\nProjection\022C\n"
492+
"\006fields\030\002 \003(\01323.google.firestore.v1.Stru"
493+
"cturedQuery.FieldReference\"E\n\tDirection\022"
494+
"\031\n\025DIRECTION_UNSPECIFIED\020\000\022\r\n\tASCENDING\020"
495+
"\001\022\016\n\nDESCENDING\020\002\"\363\002\n\032StructuredAggregat"
496+
"ionQuery\022@\n\020structured_query\030\001 \001(\0132$.goo"
497+
"gle.firestore.v1.StructuredQueryH\000\022Q\n\014ag"
498+
"gregations\030\003 \003(\0132;.google.firestore.v1.S"
499+
"tructuredAggregationQuery.Aggregation\032\261\001"
500+
"\n\013Aggregation\022R\n\005count\030\001 \001(\0132A.google.fi"
501+
"restore.v1.StructuredAggregationQuery.Ag"
502+
"gregation.CountH\000\022\r\n\005alias\030\007 \001(\t\0323\n\005Coun"
503+
"t\022*\n\005up_to\030\001 \001(\0132\033.google.protobuf.Int64"
504+
"ValueB\n\n\010operatorB\014\n\nquery_type\"D\n\006Curso"
505+
"r\022*\n\006values\030\001 \003(\0132\032.google.firestore.v1."
506+
"Value\022\016\n\006before\030\002 \001(\010B\256\001\n\027com.google.fir"
507+
"estore.v1B\nQueryProtoP\001Z<google.golang.o"
508+
"rg/genproto/googleapis/firestore/v1;fire"
509+
"store\242\002\004GCFS\252\002\036Google.Cloud.Firestore.V1"
510+
"Beta1\312\002\036Google\\Cloud\\Firestore\\V1beta1b\006"
511+
"proto3"
511512
;
512513
static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_deps[3] = {
513514
&::descriptor_table_google_2fapi_2fannotations_2eproto,
@@ -531,7 +532,7 @@ static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_goo
531532
static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_once;
532533
static bool descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_initialized = false;
533534
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto = {
534-
&descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_initialized, descriptor_table_protodef_google_2ffirestore_2fv1_2fquery_2eproto, "google/firestore/v1/query.proto", 2758,
535+
&descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_initialized, descriptor_table_protodef_google_2ffirestore_2fv1_2fquery_2eproto, "google/firestore/v1/query.proto", 2766,
535536
&descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_once, descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_sccs, descriptor_table_google_2ffirestore_2fv1_2fquery_2eproto_deps, 12, 3,
536537
schemas, file_default_instances, TableStruct_google_2ffirestore_2fv1_2fquery_2eproto::offsets,
537538
file_level_metadata_google_2ffirestore_2fv1_2fquery_2eproto, 13, file_level_enum_descriptors_google_2ffirestore_2fv1_2fquery_2eproto, file_level_service_descriptors_google_2ffirestore_2fv1_2fquery_2eproto,
@@ -550,6 +551,7 @@ bool StructuredQuery_CompositeFilter_Operator_IsValid(int value) {
550551
switch (value) {
551552
case 0:
552553
case 1:
554+
case 2:
553555
return true;
554556
default:
555557
return false;
@@ -559,6 +561,7 @@ bool StructuredQuery_CompositeFilter_Operator_IsValid(int value) {
559561
#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
560562
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter::OPERATOR_UNSPECIFIED;
561563
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter::AND;
564+
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter::OR;
562565
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter::Operator_MIN;
563566
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter::Operator_MAX;
564567
constexpr int StructuredQuery_CompositeFilter::Operator_ARRAYSIZE;

Firestore/Protos/cpp/google/firestore/v1/query.pb.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,12 +141,13 @@ namespace v1 {
141141
enum StructuredQuery_CompositeFilter_Operator : int {
142142
StructuredQuery_CompositeFilter_Operator_OPERATOR_UNSPECIFIED = 0,
143143
StructuredQuery_CompositeFilter_Operator_AND = 1,
144+
StructuredQuery_CompositeFilter_Operator_OR = 2,
144145
StructuredQuery_CompositeFilter_Operator_StructuredQuery_CompositeFilter_Operator_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
145146
StructuredQuery_CompositeFilter_Operator_StructuredQuery_CompositeFilter_Operator_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
146147
};
147148
bool StructuredQuery_CompositeFilter_Operator_IsValid(int value);
148149
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter_Operator_Operator_MIN = StructuredQuery_CompositeFilter_Operator_OPERATOR_UNSPECIFIED;
149-
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter_Operator_Operator_MAX = StructuredQuery_CompositeFilter_Operator_AND;
150+
constexpr StructuredQuery_CompositeFilter_Operator StructuredQuery_CompositeFilter_Operator_Operator_MAX = StructuredQuery_CompositeFilter_Operator_OR;
150151
constexpr int StructuredQuery_CompositeFilter_Operator_Operator_ARRAYSIZE = StructuredQuery_CompositeFilter_Operator_Operator_MAX + 1;
151152

152153
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* StructuredQuery_CompositeFilter_Operator_descriptor();
@@ -695,6 +696,8 @@ class StructuredQuery_CompositeFilter :
695696
StructuredQuery_CompositeFilter_Operator_OPERATOR_UNSPECIFIED;
696697
static constexpr Operator AND =
697698
StructuredQuery_CompositeFilter_Operator_AND;
699+
static constexpr Operator OR =
700+
StructuredQuery_CompositeFilter_Operator_OR;
698701
static inline bool Operator_IsValid(int value) {
699702
return StructuredQuery_CompositeFilter_Operator_IsValid(value);
700703
}

Firestore/Protos/nanopb/google/firestore/v1/query.nanopb.cc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,8 @@ const char* EnumToString(
169169
return "OPERATOR_UNSPECIFIED";
170170
case google_firestore_v1_StructuredQuery_CompositeFilter_Operator_AND:
171171
return "AND";
172+
case google_firestore_v1_StructuredQuery_CompositeFilter_Operator_OR:
173+
return "OR";
172174
}
173175
return "<unknown enum value>";
174176
}

Firestore/Protos/nanopb/google/firestore/v1/query.nanopb.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,12 @@ typedef enum _google_firestore_v1_StructuredQuery_Direction {
5050

5151
typedef enum _google_firestore_v1_StructuredQuery_CompositeFilter_Operator {
5252
google_firestore_v1_StructuredQuery_CompositeFilter_Operator_OPERATOR_UNSPECIFIED = 0,
53-
google_firestore_v1_StructuredQuery_CompositeFilter_Operator_AND = 1
53+
google_firestore_v1_StructuredQuery_CompositeFilter_Operator_AND = 1,
54+
google_firestore_v1_StructuredQuery_CompositeFilter_Operator_OR = 2
5455
} google_firestore_v1_StructuredQuery_CompositeFilter_Operator;
5556
#define _google_firestore_v1_StructuredQuery_CompositeFilter_Operator_MIN google_firestore_v1_StructuredQuery_CompositeFilter_Operator_OPERATOR_UNSPECIFIED
56-
#define _google_firestore_v1_StructuredQuery_CompositeFilter_Operator_MAX google_firestore_v1_StructuredQuery_CompositeFilter_Operator_AND
57-
#define _google_firestore_v1_StructuredQuery_CompositeFilter_Operator_ARRAYSIZE ((google_firestore_v1_StructuredQuery_CompositeFilter_Operator)(google_firestore_v1_StructuredQuery_CompositeFilter_Operator_AND+1))
57+
#define _google_firestore_v1_StructuredQuery_CompositeFilter_Operator_MAX google_firestore_v1_StructuredQuery_CompositeFilter_Operator_OR
58+
#define _google_firestore_v1_StructuredQuery_CompositeFilter_Operator_ARRAYSIZE ((google_firestore_v1_StructuredQuery_CompositeFilter_Operator)(google_firestore_v1_StructuredQuery_CompositeFilter_Operator_OR+1))
5859

5960
typedef enum _google_firestore_v1_StructuredQuery_FieldFilter_Operator {
6061
google_firestore_v1_StructuredQuery_FieldFilter_Operator_OPERATOR_UNSPECIFIED = 0,

Firestore/Protos/protos/google/firestore/v1/query.proto

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,11 @@ message StructuredQuery {
6666
// Unspecified. This value must not be used.
6767
OPERATOR_UNSPECIFIED = 0;
6868

69-
// The results are required to satisfy each of the combined filters.
69+
// Documents are required to satisfy all of the combined filters.
7070
AND = 1;
71+
72+
// Documents are required to satisfy at least one of the combined filters.
73+
OR = 2;
7174
}
7275

7376
// The operator for combining multiple filters.

0 commit comments

Comments
 (0)