From a4f078a585fe4946121063882d0f0b60793f7fd8 Mon Sep 17 00:00:00 2001 From: wu-hui Date: Tue, 8 Apr 2025 16:34:47 -0400 Subject: [PATCH] [realppl 1] Add pipeline listen proto changes --- .../cpp/google/firestore/v1/firestore.pb.cc | 561 ++++++++++++++---- .../cpp/google/firestore/v1/firestore.pb.h | 394 +++++++++++- .../google/firestore/v1/firestore.nanopb.cc | 40 +- .../google/firestore/v1/firestore.nanopb.h | 19 +- .../google/firestore/v1/firestore.proto | 12 + .../protos/google/firestore/v1/write.proto | 6 + 6 files changed, 910 insertions(+), 122 deletions(-) diff --git a/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.cc b/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.cc index 93dfc7f88b2..fd07a360ede 100644 --- a/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.cc +++ b/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.cc @@ -397,6 +397,26 @@ struct UpdateDocumentRequestDefaultTypeInternal { PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UpdateDocumentRequestDefaultTypeInternal _UpdateDocumentRequest_default_instance_; +inline constexpr Target_PipelineQueryTarget::Impl_::Impl_( + ::_pbi::ConstantInitialized) noexcept + : pipeline_type_{}, + _cached_size_{0}, + _oneof_case_{} {} + +template +PROTOBUF_CONSTEXPR Target_PipelineQueryTarget::Target_PipelineQueryTarget(::_pbi::ConstantInitialized) + : _impl_(::_pbi::ConstantInitialized()) {} +struct Target_PipelineQueryTargetDefaultTypeInternal { + PROTOBUF_CONSTEXPR Target_PipelineQueryTargetDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {} + ~Target_PipelineQueryTargetDefaultTypeInternal() {} + union { + Target_PipelineQueryTarget _instance; + }; +}; + +PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT + PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 Target_PipelineQueryTargetDefaultTypeInternal _Target_PipelineQueryTarget_default_instance_; + inline constexpr RunQueryResponse::Impl_::Impl_( ::_pbi::ConstantInitialized) noexcept : _cached_size_{0}, @@ -762,7 +782,7 @@ PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT } // namespace v1 } // namespace firestore } // namespace google -static ::_pb::Metadata file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[31]; +static ::_pb::Metadata file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[32]; static const ::_pb::EnumDescriptor* file_level_enum_descriptors_google_2ffirestore_2fv1_2ffirestore_2eproto[1]; static constexpr const ::_pb::ServiceDescriptor** file_level_service_descriptors_google_2ffirestore_2fv1_2ffirestore_2eproto = nullptr; @@ -1151,6 +1171,16 @@ const ::uint32_t TableStruct_google_2ffirestore_2fv1_2ffirestore_2eproto::offset PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target_QueryTarget, _impl_.parent_), ::_pbi::kInvalidFieldOffsetTag, PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target_QueryTarget, _impl_.query_type_), + ~0u, // no _has_bits_ + PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target_PipelineQueryTarget, _internal_metadata_), + ~0u, // no _extensions_ + PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target_PipelineQueryTarget, _impl_._oneof_case_[0]), + ~0u, // no _weak_field_map_ + ~0u, // no _inlined_string_donated_ + ~0u, // no _split_ + ~0u, // no sizeof(Split) + ::_pbi::kInvalidFieldOffsetTag, + PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target_PipelineQueryTarget, _impl_.pipeline_type_), PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target, _impl_._has_bits_), PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target, _internal_metadata_), ~0u, // no _extensions_ @@ -1163,6 +1193,7 @@ const ::uint32_t TableStruct_google_2ffirestore_2fv1_2ffirestore_2eproto::offset ::_pbi::kInvalidFieldOffsetTag, ::_pbi::kInvalidFieldOffsetTag, ::_pbi::kInvalidFieldOffsetTag, + ::_pbi::kInvalidFieldOffsetTag, PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target, _impl_.target_id_), PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target, _impl_.once_), PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target, _impl_.expected_count_), @@ -1174,6 +1205,7 @@ const ::uint32_t TableStruct_google_2ffirestore_2fv1_2ffirestore_2eproto::offset ~0u, ~0u, ~0u, + ~0u, 0, PROTOBUF_FIELD_OFFSET(::google::firestore::v1::TargetChange, _impl_._has_bits_), PROTOBUF_FIELD_OFFSET(::google::firestore::v1::TargetChange, _internal_metadata_), @@ -1245,10 +1277,11 @@ static const ::_pbi::MigrationSchema {349, -1, -1, sizeof(::google::firestore::v1::ListenResponse)}, {363, -1, -1, sizeof(::google::firestore::v1::Target_DocumentsTarget)}, {372, -1, -1, sizeof(::google::firestore::v1::Target_QueryTarget)}, - {383, 400, -1, sizeof(::google::firestore::v1::Target)}, - {407, 420, -1, sizeof(::google::firestore::v1::TargetChange)}, - {425, -1, -1, sizeof(::google::firestore::v1::ListCollectionIdsRequest)}, - {436, -1, -1, sizeof(::google::firestore::v1::ListCollectionIdsResponse)}, + {383, -1, -1, sizeof(::google::firestore::v1::Target_PipelineQueryTarget)}, + {393, 411, -1, sizeof(::google::firestore::v1::Target)}, + {419, 432, -1, sizeof(::google::firestore::v1::TargetChange)}, + {437, -1, -1, sizeof(::google::firestore::v1::ListCollectionIdsRequest)}, + {448, -1, -1, sizeof(::google::firestore::v1::ListCollectionIdsResponse)}, }; static const ::_pb::Message* const file_default_instances[] = { @@ -1279,6 +1312,7 @@ static const ::_pb::Message* const file_default_instances[] = { &::google::firestore::v1::_ListenResponse_default_instance_._instance, &::google::firestore::v1::_Target_DocumentsTarget_default_instance_._instance, &::google::firestore::v1::_Target_QueryTarget_default_instance_._instance, + &::google::firestore::v1::_Target_PipelineQueryTarget_default_instance_._instance, &::google::firestore::v1::_Target_default_instance_._instance, &::google::firestore::v1::_TargetChange_default_instance_._instance, &::google::firestore::v1::_ListCollectionIdsRequest_default_instance_._instance, @@ -1407,104 +1441,109 @@ const char descriptor_table_protodef_google_2ffirestore_2fv1_2ffirestore_2eproto "remove\030\006 \001(\0132#.google.firestore.v1.Docum" "entRemoveH\000\0226\n\006filter\030\005 \001(\0132$.google.fir" "estore.v1.ExistenceFilterH\000B\017\n\rresponse_" - "type\"\326\003\n\006Target\0228\n\005query\030\002 \001(\0132\'.google." + "type\"\221\005\n\006Target\0228\n\005query\030\002 \001(\0132\'.google." "firestore.v1.Target.QueryTargetH\000\022@\n\tdoc" "uments\030\003 \001(\0132+.google.firestore.v1.Targe" - "t.DocumentsTargetH\000\022\026\n\014resume_token\030\004 \001(" - "\014H\001\022/\n\tread_time\030\013 \001(\0132\032.google.protobuf" - ".TimestampH\001\022\021\n\ttarget_id\030\005 \001(\005\022\014\n\004once\030" - "\006 \001(\010\0223\n\016expected_count\030\014 \001(\0132\033.google.p" - "rotobuf.Int32Value\032$\n\017DocumentsTarget\022\021\n" - "\tdocuments\030\002 \003(\t\032m\n\013QueryTarget\022\016\n\006paren" - "t\030\001 \001(\t\022@\n\020structured_query\030\002 \001(\0132$.goog" - "le.firestore.v1.StructuredQueryH\000B\014\n\nque" - "ry_typeB\r\n\013target_typeB\r\n\013resume_type\"\252\002" - "\n\014TargetChange\022N\n\022target_change_type\030\001 \001" - "(\01622.google.firestore.v1.TargetChange.Ta" - "rgetChangeType\022\022\n\ntarget_ids\030\002 \003(\005\022!\n\005ca" - "use\030\003 \001(\0132\022.google.rpc.Status\022\024\n\014resume_" - "token\030\004 \001(\014\022-\n\tread_time\030\006 \001(\0132\032.google." - "protobuf.Timestamp\"N\n\020TargetChangeType\022\r" - "\n\tNO_CHANGE\020\000\022\007\n\003ADD\020\001\022\n\n\006REMOVE\020\002\022\013\n\007CU" - "RRENT\020\003\022\t\n\005RESET\020\004\"Q\n\030ListCollectionIdsR" - "equest\022\016\n\006parent\030\001 \001(\t\022\021\n\tpage_size\030\002 \001(" - "\005\022\022\n\npage_token\030\003 \001(\t\"L\n\031ListCollectionI" - "dsResponse\022\026\n\016collection_ids\030\001 \003(\t\022\027\n\017ne" - "xt_page_token\030\002 \001(\t2\333\025\n\tFirestore\022\217\001\n\013Ge" - "tDocument\022\'.google.firestore.v1.GetDocum" + "t.DocumentsTargetH\000\022I\n\016pipeline_query\030\r " + "\001(\0132/.google.firestore.v1.Target.Pipelin" + "eQueryTargetH\000\022\026\n\014resume_token\030\004 \001(\014H\001\022/" + "\n\tread_time\030\013 \001(\0132\032.google.protobuf.Time" + "stampH\001\022\021\n\ttarget_id\030\005 \001(\005\022\014\n\004once\030\006 \001(\010" + "\0223\n\016expected_count\030\014 \001(\0132\033.google.protob" + "uf.Int32Value\032$\n\017DocumentsTarget\022\021\n\tdocu" + "ments\030\002 \003(\t\032m\n\013QueryTarget\022\016\n\006parent\030\001 \001" + "(\t\022@\n\020structured_query\030\002 \001(\0132$.google.fi" + "restore.v1.StructuredQueryH\000B\014\n\nquery_ty" + "pe\032n\n\023PipelineQueryTarget\022F\n\023structured_" + "pipeline\030\001 \001(\0132\'.google.firestore.v1.Str" + "ucturedPipelineH\000B\017\n\rpipeline_typeB\r\n\013ta" + "rget_typeB\r\n\013resume_type\"\252\002\n\014TargetChang" + "e\022N\n\022target_change_type\030\001 \001(\01622.google.f" + "irestore.v1.TargetChange.TargetChangeTyp" + "e\022\022\n\ntarget_ids\030\002 \003(\005\022!\n\005cause\030\003 \001(\0132\022.g" + "oogle.rpc.Status\022\024\n\014resume_token\030\004 \001(\014\022-" + "\n\tread_time\030\006 \001(\0132\032.google.protobuf.Time" + "stamp\"N\n\020TargetChangeType\022\r\n\tNO_CHANGE\020\000" + "\022\007\n\003ADD\020\001\022\n\n\006REMOVE\020\002\022\013\n\007CURRENT\020\003\022\t\n\005RE" + "SET\020\004\"Q\n\030ListCollectionIdsRequest\022\016\n\006par" + "ent\030\001 \001(\t\022\021\n\tpage_size\030\002 \001(\005\022\022\n\npage_tok" + "en\030\003 \001(\t\"L\n\031ListCollectionIdsResponse\022\026\n" + "\016collection_ids\030\001 \003(\t\022\027\n\017next_page_token" + "\030\002 \001(\t2\333\025\n\tFirestore\022\217\001\n\013GetDocument\022\'.g" + "oogle.firestore.v1.GetDocumentRequest\032\035." + "google.firestore.v1.Document\"8\202\323\344\223\0022\0220/v" + "1/{name=projects/*/databases/*/documents" + "/*/**}\022\262\001\n\rListDocuments\022).google.firest" + "ore.v1.ListDocumentsRequest\032*.google.fir" + "estore.v1.ListDocumentsResponse\"J\202\323\344\223\002D\022" + "B/v1/{parent=projects/*/databases/*/docu" + "ments/*/**}/{collection_id}\022\257\001\n\016CreateDo" + "cument\022*.google.firestore.v1.CreateDocum" "entRequest\032\035.google.firestore.v1.Documen" - "t\"8\202\323\344\223\0022\0220/v1/{name=projects/*/database" - "s/*/documents/*/**}\022\262\001\n\rListDocuments\022)." - "google.firestore.v1.ListDocumentsRequest" - "\032*.google.firestore.v1.ListDocumentsResp" - "onse\"J\202\323\344\223\002D\022B/v1/{parent=projects/*/dat" - "abases/*/documents/*/**}/{collection_id}" - "\022\257\001\n\016CreateDocument\022*.google.firestore.v" - "1.CreateDocumentRequest\032\035.google.firesto" - "re.v1.Document\"R\202\323\344\223\002L\"@/v1/{parent=proj" - "ects/*/databases/*/documents/**}/{collec" - "tion_id}:\010document\022\250\001\n\016UpdateDocument\022*." - "google.firestore.v1.UpdateDocumentReques" - "t\032\035.google.firestore.v1.Document\"K\202\323\344\223\002E" - "29/v1/{document.name=projects/*/database" - "s/*/documents/*/**}:\010document\022\216\001\n\016Delete" - "Document\022*.google.firestore.v1.DeleteDoc" - "umentRequest\032\026.google.protobuf.Empty\"8\202\323" - "\344\223\0022*0/v1/{name=projects/*/databases/*/d" - "ocuments/*/**}\022\271\001\n\021BatchGetDocuments\022-.g" - "oogle.firestore.v1.BatchGetDocumentsRequ" - "est\032..google.firestore.v1.BatchGetDocume" - "ntsResponse\"C\202\323\344\223\002=\"8/v1/{database=proje" - "cts/*/databases/*}/documents:batchGet:\001*" - "0\001\022\274\001\n\020BeginTransaction\022,.google.firesto" - "re.v1.BeginTransactionRequest\032-.google.f" - "irestore.v1.BeginTransactionResponse\"K\202\323" - "\344\223\002E\"@/v1/{database=projects/*/databases" - "/*}/documents:beginTransaction:\001*\022\224\001\n\006Co" - "mmit\022\".google.firestore.v1.CommitRequest" - "\032#.google.firestore.v1.CommitResponse\"A\202" - "\323\344\223\002;\"6/v1/{database=projects/*/database" - "s/*}/documents:commit:\001*\022\215\001\n\010Rollback\022$." - "google.firestore.v1.RollbackRequest\032\026.go" - "ogle.protobuf.Empty\"C\202\323\344\223\002=\"8/v1/{databa" - "se=projects/*/databases/*}/documents:rol" - "lback:\001*\022\337\001\n\010RunQuery\022$.google.firestore" - ".v1.RunQueryRequest\032%.google.firestore.v" - "1.RunQueryResponse\"\203\001\202\323\344\223\002}\"6/v1/{parent" - "=projects/*/databases/*/documents}:runQu" - "ery:\001*Z@\";/v1/{parent=projects/*/databas" - "es/*/documents/*/**}:runQuery:\001*0\001\022\272\001\n\017E" - "xecutePipeline\022+.google.firestore.v1.Exe" - "cutePipelineRequest\032,.google.firestore.v" - "1.ExecutePipelineResponse\"J\202\323\344\223\002D\"\?/v1/{" - "database=projects/*/databases/*}/documen" - "ts:executePipeline:\001*0\001\022\227\002\n\023RunAggregati" - "onQuery\022/.google.firestore.v1.RunAggrega" - "tionQueryRequest\0320.google.firestore.v1.R" - "unAggregationQueryResponse\"\232\001\202\323\344\223\002\223\001\"A/v" - "1/{parent=projects/*/databases/*/documen" - "ts}:runAggregationQuery:\001*ZK\"F/v1/{paren" - "t=projects/*/databases/*/documents/*/**}" - ":runAggregationQuery:\001*0\001\022\224\001\n\005Write\022!.go" - "ogle.firestore.v1.WriteRequest\032\".google." - "firestore.v1.WriteResponse\"@\202\323\344\223\002:\"5/v1/" - "{database=projects/*/databases/*}/docume" - "nts:write:\001*(\0010\001\022\230\001\n\006Listen\022\".google.fir" - "estore.v1.ListenRequest\032#.google.firesto" - "re.v1.ListenResponse\"A\202\323\344\223\002;\"6/v1/{datab" - "ase=projects/*/databases/*}/documents:li" - "sten:\001*(\0010\001\022\213\002\n\021ListCollectionIds\022-.goog" - "le.firestore.v1.ListCollectionIdsRequest" - "\032..google.firestore.v1.ListCollectionIds" - "Response\"\226\001\202\323\344\223\002\217\001\"\?/v1/{parent=projects" - "/*/databases/*/documents}:listCollection" - "Ids:\001*ZI\"D/v1/{parent=projects/*/databas" - "es/*/documents/*/**}:listCollectionIds:\001" - "*B\262\001\n\027com.google.firestore.v1B\016Firestore" - "ProtoP\001Z_impl_.pipeline_type_.structured_pipeline_; +} +void Target_PipelineQueryTarget::set_allocated_structured_pipeline(::google::firestore::v1::StructuredPipeline* structured_pipeline) { + ::google::protobuf::Arena* message_arena = GetArena(); + clear_pipeline_type(); + if (structured_pipeline) { + ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::MessageLite*>(structured_pipeline)->GetArena(); + if (message_arena != submessage_arena) { + structured_pipeline = ::google::protobuf::internal::GetOwnedMessage(message_arena, structured_pipeline, submessage_arena); + } + set_has_structured_pipeline(); + _impl_.pipeline_type_.structured_pipeline_ = structured_pipeline; + } + // @@protoc_insertion_point(field_set_allocated:google.firestore.v1.Target.PipelineQueryTarget.structured_pipeline) +} +void Target_PipelineQueryTarget::clear_structured_pipeline() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (pipeline_type_case() == kStructuredPipeline) { + if (GetArena() == nullptr) { + delete _impl_.pipeline_type_.structured_pipeline_; + } + clear_has_pipeline_type(); + } +} +Target_PipelineQueryTarget::Target_PipelineQueryTarget(::google::protobuf::Arena* arena) + : ::google::protobuf::Message(arena) { + SharedCtor(arena); + // @@protoc_insertion_point(arena_constructor:google.firestore.v1.Target.PipelineQueryTarget) +} +inline PROTOBUF_NDEBUG_INLINE Target_PipelineQueryTarget::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, ::google::protobuf::Arena* arena, + const Impl_& from) + : pipeline_type_{}, + _cached_size_{0}, + _oneof_case_{from._oneof_case_[0]} {} + +Target_PipelineQueryTarget::Target_PipelineQueryTarget( + ::google::protobuf::Arena* arena, + const Target_PipelineQueryTarget& from) + : ::google::protobuf::Message(arena) { + Target_PipelineQueryTarget* const _this = this; + (void)_this; + _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>( + from._internal_metadata_); + new (&_impl_) Impl_(internal_visibility(), arena, from._impl_); + switch (pipeline_type_case()) { + case PIPELINE_TYPE_NOT_SET: + break; + case kStructuredPipeline: + _impl_.pipeline_type_.structured_pipeline_ = CreateMaybeMessage<::google::firestore::v1::StructuredPipeline>(arena, *from._impl_.pipeline_type_.structured_pipeline_); + break; + } + + // @@protoc_insertion_point(copy_constructor:google.firestore.v1.Target.PipelineQueryTarget) +} +inline PROTOBUF_NDEBUG_INLINE Target_PipelineQueryTarget::Impl_::Impl_( + ::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena) + : pipeline_type_{}, + _cached_size_{0}, + _oneof_case_{} {} + +inline void Target_PipelineQueryTarget::SharedCtor(::_pb::Arena* arena) { + new (&_impl_) Impl_(internal_visibility(), arena); +} +Target_PipelineQueryTarget::~Target_PipelineQueryTarget() { + // @@protoc_insertion_point(destructor:google.firestore.v1.Target.PipelineQueryTarget) + _internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>(); + SharedDtor(); +} +inline void Target_PipelineQueryTarget::SharedDtor() { + ABSL_DCHECK(GetArena() == nullptr); + if (has_pipeline_type()) { + clear_pipeline_type(); + } + _impl_.~Impl_(); +} + +void Target_PipelineQueryTarget::clear_pipeline_type() { +// @@protoc_insertion_point(one_of_clear_start:google.firestore.v1.Target.PipelineQueryTarget) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + switch (pipeline_type_case()) { + case kStructuredPipeline: { + if (GetArena() == nullptr) { + delete _impl_.pipeline_type_.structured_pipeline_; + } + break; + } + case PIPELINE_TYPE_NOT_SET: { + break; + } + } + _impl_._oneof_case_[0] = PIPELINE_TYPE_NOT_SET; +} + + +PROTOBUF_NOINLINE void Target_PipelineQueryTarget::Clear() { +// @@protoc_insertion_point(message_clear_start:google.firestore.v1.Target.PipelineQueryTarget) + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + clear_pipeline_type(); + _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>(); +} + +const char* Target_PipelineQueryTarget::_InternalParse( + const char* ptr, ::_pbi::ParseContext* ctx) { + ptr = ::_pbi::TcParser::ParseLoop(this, ptr, ctx, &_table_.header); + return ptr; +} + + +PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 +const ::_pbi::TcParseTable<0, 1, 1, 0, 2> Target_PipelineQueryTarget::_table_ = { + { + 0, // no _has_bits_ + 0, // no _extensions_ + 1, 0, // max_field_number, fast_idx_mask + offsetof(decltype(_table_), field_lookup_table), + 4294967294, // skipmap + offsetof(decltype(_table_), field_entries), + 1, // num_field_entries + 1, // num_aux_entries + offsetof(decltype(_table_), aux_entries), + &_Target_PipelineQueryTarget_default_instance_._instance, + ::_pbi::TcParser::GenericFallback, // fallback + }, {{ + {::_pbi::TcParser::MiniParse, {}}, + }}, {{ + 65535, 65535 + }}, {{ + // .google.firestore.v1.StructuredPipeline structured_pipeline = 1; + {PROTOBUF_FIELD_OFFSET(Target_PipelineQueryTarget, _impl_.pipeline_type_.structured_pipeline_), _Internal::kOneofCaseOffset + 0, 0, + (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)}, + }}, {{ + {::_pbi::TcParser::GetTable<::google::firestore::v1::StructuredPipeline>()}, + }}, {{ + }}, +}; + +::uint8_t* Target_PipelineQueryTarget::_InternalSerialize( + ::uint8_t* target, + ::google::protobuf::io::EpsCopyOutputStream* stream) const { + // @@protoc_insertion_point(serialize_to_array_start:google.firestore.v1.Target.PipelineQueryTarget) + ::uint32_t cached_has_bits = 0; + (void)cached_has_bits; + + // .google.firestore.v1.StructuredPipeline structured_pipeline = 1; + if (pipeline_type_case() == kStructuredPipeline) { + target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 1, _Internal::structured_pipeline(this), + _Internal::structured_pipeline(this).GetCachedSize(), target, stream); + } + + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { + target = + ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( + _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream); + } + // @@protoc_insertion_point(serialize_to_array_end:google.firestore.v1.Target.PipelineQueryTarget) + return target; +} + +::size_t Target_PipelineQueryTarget::ByteSizeLong() const { +// @@protoc_insertion_point(message_byte_size_start:google.firestore.v1.Target.PipelineQueryTarget) + ::size_t total_size = 0; + + ::uint32_t cached_has_bits = 0; + // Prevent compiler warnings about cached_has_bits being unused + (void) cached_has_bits; + + switch (pipeline_type_case()) { + // .google.firestore.v1.StructuredPipeline structured_pipeline = 1; + case kStructuredPipeline: { + total_size += + 1 + ::google::protobuf::internal::WireFormatLite::MessageSize(*_impl_.pipeline_type_.structured_pipeline_); + break; + } + case PIPELINE_TYPE_NOT_SET: { + break; + } + } + return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_); +} + +const ::google::protobuf::Message::ClassData Target_PipelineQueryTarget::_class_data_ = { + Target_PipelineQueryTarget::MergeImpl, + nullptr, // OnDemandRegisterArenaDtor +}; +const ::google::protobuf::Message::ClassData* Target_PipelineQueryTarget::GetClassData() const { + return &_class_data_; +} + +void Target_PipelineQueryTarget::MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg) { + auto* const _this = static_cast(&to_msg); + auto& from = static_cast(from_msg); + // @@protoc_insertion_point(class_specific_merge_from_start:google.firestore.v1.Target.PipelineQueryTarget) + ABSL_DCHECK_NE(&from, _this); + ::uint32_t cached_has_bits = 0; + (void) cached_has_bits; + + switch (from.pipeline_type_case()) { + case kStructuredPipeline: { + _this->_internal_mutable_structured_pipeline()->::google::firestore::v1::StructuredPipeline::MergeFrom( + from._internal_structured_pipeline()); + break; + } + case PIPELINE_TYPE_NOT_SET: { + break; + } + } + _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_); +} + +void Target_PipelineQueryTarget::CopyFrom(const Target_PipelineQueryTarget& from) { +// @@protoc_insertion_point(class_specific_copy_from_start:google.firestore.v1.Target.PipelineQueryTarget) + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +PROTOBUF_NOINLINE bool Target_PipelineQueryTarget::IsInitialized() const { + return true; +} + +::_pbi::CachedSize* Target_PipelineQueryTarget::AccessCachedSize() const { + return &_impl_._cached_size_; +} +void Target_PipelineQueryTarget::InternalSwap(Target_PipelineQueryTarget* PROTOBUF_RESTRICT other) { + using std::swap; + _internal_metadata_.InternalSwap(&other->_internal_metadata_); + swap(_impl_.pipeline_type_, other->_impl_.pipeline_type_); + swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]); +} + +::google::protobuf::Metadata Target_PipelineQueryTarget::GetMetadata() const { + return ::_pbi::AssignDescriptors( + &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_getter, &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_once, + file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[27]); +} +// =================================================================== + class Target::_Internal { public: using HasBits = decltype(std::declval()._impl_._has_bits_); @@ -9917,6 +10208,7 @@ class Target::_Internal { PROTOBUF_FIELD_OFFSET(::google::firestore::v1::Target, _impl_._oneof_case_); static const ::google::firestore::v1::Target_QueryTarget& query(const Target* msg); static const ::google::firestore::v1::Target_DocumentsTarget& documents(const Target* msg); + static const ::google::firestore::v1::Target_PipelineQueryTarget& pipeline_query(const Target* msg); static const ::google::protobuf::Timestamp& read_time(const Target* msg); static const ::google::protobuf::Int32Value& expected_count(const Target* msg); static void set_has_expected_count(HasBits* has_bits) { @@ -9930,6 +10222,9 @@ const ::google::firestore::v1::Target_QueryTarget& Target::_Internal::query(cons const ::google::firestore::v1::Target_DocumentsTarget& Target::_Internal::documents(const Target* msg) { return *msg->_impl_.target_type_.documents_; } +const ::google::firestore::v1::Target_PipelineQueryTarget& Target::_Internal::pipeline_query(const Target* msg) { + return *msg->_impl_.target_type_.pipeline_query_; +} const ::google::protobuf::Timestamp& Target::_Internal::read_time(const Target* msg) { return *msg->_impl_.resume_type_.read_time_; } @@ -9962,6 +10257,19 @@ void Target::set_allocated_documents(::google::firestore::v1::Target_DocumentsTa } // @@protoc_insertion_point(field_set_allocated:google.firestore.v1.Target.documents) } +void Target::set_allocated_pipeline_query(::google::firestore::v1::Target_PipelineQueryTarget* pipeline_query) { + ::google::protobuf::Arena* message_arena = GetArena(); + clear_target_type(); + if (pipeline_query) { + ::google::protobuf::Arena* submessage_arena = pipeline_query->GetArena(); + if (message_arena != submessage_arena) { + pipeline_query = ::google::protobuf::internal::GetOwnedMessage(message_arena, pipeline_query, submessage_arena); + } + set_has_pipeline_query(); + _impl_.target_type_.pipeline_query_ = pipeline_query; + } + // @@protoc_insertion_point(field_set_allocated:google.firestore.v1.Target.pipeline_query) +} void Target::set_allocated_read_time(::google::protobuf::Timestamp* read_time) { ::google::protobuf::Arena* message_arena = GetArena(); clear_resume_type(); @@ -10032,6 +10340,9 @@ Target::Target( case kDocuments: _impl_.target_type_.documents_ = CreateMaybeMessage<::google::firestore::v1::Target_DocumentsTarget>(arena, *from._impl_.target_type_.documents_); break; + case kPipelineQuery: + _impl_.target_type_.pipeline_query_ = CreateMaybeMessage<::google::firestore::v1::Target_PipelineQueryTarget>(arena, *from._impl_.target_type_.pipeline_query_); + break; } switch (resume_type_case()) { case RESUME_TYPE_NOT_SET: @@ -10096,6 +10407,12 @@ void Target::clear_target_type() { } break; } + case kPipelineQuery: { + if (GetArena() == nullptr) { + delete _impl_.target_type_.pipeline_query_; + } + break; + } case TARGET_TYPE_NOT_SET: { break; } @@ -10154,16 +10471,16 @@ const char* Target::_InternalParse( PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 -const ::_pbi::TcParseTable<2, 7, 4, 0, 2> Target::_table_ = { +const ::_pbi::TcParseTable<2, 8, 5, 0, 2> Target::_table_ = { { PROTOBUF_FIELD_OFFSET(Target, _impl_._has_bits_), 0, // no _extensions_ - 12, 24, // max_field_number, fast_idx_mask + 13, 24, // max_field_number, fast_idx_mask offsetof(decltype(_table_), field_lookup_table), - 4294964161, // skipmap + 4294960065, // skipmap offsetof(decltype(_table_), field_entries), - 7, // num_field_entries - 4, // num_aux_entries + 8, // num_field_entries + 5, // num_aux_entries offsetof(decltype(_table_), aux_entries), &_Target_default_instance_._instance, ::_pbi::TcParser::GenericFallback, // fallback @@ -10202,11 +10519,15 @@ const ::_pbi::TcParseTable<2, 7, 4, 0, 2> Target::_table_ = { // .google.protobuf.Int32Value expected_count = 12; {PROTOBUF_FIELD_OFFSET(Target, _impl_.expected_count_), _Internal::kHasBitsOffset + 0, 3, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)}, + // .google.firestore.v1.Target.PipelineQueryTarget pipeline_query = 13; + {PROTOBUF_FIELD_OFFSET(Target, _impl_.target_type_.pipeline_query_), _Internal::kOneofCaseOffset + 0, 4, + (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)}, }}, {{ {::_pbi::TcParser::GetTable<::google::firestore::v1::Target_QueryTarget>()}, {::_pbi::TcParser::GetTable<::google::firestore::v1::Target_DocumentsTarget>()}, {::_pbi::TcParser::GetTable<::google::protobuf::Timestamp>()}, {::_pbi::TcParser::GetTable<::google::protobuf::Int32Value>()}, + {::_pbi::TcParser::GetTable<::google::firestore::v1::Target_PipelineQueryTarget>()}, }}, {{ }}, }; @@ -10269,6 +10590,13 @@ ::uint8_t* Target::_InternalSerialize( _Internal::expected_count(this).GetCachedSize(), target, stream); } + // .google.firestore.v1.Target.PipelineQueryTarget pipeline_query = 13; + if (target_type_case() == kPipelineQuery) { + target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage( + 13, _Internal::pipeline_query(this), + _Internal::pipeline_query(this).GetCachedSize(), target, stream); + } + if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) { target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray( @@ -10317,6 +10645,12 @@ ::size_t Target::ByteSizeLong() const { 1 + ::google::protobuf::internal::WireFormatLite::MessageSize(*_impl_.target_type_.documents_); break; } + // .google.firestore.v1.Target.PipelineQueryTarget pipeline_query = 13; + case kPipelineQuery: { + total_size += + 1 + ::google::protobuf::internal::WireFormatLite::MessageSize(*_impl_.target_type_.pipeline_query_); + break; + } case TARGET_TYPE_NOT_SET: { break; } @@ -10378,6 +10712,11 @@ void Target::MergeImpl(::google::protobuf::Message& to_msg, const ::google::prot from._internal_documents()); break; } + case kPipelineQuery: { + _this->_internal_mutable_pipeline_query()->::google::firestore::v1::Target_PipelineQueryTarget::MergeFrom( + from._internal_pipeline_query()); + break; + } case TARGET_TYPE_NOT_SET: { break; } @@ -10432,7 +10771,7 @@ void Target::InternalSwap(Target* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata Target::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_getter, &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_once, - file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[27]); + file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[28]); } // =================================================================== @@ -10795,7 +11134,7 @@ void TargetChange::InternalSwap(TargetChange* PROTOBUF_RESTRICT other) { ::google::protobuf::Metadata TargetChange::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_getter, &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_once, - file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[28]); + file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[29]); } // =================================================================== @@ -11041,7 +11380,7 @@ void ListCollectionIdsRequest::InternalSwap(ListCollectionIdsRequest* PROTOBUF_R ::google::protobuf::Metadata ListCollectionIdsRequest::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_getter, &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_once, - file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[29]); + file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[30]); } // =================================================================== @@ -11257,7 +11596,7 @@ void ListCollectionIdsResponse::InternalSwap(ListCollectionIdsResponse* PROTOBUF ::google::protobuf::Metadata ListCollectionIdsResponse::GetMetadata() const { return ::_pbi::AssignDescriptors( &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_getter, &descriptor_table_google_2ffirestore_2fv1_2ffirestore_2eproto_once, - file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[30]); + file_level_metadata_google_2ffirestore_2fv1_2ffirestore_2eproto[31]); } // @@protoc_insertion_point(namespace_scope) } // namespace v1 diff --git a/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.h b/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.h index d0678e25d8a..672e56fcd90 100644 --- a/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.h +++ b/Firestore/Protos/cpp/google/firestore/v1/firestore.pb.h @@ -169,6 +169,9 @@ extern TargetChangeDefaultTypeInternal _TargetChange_default_instance_; class Target_DocumentsTarget; struct Target_DocumentsTargetDefaultTypeInternal; extern Target_DocumentsTargetDefaultTypeInternal _Target_DocumentsTarget_default_instance_; +class Target_PipelineQueryTarget; +struct Target_PipelineQueryTargetDefaultTypeInternal; +extern Target_PipelineQueryTargetDefaultTypeInternal _Target_PipelineQueryTarget_default_instance_; class Target_QueryTarget; struct Target_QueryTargetDefaultTypeInternal; extern Target_QueryTargetDefaultTypeInternal _Target_QueryTarget_default_instance_; @@ -746,7 +749,7 @@ class ListCollectionIdsResponse final : &_ListCollectionIdsResponse_default_instance_); } static constexpr int kIndexInFileMessages = - 30; + 31; friend void swap(ListCollectionIdsResponse& a, ListCollectionIdsResponse& b) { a.Swap(&b); @@ -957,7 +960,7 @@ class ListCollectionIdsRequest final : &_ListCollectionIdsRequest_default_instance_); } static constexpr int kIndexInFileMessages = - 29; + 30; friend void swap(ListCollectionIdsRequest& a, ListCollectionIdsRequest& b) { a.Swap(&b); @@ -1943,7 +1946,7 @@ class TargetChange final : &_TargetChange_default_instance_); } static constexpr int kIndexInFileMessages = - 28; + 29; friend void swap(TargetChange& a, TargetChange& b) { a.Swap(&b); @@ -3535,6 +3538,207 @@ class UpdateDocumentRequest final : friend struct ::TableStruct_google_2ffirestore_2fv1_2ffirestore_2eproto; };// ------------------------------------------------------------------- +class Target_PipelineQueryTarget final : + public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:google.firestore.v1.Target.PipelineQueryTarget) */ { + public: + inline Target_PipelineQueryTarget() : Target_PipelineQueryTarget(nullptr) {} + ~Target_PipelineQueryTarget() override; + template + explicit PROTOBUF_CONSTEXPR Target_PipelineQueryTarget(::google::protobuf::internal::ConstantInitialized); + + inline Target_PipelineQueryTarget(const Target_PipelineQueryTarget& from) + : Target_PipelineQueryTarget(nullptr, from) {} + Target_PipelineQueryTarget(Target_PipelineQueryTarget&& from) noexcept + : Target_PipelineQueryTarget() { + *this = ::std::move(from); + } + + inline Target_PipelineQueryTarget& operator=(const Target_PipelineQueryTarget& from) { + CopyFrom(from); + return *this; + } + inline Target_PipelineQueryTarget& operator=(Target_PipelineQueryTarget&& from) noexcept { + if (this == &from) return *this; + if (GetArena() == from.GetArena() + #ifdef PROTOBUF_FORCE_COPY_IN_MOVE + && GetArena() != nullptr + #endif // !PROTOBUF_FORCE_COPY_IN_MOVE + ) { + InternalSwap(&from); + } else { + CopyFrom(from); + } + return *this; + } + + inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance); + } + inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() + ABSL_ATTRIBUTE_LIFETIME_BOUND { + return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>(); + } + + static const ::google::protobuf::Descriptor* descriptor() { + return GetDescriptor(); + } + static const ::google::protobuf::Descriptor* GetDescriptor() { + return default_instance().GetMetadata().descriptor; + } + static const ::google::protobuf::Reflection* GetReflection() { + return default_instance().GetMetadata().reflection; + } + static const Target_PipelineQueryTarget& default_instance() { + return *internal_default_instance(); + } + enum PipelineTypeCase { + kStructuredPipeline = 1, + PIPELINE_TYPE_NOT_SET = 0, + }; + + static inline const Target_PipelineQueryTarget* internal_default_instance() { + return reinterpret_cast( + &_Target_PipelineQueryTarget_default_instance_); + } + static constexpr int kIndexInFileMessages = + 27; + + friend void swap(Target_PipelineQueryTarget& a, Target_PipelineQueryTarget& b) { + a.Swap(&b); + } + inline void Swap(Target_PipelineQueryTarget* other) { + if (other == this) return; + #ifdef PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() != nullptr && + GetArena() == other->GetArena()) { + #else // PROTOBUF_FORCE_COPY_IN_SWAP + if (GetArena() == other->GetArena()) { + #endif // !PROTOBUF_FORCE_COPY_IN_SWAP + InternalSwap(other); + } else { + ::google::protobuf::internal::GenericSwap(this, other); + } + } + void UnsafeArenaSwap(Target_PipelineQueryTarget* other) { + if (other == this) return; + ABSL_DCHECK(GetArena() == other->GetArena()); + InternalSwap(other); + } + + // implements Message ---------------------------------------------- + + Target_PipelineQueryTarget* New(::google::protobuf::Arena* arena = nullptr) const final { + return CreateMaybeMessage(arena); + } + using ::google::protobuf::Message::CopyFrom; + void CopyFrom(const Target_PipelineQueryTarget& from); + using ::google::protobuf::Message::MergeFrom; + void MergeFrom( const Target_PipelineQueryTarget& from) { + Target_PipelineQueryTarget::MergeImpl(*this, from); + } + private: + static void MergeImpl(::google::protobuf::Message& to_msg, const ::google::protobuf::Message& from_msg); + public: + PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final; + bool IsInitialized() const final; + + ::size_t ByteSizeLong() const final; + const char* _InternalParse(const char* ptr, ::google::protobuf::internal::ParseContext* ctx) final; + ::uint8_t* _InternalSerialize( + ::uint8_t* target, ::google::protobuf::io::EpsCopyOutputStream* stream) const final; + int GetCachedSize() const { return _impl_._cached_size_.Get(); } + + private: + ::google::protobuf::internal::CachedSize* AccessCachedSize() const final; + void SharedCtor(::google::protobuf::Arena* arena); + void SharedDtor(); + void InternalSwap(Target_PipelineQueryTarget* other); + + private: + friend class ::google::protobuf::internal::AnyMetadata; + static ::absl::string_view FullMessageName() { + return "google.firestore.v1.Target.PipelineQueryTarget"; + } + protected: + explicit Target_PipelineQueryTarget(::google::protobuf::Arena* arena); + Target_PipelineQueryTarget(::google::protobuf::Arena* arena, const Target_PipelineQueryTarget& from); + public: + + static const ClassData _class_data_; + const ::google::protobuf::Message::ClassData*GetClassData() const final; + + ::google::protobuf::Metadata GetMetadata() const final; + + // nested types ---------------------------------------------------- + + // accessors ------------------------------------------------------- + + enum : int { + kStructuredPipelineFieldNumber = 1, + }; + // .google.firestore.v1.StructuredPipeline structured_pipeline = 1; + bool has_structured_pipeline() const; + private: + bool _internal_has_structured_pipeline() const; + + public: + void clear_structured_pipeline() ; + const ::google::firestore::v1::StructuredPipeline& structured_pipeline() const; + PROTOBUF_NODISCARD ::google::firestore::v1::StructuredPipeline* release_structured_pipeline(); + ::google::firestore::v1::StructuredPipeline* mutable_structured_pipeline(); + void set_allocated_structured_pipeline(::google::firestore::v1::StructuredPipeline* value); + void unsafe_arena_set_allocated_structured_pipeline(::google::firestore::v1::StructuredPipeline* value); + ::google::firestore::v1::StructuredPipeline* unsafe_arena_release_structured_pipeline(); + + private: + const ::google::firestore::v1::StructuredPipeline& _internal_structured_pipeline() const; + ::google::firestore::v1::StructuredPipeline* _internal_mutable_structured_pipeline(); + + public: + void clear_pipeline_type(); + PipelineTypeCase pipeline_type_case() const; + // @@protoc_insertion_point(class_scope:google.firestore.v1.Target.PipelineQueryTarget) + private: + class _Internal; + void set_has_structured_pipeline(); + + inline bool has_pipeline_type() const; + inline void clear_has_pipeline_type(); + + friend class ::google::protobuf::internal::TcParser; + static const ::google::protobuf::internal::TcParseTable< + 0, 1, 1, + 0, 2> + _table_; + friend class ::google::protobuf::MessageLite; + friend class ::google::protobuf::Arena; + template + friend class ::google::protobuf::Arena::InternalHelper; + using InternalArenaConstructable_ = void; + using DestructorSkippable_ = void; + struct Impl_ { + + inline explicit constexpr Impl_( + ::google::protobuf::internal::ConstantInitialized) noexcept; + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena); + inline explicit Impl_(::google::protobuf::internal::InternalVisibility visibility, + ::google::protobuf::Arena* arena, const Impl_& from); + union PipelineTypeUnion { + constexpr PipelineTypeUnion() : _constinit_{} {} + ::google::protobuf::internal::ConstantInitialized _constinit_; + ::google::firestore::v1::StructuredPipeline* structured_pipeline_; + } pipeline_type_; + mutable ::google::protobuf::internal::CachedSize _cached_size_; + ::uint32_t _oneof_case_[1]; + + PROTOBUF_TSAN_DECLARE_MEMBER + }; + union { Impl_ _impl_; }; + friend struct ::TableStruct_google_2ffirestore_2fv1_2ffirestore_2eproto; +};// ------------------------------------------------------------------- + class RunQueryResponse final : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:google.firestore.v1.RunQueryResponse) */ { public: @@ -6570,6 +6774,7 @@ class Target final : enum TargetTypeCase { kQuery = 2, kDocuments = 3, + kPipelineQuery = 13, TARGET_TYPE_NOT_SET = 0, }; @@ -6584,7 +6789,7 @@ class Target final : &_Target_default_instance_); } static constexpr int kIndexInFileMessages = - 27; + 28; friend void swap(Target& a, Target& b) { a.Swap(&b); @@ -6656,6 +6861,7 @@ class Target final : using DocumentsTarget = Target_DocumentsTarget; using QueryTarget = Target_QueryTarget; + using PipelineQueryTarget = Target_PipelineQueryTarget; // accessors ------------------------------------------------------- @@ -6665,6 +6871,7 @@ class Target final : kOnceFieldNumber = 6, kQueryFieldNumber = 2, kDocumentsFieldNumber = 3, + kPipelineQueryFieldNumber = 13, kResumeTokenFieldNumber = 4, kReadTimeFieldNumber = 11, }; @@ -6740,6 +6947,25 @@ class Target final : const ::google::firestore::v1::Target_DocumentsTarget& _internal_documents() const; ::google::firestore::v1::Target_DocumentsTarget* _internal_mutable_documents(); + public: + // .google.firestore.v1.Target.PipelineQueryTarget pipeline_query = 13; + bool has_pipeline_query() const; + private: + bool _internal_has_pipeline_query() const; + + public: + void clear_pipeline_query() ; + const ::google::firestore::v1::Target_PipelineQueryTarget& pipeline_query() const; + PROTOBUF_NODISCARD ::google::firestore::v1::Target_PipelineQueryTarget* release_pipeline_query(); + ::google::firestore::v1::Target_PipelineQueryTarget* mutable_pipeline_query(); + void set_allocated_pipeline_query(::google::firestore::v1::Target_PipelineQueryTarget* value); + void unsafe_arena_set_allocated_pipeline_query(::google::firestore::v1::Target_PipelineQueryTarget* value); + ::google::firestore::v1::Target_PipelineQueryTarget* unsafe_arena_release_pipeline_query(); + + private: + const ::google::firestore::v1::Target_PipelineQueryTarget& _internal_pipeline_query() const; + ::google::firestore::v1::Target_PipelineQueryTarget* _internal_mutable_pipeline_query(); + public: // bytes resume_token = 4; bool has_resume_token() const; @@ -6786,6 +7012,7 @@ class Target final : class _Internal; void set_has_query(); void set_has_documents(); + void set_has_pipeline_query(); void set_has_resume_token(); void set_has_read_time(); @@ -6797,7 +7024,7 @@ class Target final : friend class ::google::protobuf::internal::TcParser; static const ::google::protobuf::internal::TcParseTable< - 2, 7, 4, + 2, 8, 5, 0, 2> _table_; friend class ::google::protobuf::MessageLite; @@ -6824,6 +7051,7 @@ class Target final : ::google::protobuf::internal::ConstantInitialized _constinit_; ::google::firestore::v1::Target_QueryTarget* query_; ::google::firestore::v1::Target_DocumentsTarget* documents_; + ::google::firestore::v1::Target_PipelineQueryTarget* pipeline_query_; } target_type_; union ResumeTypeUnion { constexpr ResumeTypeUnion() : _constinit_{} {} @@ -13744,6 +13972,86 @@ inline Target_QueryTarget::QueryTypeCase Target_QueryTarget::query_type_case() c } // ------------------------------------------------------------------- +// Target_PipelineQueryTarget + +// .google.firestore.v1.StructuredPipeline structured_pipeline = 1; +inline bool Target_PipelineQueryTarget::has_structured_pipeline() const { + return pipeline_type_case() == kStructuredPipeline; +} +inline bool Target_PipelineQueryTarget::_internal_has_structured_pipeline() const { + return pipeline_type_case() == kStructuredPipeline; +} +inline void Target_PipelineQueryTarget::set_has_structured_pipeline() { + _impl_._oneof_case_[0] = kStructuredPipeline; +} +inline ::google::firestore::v1::StructuredPipeline* Target_PipelineQueryTarget::release_structured_pipeline() { + // @@protoc_insertion_point(field_release:google.firestore.v1.Target.PipelineQueryTarget.structured_pipeline) + if (pipeline_type_case() == kStructuredPipeline) { + clear_has_pipeline_type(); + auto* temp = _impl_.pipeline_type_.structured_pipeline_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.pipeline_type_.structured_pipeline_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::google::firestore::v1::StructuredPipeline& Target_PipelineQueryTarget::_internal_structured_pipeline() const { + return pipeline_type_case() == kStructuredPipeline ? *_impl_.pipeline_type_.structured_pipeline_ : reinterpret_cast<::google::firestore::v1::StructuredPipeline&>(::google::firestore::v1::_StructuredPipeline_default_instance_); +} +inline const ::google::firestore::v1::StructuredPipeline& Target_PipelineQueryTarget::structured_pipeline() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:google.firestore.v1.Target.PipelineQueryTarget.structured_pipeline) + return _internal_structured_pipeline(); +} +inline ::google::firestore::v1::StructuredPipeline* Target_PipelineQueryTarget::unsafe_arena_release_structured_pipeline() { + // @@protoc_insertion_point(field_unsafe_arena_release:google.firestore.v1.Target.PipelineQueryTarget.structured_pipeline) + if (pipeline_type_case() == kStructuredPipeline) { + clear_has_pipeline_type(); + auto* temp = _impl_.pipeline_type_.structured_pipeline_; + _impl_.pipeline_type_.structured_pipeline_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Target_PipelineQueryTarget::unsafe_arena_set_allocated_structured_pipeline(::google::firestore::v1::StructuredPipeline* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_pipeline_type(); + if (value) { + set_has_structured_pipeline(); + _impl_.pipeline_type_.structured_pipeline_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.firestore.v1.Target.PipelineQueryTarget.structured_pipeline) +} +inline ::google::firestore::v1::StructuredPipeline* Target_PipelineQueryTarget::_internal_mutable_structured_pipeline() { + if (pipeline_type_case() != kStructuredPipeline) { + clear_pipeline_type(); + set_has_structured_pipeline(); + _impl_.pipeline_type_.structured_pipeline_ = CreateMaybeMessage<::google::firestore::v1::StructuredPipeline>(GetArena()); + } + return _impl_.pipeline_type_.structured_pipeline_; +} +inline ::google::firestore::v1::StructuredPipeline* Target_PipelineQueryTarget::mutable_structured_pipeline() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::google::firestore::v1::StructuredPipeline* _msg = _internal_mutable_structured_pipeline(); + // @@protoc_insertion_point(field_mutable:google.firestore.v1.Target.PipelineQueryTarget.structured_pipeline) + return _msg; +} + +inline bool Target_PipelineQueryTarget::has_pipeline_type() const { + return pipeline_type_case() != PIPELINE_TYPE_NOT_SET; +} +inline void Target_PipelineQueryTarget::clear_has_pipeline_type() { + _impl_._oneof_case_[0] = PIPELINE_TYPE_NOT_SET; +} +inline Target_PipelineQueryTarget::PipelineTypeCase Target_PipelineQueryTarget::pipeline_type_case() const { + return Target_PipelineQueryTarget::PipelineTypeCase(_impl_._oneof_case_[0]); +} +// ------------------------------------------------------------------- + // Target // .google.firestore.v1.Target.QueryTarget query = 2; @@ -13898,6 +14206,82 @@ inline ::google::firestore::v1::Target_DocumentsTarget* Target::mutable_document return _msg; } +// .google.firestore.v1.Target.PipelineQueryTarget pipeline_query = 13; +inline bool Target::has_pipeline_query() const { + return target_type_case() == kPipelineQuery; +} +inline bool Target::_internal_has_pipeline_query() const { + return target_type_case() == kPipelineQuery; +} +inline void Target::set_has_pipeline_query() { + _impl_._oneof_case_[0] = kPipelineQuery; +} +inline void Target::clear_pipeline_query() { + PROTOBUF_TSAN_WRITE(&_impl_._tsan_detect_race); + if (target_type_case() == kPipelineQuery) { + if (GetArena() == nullptr) { + delete _impl_.target_type_.pipeline_query_; + } + clear_has_target_type(); + } +} +inline ::google::firestore::v1::Target_PipelineQueryTarget* Target::release_pipeline_query() { + // @@protoc_insertion_point(field_release:google.firestore.v1.Target.pipeline_query) + if (target_type_case() == kPipelineQuery) { + clear_has_target_type(); + auto* temp = _impl_.target_type_.pipeline_query_; + if (GetArena() != nullptr) { + temp = ::google::protobuf::internal::DuplicateIfNonNull(temp); + } + _impl_.target_type_.pipeline_query_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline const ::google::firestore::v1::Target_PipelineQueryTarget& Target::_internal_pipeline_query() const { + return target_type_case() == kPipelineQuery ? *_impl_.target_type_.pipeline_query_ : reinterpret_cast<::google::firestore::v1::Target_PipelineQueryTarget&>(::google::firestore::v1::_Target_PipelineQueryTarget_default_instance_); +} +inline const ::google::firestore::v1::Target_PipelineQueryTarget& Target::pipeline_query() const ABSL_ATTRIBUTE_LIFETIME_BOUND { + // @@protoc_insertion_point(field_get:google.firestore.v1.Target.pipeline_query) + return _internal_pipeline_query(); +} +inline ::google::firestore::v1::Target_PipelineQueryTarget* Target::unsafe_arena_release_pipeline_query() { + // @@protoc_insertion_point(field_unsafe_arena_release:google.firestore.v1.Target.pipeline_query) + if (target_type_case() == kPipelineQuery) { + clear_has_target_type(); + auto* temp = _impl_.target_type_.pipeline_query_; + _impl_.target_type_.pipeline_query_ = nullptr; + return temp; + } else { + return nullptr; + } +} +inline void Target::unsafe_arena_set_allocated_pipeline_query(::google::firestore::v1::Target_PipelineQueryTarget* value) { + // We rely on the oneof clear method to free the earlier contents + // of this oneof. We can directly use the pointer we're given to + // set the new value. + clear_target_type(); + if (value) { + set_has_pipeline_query(); + _impl_.target_type_.pipeline_query_ = value; + } + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.firestore.v1.Target.pipeline_query) +} +inline ::google::firestore::v1::Target_PipelineQueryTarget* Target::_internal_mutable_pipeline_query() { + if (target_type_case() != kPipelineQuery) { + clear_target_type(); + set_has_pipeline_query(); + _impl_.target_type_.pipeline_query_ = CreateMaybeMessage<::google::firestore::v1::Target_PipelineQueryTarget>(GetArena()); + } + return _impl_.target_type_.pipeline_query_; +} +inline ::google::firestore::v1::Target_PipelineQueryTarget* Target::mutable_pipeline_query() ABSL_ATTRIBUTE_LIFETIME_BOUND { + ::google::firestore::v1::Target_PipelineQueryTarget* _msg = _internal_mutable_pipeline_query(); + // @@protoc_insertion_point(field_mutable:google.firestore.v1.Target.pipeline_query) + return _msg; +} + // bytes resume_token = 4; inline bool Target::has_resume_token() const { return resume_type_case() == kResumeToken; diff --git a/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.cc b/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.cc index fabd2343097..84546fdeb46 100644 --- a/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.cc +++ b/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.cc @@ -231,11 +231,12 @@ const pb_field_t google_firestore_v1_ListenResponse_fields[6] = { PB_LAST_FIELD }; -const pb_field_t google_firestore_v1_Target_fields[8] = { +const pb_field_t google_firestore_v1_Target_fields[9] = { PB_ONEOF_FIELD(target_type, 2, MESSAGE , ONEOF, STATIC , FIRST, google_firestore_v1_Target, query, query, &google_firestore_v1_Target_QueryTarget_fields), PB_ONEOF_FIELD(target_type, 3, MESSAGE , ONEOF, STATIC , UNION, google_firestore_v1_Target, documents, documents, &google_firestore_v1_Target_DocumentsTarget_fields), - PB_ONEOF_FIELD(resume_type, 4, BYTES , ONEOF, POINTER , OTHER, google_firestore_v1_Target, resume_token, target_type.documents, 0), - PB_ONEOF_FIELD(resume_type, 11, MESSAGE , ONEOF, STATIC , UNION, google_firestore_v1_Target, read_time, target_type.documents, &google_protobuf_Timestamp_fields), + PB_ONEOF_FIELD(target_type, 13, MESSAGE , ONEOF, STATIC , UNION, google_firestore_v1_Target, pipeline_query, pipeline_query, &google_firestore_v1_Target_PipelineQueryTarget_fields), + PB_ONEOF_FIELD(resume_type, 4, BYTES , ONEOF, POINTER , OTHER, google_firestore_v1_Target, resume_token, target_type.pipeline_query, 0), + PB_ONEOF_FIELD(resume_type, 11, MESSAGE , ONEOF, STATIC , UNION, google_firestore_v1_Target, read_time, target_type.pipeline_query, &google_protobuf_Timestamp_fields), PB_FIELD( 5, INT32 , SINGULAR, STATIC , OTHER, google_firestore_v1_Target, target_id, resume_type.read_time, 0), PB_FIELD( 6, BOOL , SINGULAR, STATIC , OTHER, google_firestore_v1_Target, once, target_id, 0), PB_FIELD( 12, MESSAGE , OPTIONAL, STATIC , OTHER, google_firestore_v1_Target, expected_count, once, &google_protobuf_Int32Value_fields), @@ -253,6 +254,11 @@ const pb_field_t google_firestore_v1_Target_QueryTarget_fields[3] = { PB_LAST_FIELD }; +const pb_field_t google_firestore_v1_Target_PipelineQueryTarget_fields[2] = { + PB_ANONYMOUS_ONEOF_FIELD(pipeline_type, 1, MESSAGE , ONEOF, STATIC , FIRST, google_firestore_v1_Target_PipelineQueryTarget, structured_pipeline, structured_pipeline, &google_firestore_v1_StructuredPipeline_fields), + PB_LAST_FIELD +}; + const pb_field_t google_firestore_v1_TargetChange_fields[6] = { PB_FIELD( 1, UENUM , SINGULAR, STATIC , FIRST, google_firestore_v1_TargetChange, target_change_type, target_change_type, 0), PB_FIELD( 2, INT32 , REPEATED, POINTER , OTHER, google_firestore_v1_TargetChange, target_ids, target_change_type, 0), @@ -286,7 +292,7 @@ const pb_field_t google_firestore_v1_ListCollectionIdsResponse_fields[3] = { * numbers or field sizes that are larger than what can fit in 8 or 16 bit * field descriptors. */ -PB_STATIC_ASSERT((pb_membersize(google_firestore_v1_GetDocumentRequest, read_time) < 65536 && pb_membersize(google_firestore_v1_GetDocumentRequest, mask) < 65536 && pb_membersize(google_firestore_v1_ListDocumentsRequest, read_time) < 65536 && pb_membersize(google_firestore_v1_ListDocumentsRequest, mask) < 65536 && pb_membersize(google_firestore_v1_CreateDocumentRequest, document) < 65536 && pb_membersize(google_firestore_v1_CreateDocumentRequest, mask) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, document) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, update_mask) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, mask) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, current_document) < 65536 && pb_membersize(google_firestore_v1_DeleteDocumentRequest, current_document) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, new_transaction) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, read_time) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, mask) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, found) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, read_time) < 65536 && pb_membersize(google_firestore_v1_BeginTransactionRequest, options) < 65536 && pb_membersize(google_firestore_v1_CommitResponse, commit_time) < 65536 && pb_membersize(google_firestore_v1_RunQueryRequest, query_type.structured_query) < 65536 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.new_transaction) < 65536 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.read_time) < 65536 && pb_membersize(google_firestore_v1_RunQueryResponse, document) < 65536 && pb_membersize(google_firestore_v1_RunQueryResponse, read_time) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, pipeline_type.structured_pipeline) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.new_transaction) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.read_time) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, execution_time) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, explain_stats) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, query_type.structured_aggregation_query) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.new_transaction) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.read_time) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, result) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, read_time) < 65536 && pb_membersize(google_firestore_v1_WriteResponse, commit_time) < 65536 && pb_membersize(google_firestore_v1_ListenRequest, add_target) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, target_change) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, document_change) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, document_delete) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, filter) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, document_remove) < 65536 && pb_membersize(google_firestore_v1_Target, target_type.query) < 65536 && pb_membersize(google_firestore_v1_Target, target_type.documents) < 65536 && pb_membersize(google_firestore_v1_Target, resume_type.read_time) < 65536 && pb_membersize(google_firestore_v1_Target, expected_count) < 65536 && pb_membersize(google_firestore_v1_Target_QueryTarget, structured_query) < 65536 && pb_membersize(google_firestore_v1_TargetChange, cause) < 65536 && pb_membersize(google_firestore_v1_TargetChange, read_time) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_google_firestore_v1_GetDocumentRequest_google_firestore_v1_ListDocumentsRequest_google_firestore_v1_ListDocumentsResponse_google_firestore_v1_CreateDocumentRequest_google_firestore_v1_UpdateDocumentRequest_google_firestore_v1_DeleteDocumentRequest_google_firestore_v1_BatchGetDocumentsRequest_google_firestore_v1_BatchGetDocumentsResponse_google_firestore_v1_BeginTransactionRequest_google_firestore_v1_BeginTransactionResponse_google_firestore_v1_CommitRequest_google_firestore_v1_CommitResponse_google_firestore_v1_RollbackRequest_google_firestore_v1_RunQueryRequest_google_firestore_v1_RunQueryResponse_google_firestore_v1_ExecutePipelineRequest_google_firestore_v1_ExecutePipelineResponse_google_firestore_v1_RunAggregationQueryRequest_google_firestore_v1_RunAggregationQueryResponse_google_firestore_v1_WriteRequest_google_firestore_v1_WriteRequest_LabelsEntry_google_firestore_v1_WriteResponse_google_firestore_v1_ListenRequest_google_firestore_v1_ListenRequest_LabelsEntry_google_firestore_v1_ListenResponse_google_firestore_v1_Target_google_firestore_v1_Target_DocumentsTarget_google_firestore_v1_Target_QueryTarget_google_firestore_v1_TargetChange_google_firestore_v1_ListCollectionIdsRequest_google_firestore_v1_ListCollectionIdsResponse) +PB_STATIC_ASSERT((pb_membersize(google_firestore_v1_GetDocumentRequest, read_time) < 65536 && pb_membersize(google_firestore_v1_GetDocumentRequest, mask) < 65536 && pb_membersize(google_firestore_v1_ListDocumentsRequest, read_time) < 65536 && pb_membersize(google_firestore_v1_ListDocumentsRequest, mask) < 65536 && pb_membersize(google_firestore_v1_CreateDocumentRequest, document) < 65536 && pb_membersize(google_firestore_v1_CreateDocumentRequest, mask) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, document) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, update_mask) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, mask) < 65536 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, current_document) < 65536 && pb_membersize(google_firestore_v1_DeleteDocumentRequest, current_document) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, new_transaction) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, read_time) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, mask) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, found) < 65536 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, read_time) < 65536 && pb_membersize(google_firestore_v1_BeginTransactionRequest, options) < 65536 && pb_membersize(google_firestore_v1_CommitResponse, commit_time) < 65536 && pb_membersize(google_firestore_v1_RunQueryRequest, query_type.structured_query) < 65536 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.new_transaction) < 65536 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.read_time) < 65536 && pb_membersize(google_firestore_v1_RunQueryResponse, document) < 65536 && pb_membersize(google_firestore_v1_RunQueryResponse, read_time) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, pipeline_type.structured_pipeline) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.new_transaction) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.read_time) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, execution_time) < 65536 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, explain_stats) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, query_type.structured_aggregation_query) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.new_transaction) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.read_time) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, result) < 65536 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, read_time) < 65536 && pb_membersize(google_firestore_v1_WriteResponse, commit_time) < 65536 && pb_membersize(google_firestore_v1_ListenRequest, add_target) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, target_change) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, document_change) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, document_delete) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, filter) < 65536 && pb_membersize(google_firestore_v1_ListenResponse, document_remove) < 65536 && pb_membersize(google_firestore_v1_Target, target_type.query) < 65536 && pb_membersize(google_firestore_v1_Target, target_type.documents) < 65536 && pb_membersize(google_firestore_v1_Target, target_type.pipeline_query) < 65536 && pb_membersize(google_firestore_v1_Target, resume_type.read_time) < 65536 && pb_membersize(google_firestore_v1_Target, expected_count) < 65536 && pb_membersize(google_firestore_v1_Target_QueryTarget, structured_query) < 65536 && pb_membersize(google_firestore_v1_Target_PipelineQueryTarget, structured_pipeline) < 65536 && pb_membersize(google_firestore_v1_TargetChange, cause) < 65536 && pb_membersize(google_firestore_v1_TargetChange, read_time) < 65536), YOU_MUST_DEFINE_PB_FIELD_32BIT_FOR_MESSAGES_google_firestore_v1_GetDocumentRequest_google_firestore_v1_ListDocumentsRequest_google_firestore_v1_ListDocumentsResponse_google_firestore_v1_CreateDocumentRequest_google_firestore_v1_UpdateDocumentRequest_google_firestore_v1_DeleteDocumentRequest_google_firestore_v1_BatchGetDocumentsRequest_google_firestore_v1_BatchGetDocumentsResponse_google_firestore_v1_BeginTransactionRequest_google_firestore_v1_BeginTransactionResponse_google_firestore_v1_CommitRequest_google_firestore_v1_CommitResponse_google_firestore_v1_RollbackRequest_google_firestore_v1_RunQueryRequest_google_firestore_v1_RunQueryResponse_google_firestore_v1_ExecutePipelineRequest_google_firestore_v1_ExecutePipelineResponse_google_firestore_v1_RunAggregationQueryRequest_google_firestore_v1_RunAggregationQueryResponse_google_firestore_v1_WriteRequest_google_firestore_v1_WriteRequest_LabelsEntry_google_firestore_v1_WriteResponse_google_firestore_v1_ListenRequest_google_firestore_v1_ListenRequest_LabelsEntry_google_firestore_v1_ListenResponse_google_firestore_v1_Target_google_firestore_v1_Target_DocumentsTarget_google_firestore_v1_Target_QueryTarget_google_firestore_v1_Target_PipelineQueryTarget_google_firestore_v1_TargetChange_google_firestore_v1_ListCollectionIdsRequest_google_firestore_v1_ListCollectionIdsResponse) #endif #if !defined(PB_FIELD_16BIT) && !defined(PB_FIELD_32BIT) @@ -297,7 +303,7 @@ PB_STATIC_ASSERT((pb_membersize(google_firestore_v1_GetDocumentRequest, read_tim * numbers or field sizes that are larger than what can fit in the default * 8 bit descriptors. */ -PB_STATIC_ASSERT((pb_membersize(google_firestore_v1_GetDocumentRequest, read_time) < 256 && pb_membersize(google_firestore_v1_GetDocumentRequest, mask) < 256 && pb_membersize(google_firestore_v1_ListDocumentsRequest, read_time) < 256 && pb_membersize(google_firestore_v1_ListDocumentsRequest, mask) < 256 && pb_membersize(google_firestore_v1_CreateDocumentRequest, document) < 256 && pb_membersize(google_firestore_v1_CreateDocumentRequest, mask) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, document) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, update_mask) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, mask) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, current_document) < 256 && pb_membersize(google_firestore_v1_DeleteDocumentRequest, current_document) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, new_transaction) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, read_time) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, mask) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, found) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, read_time) < 256 && pb_membersize(google_firestore_v1_BeginTransactionRequest, options) < 256 && pb_membersize(google_firestore_v1_CommitResponse, commit_time) < 256 && pb_membersize(google_firestore_v1_RunQueryRequest, query_type.structured_query) < 256 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.new_transaction) < 256 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.read_time) < 256 && pb_membersize(google_firestore_v1_RunQueryResponse, document) < 256 && pb_membersize(google_firestore_v1_RunQueryResponse, read_time) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, pipeline_type.structured_pipeline) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.new_transaction) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.read_time) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, execution_time) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, explain_stats) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, query_type.structured_aggregation_query) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.new_transaction) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.read_time) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, result) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, read_time) < 256 && pb_membersize(google_firestore_v1_WriteResponse, commit_time) < 256 && pb_membersize(google_firestore_v1_ListenRequest, add_target) < 256 && pb_membersize(google_firestore_v1_ListenResponse, target_change) < 256 && pb_membersize(google_firestore_v1_ListenResponse, document_change) < 256 && pb_membersize(google_firestore_v1_ListenResponse, document_delete) < 256 && pb_membersize(google_firestore_v1_ListenResponse, filter) < 256 && pb_membersize(google_firestore_v1_ListenResponse, document_remove) < 256 && pb_membersize(google_firestore_v1_Target, target_type.query) < 256 && pb_membersize(google_firestore_v1_Target, target_type.documents) < 256 && pb_membersize(google_firestore_v1_Target, resume_type.read_time) < 256 && pb_membersize(google_firestore_v1_Target, expected_count) < 256 && pb_membersize(google_firestore_v1_Target_QueryTarget, structured_query) < 256 && pb_membersize(google_firestore_v1_TargetChange, cause) < 256 && pb_membersize(google_firestore_v1_TargetChange, read_time) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_google_firestore_v1_GetDocumentRequest_google_firestore_v1_ListDocumentsRequest_google_firestore_v1_ListDocumentsResponse_google_firestore_v1_CreateDocumentRequest_google_firestore_v1_UpdateDocumentRequest_google_firestore_v1_DeleteDocumentRequest_google_firestore_v1_BatchGetDocumentsRequest_google_firestore_v1_BatchGetDocumentsResponse_google_firestore_v1_BeginTransactionRequest_google_firestore_v1_BeginTransactionResponse_google_firestore_v1_CommitRequest_google_firestore_v1_CommitResponse_google_firestore_v1_RollbackRequest_google_firestore_v1_RunQueryRequest_google_firestore_v1_RunQueryResponse_google_firestore_v1_ExecutePipelineRequest_google_firestore_v1_ExecutePipelineResponse_google_firestore_v1_RunAggregationQueryRequest_google_firestore_v1_RunAggregationQueryResponse_google_firestore_v1_WriteRequest_google_firestore_v1_WriteRequest_LabelsEntry_google_firestore_v1_WriteResponse_google_firestore_v1_ListenRequest_google_firestore_v1_ListenRequest_LabelsEntry_google_firestore_v1_ListenResponse_google_firestore_v1_Target_google_firestore_v1_Target_DocumentsTarget_google_firestore_v1_Target_QueryTarget_google_firestore_v1_TargetChange_google_firestore_v1_ListCollectionIdsRequest_google_firestore_v1_ListCollectionIdsResponse) +PB_STATIC_ASSERT((pb_membersize(google_firestore_v1_GetDocumentRequest, read_time) < 256 && pb_membersize(google_firestore_v1_GetDocumentRequest, mask) < 256 && pb_membersize(google_firestore_v1_ListDocumentsRequest, read_time) < 256 && pb_membersize(google_firestore_v1_ListDocumentsRequest, mask) < 256 && pb_membersize(google_firestore_v1_CreateDocumentRequest, document) < 256 && pb_membersize(google_firestore_v1_CreateDocumentRequest, mask) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, document) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, update_mask) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, mask) < 256 && pb_membersize(google_firestore_v1_UpdateDocumentRequest, current_document) < 256 && pb_membersize(google_firestore_v1_DeleteDocumentRequest, current_document) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, new_transaction) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, read_time) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsRequest, mask) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, found) < 256 && pb_membersize(google_firestore_v1_BatchGetDocumentsResponse, read_time) < 256 && pb_membersize(google_firestore_v1_BeginTransactionRequest, options) < 256 && pb_membersize(google_firestore_v1_CommitResponse, commit_time) < 256 && pb_membersize(google_firestore_v1_RunQueryRequest, query_type.structured_query) < 256 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.new_transaction) < 256 && pb_membersize(google_firestore_v1_RunQueryRequest, consistency_selector.read_time) < 256 && pb_membersize(google_firestore_v1_RunQueryResponse, document) < 256 && pb_membersize(google_firestore_v1_RunQueryResponse, read_time) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, pipeline_type.structured_pipeline) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.new_transaction) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineRequest, consistency_selector.read_time) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, execution_time) < 256 && pb_membersize(google_firestore_v1_ExecutePipelineResponse, explain_stats) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, query_type.structured_aggregation_query) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.new_transaction) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryRequest, consistency_selector.read_time) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, result) < 256 && pb_membersize(google_firestore_v1_RunAggregationQueryResponse, read_time) < 256 && pb_membersize(google_firestore_v1_WriteResponse, commit_time) < 256 && pb_membersize(google_firestore_v1_ListenRequest, add_target) < 256 && pb_membersize(google_firestore_v1_ListenResponse, target_change) < 256 && pb_membersize(google_firestore_v1_ListenResponse, document_change) < 256 && pb_membersize(google_firestore_v1_ListenResponse, document_delete) < 256 && pb_membersize(google_firestore_v1_ListenResponse, filter) < 256 && pb_membersize(google_firestore_v1_ListenResponse, document_remove) < 256 && pb_membersize(google_firestore_v1_Target, target_type.query) < 256 && pb_membersize(google_firestore_v1_Target, target_type.documents) < 256 && pb_membersize(google_firestore_v1_Target, target_type.pipeline_query) < 256 && pb_membersize(google_firestore_v1_Target, resume_type.read_time) < 256 && pb_membersize(google_firestore_v1_Target, expected_count) < 256 && pb_membersize(google_firestore_v1_Target_QueryTarget, structured_query) < 256 && pb_membersize(google_firestore_v1_Target_PipelineQueryTarget, structured_pipeline) < 256 && pb_membersize(google_firestore_v1_TargetChange, cause) < 256 && pb_membersize(google_firestore_v1_TargetChange, read_time) < 256), YOU_MUST_DEFINE_PB_FIELD_16BIT_FOR_MESSAGES_google_firestore_v1_GetDocumentRequest_google_firestore_v1_ListDocumentsRequest_google_firestore_v1_ListDocumentsResponse_google_firestore_v1_CreateDocumentRequest_google_firestore_v1_UpdateDocumentRequest_google_firestore_v1_DeleteDocumentRequest_google_firestore_v1_BatchGetDocumentsRequest_google_firestore_v1_BatchGetDocumentsResponse_google_firestore_v1_BeginTransactionRequest_google_firestore_v1_BeginTransactionResponse_google_firestore_v1_CommitRequest_google_firestore_v1_CommitResponse_google_firestore_v1_RollbackRequest_google_firestore_v1_RunQueryRequest_google_firestore_v1_RunQueryResponse_google_firestore_v1_ExecutePipelineRequest_google_firestore_v1_ExecutePipelineResponse_google_firestore_v1_RunAggregationQueryRequest_google_firestore_v1_RunAggregationQueryResponse_google_firestore_v1_WriteRequest_google_firestore_v1_WriteRequest_LabelsEntry_google_firestore_v1_WriteResponse_google_firestore_v1_ListenRequest_google_firestore_v1_ListenRequest_LabelsEntry_google_firestore_v1_ListenResponse_google_firestore_v1_Target_google_firestore_v1_Target_DocumentsTarget_google_firestore_v1_Target_QueryTarget_google_firestore_v1_Target_PipelineQueryTarget_google_firestore_v1_TargetChange_google_firestore_v1_ListCollectionIdsRequest_google_firestore_v1_ListCollectionIdsResponse) #endif @@ -892,6 +898,10 @@ std::string google_firestore_v1_Target::ToString(int indent) const { tostring_result += PrintMessageField("documents ", target_type.documents, indent + 1, true); break; + case google_firestore_v1_Target_pipeline_query_tag: + tostring_result += PrintMessageField("pipeline_query ", + target_type.pipeline_query, indent + 1, true); + break; } switch (which_resume_type) { case google_firestore_v1_Target_resume_token_tag: @@ -955,6 +965,26 @@ std::string google_firestore_v1_Target_QueryTarget::ToString(int indent) const { } } +std::string google_firestore_v1_Target_PipelineQueryTarget::ToString(int indent) const { + std::string tostring_header = PrintHeader(indent, "PipelineQueryTarget", this); + std::string tostring_result; + + switch (which_pipeline_type) { + case google_firestore_v1_Target_PipelineQueryTarget_structured_pipeline_tag: + tostring_result += PrintMessageField("structured_pipeline ", + structured_pipeline, indent + 1, true); + break; + } + + bool is_root = indent == 0; + if (!tostring_result.empty() || is_root) { + std::string tostring_tail = PrintTail(indent); + return tostring_header + tostring_result + tostring_tail; + } else { + return ""; + } +} + std::string google_firestore_v1_TargetChange::ToString(int indent) const { std::string tostring_header = PrintHeader(indent, "TargetChange", this); std::string tostring_result; diff --git a/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.h b/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.h index a6d32a0862d..6ecab7ee354 100644 --- a/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.h +++ b/Firestore/Protos/nanopb/google/firestore/v1/firestore.nanopb.h @@ -350,6 +350,16 @@ typedef struct _google_firestore_v1_TargetChange { /* @@protoc_insertion_point(struct:google_firestore_v1_TargetChange) */ } google_firestore_v1_TargetChange; +typedef struct _google_firestore_v1_Target_PipelineQueryTarget { + pb_size_t which_pipeline_type; + union { + google_firestore_v1_StructuredPipeline structured_pipeline; + }; + + std::string ToString(int indent = 0) const; +/* @@protoc_insertion_point(struct:google_firestore_v1_Target_PipelineQueryTarget) */ +} google_firestore_v1_Target_PipelineQueryTarget; + typedef struct _google_firestore_v1_Target_QueryTarget { pb_bytes_array_t *parent; pb_size_t which_query_type; @@ -401,6 +411,7 @@ typedef struct _google_firestore_v1_Target { union { google_firestore_v1_Target_QueryTarget query; google_firestore_v1_Target_DocumentsTarget documents; + google_firestore_v1_Target_PipelineQueryTarget pipeline_query; } target_type; pb_size_t which_resume_type; union { @@ -461,6 +472,7 @@ typedef struct _google_firestore_v1_ListenRequest { #define google_firestore_v1_Target_init_default {0, {google_firestore_v1_Target_QueryTarget_init_default}, 0, {NULL}, 0, 0, false, google_protobuf_Int32Value_init_default} #define google_firestore_v1_Target_DocumentsTarget_init_default {0, NULL} #define google_firestore_v1_Target_QueryTarget_init_default {NULL, 0, {google_firestore_v1_StructuredQuery_init_default}} +#define google_firestore_v1_Target_PipelineQueryTarget_init_default {0, {google_firestore_v1_StructuredPipeline_init_default}} #define google_firestore_v1_TargetChange_init_default {_google_firestore_v1_TargetChange_TargetChangeType_MIN, 0, NULL, false, google_rpc_Status_init_default, NULL, google_protobuf_Timestamp_init_default} #define google_firestore_v1_ListCollectionIdsRequest_init_default {NULL, 0, NULL} #define google_firestore_v1_ListCollectionIdsResponse_init_default {0, NULL, NULL} @@ -492,6 +504,7 @@ typedef struct _google_firestore_v1_ListenRequest { #define google_firestore_v1_Target_init_zero {0, {google_firestore_v1_Target_QueryTarget_init_zero}, 0, {NULL}, 0, 0, false, google_protobuf_Int32Value_init_zero} #define google_firestore_v1_Target_DocumentsTarget_init_zero {0, NULL} #define google_firestore_v1_Target_QueryTarget_init_zero {NULL, 0, {google_firestore_v1_StructuredQuery_init_zero}} +#define google_firestore_v1_Target_PipelineQueryTarget_init_zero {0, {google_firestore_v1_StructuredPipeline_init_zero}} #define google_firestore_v1_TargetChange_init_zero {_google_firestore_v1_TargetChange_TargetChangeType_MIN, 0, NULL, false, google_rpc_Status_init_zero, NULL, google_protobuf_Timestamp_init_zero} #define google_firestore_v1_ListCollectionIdsRequest_init_zero {NULL, 0, NULL} #define google_firestore_v1_ListCollectionIdsResponse_init_zero {0, NULL, NULL} @@ -585,6 +598,7 @@ typedef struct _google_firestore_v1_ListenRequest { #define google_firestore_v1_TargetChange_cause_tag 3 #define google_firestore_v1_TargetChange_resume_token_tag 4 #define google_firestore_v1_TargetChange_read_time_tag 6 +#define google_firestore_v1_Target_PipelineQueryTarget_structured_pipeline_tag 1 #define google_firestore_v1_Target_QueryTarget_structured_query_tag 2 #define google_firestore_v1_Target_QueryTarget_parent_tag 1 #define google_firestore_v1_UpdateDocumentRequest_document_tag 1 @@ -602,6 +616,7 @@ typedef struct _google_firestore_v1_ListenRequest { #define google_firestore_v1_ListenResponse_document_remove_tag 6 #define google_firestore_v1_Target_query_tag 2 #define google_firestore_v1_Target_documents_tag 3 +#define google_firestore_v1_Target_pipeline_query_tag 13 #define google_firestore_v1_Target_resume_token_tag 4 #define google_firestore_v1_Target_read_time_tag 11 #define google_firestore_v1_Target_target_id_tag 5 @@ -638,9 +653,10 @@ extern const pb_field_t google_firestore_v1_WriteResponse_fields[5]; extern const pb_field_t google_firestore_v1_ListenRequest_fields[5]; extern const pb_field_t google_firestore_v1_ListenRequest_LabelsEntry_fields[3]; extern const pb_field_t google_firestore_v1_ListenResponse_fields[6]; -extern const pb_field_t google_firestore_v1_Target_fields[8]; +extern const pb_field_t google_firestore_v1_Target_fields[9]; extern const pb_field_t google_firestore_v1_Target_DocumentsTarget_fields[2]; extern const pb_field_t google_firestore_v1_Target_QueryTarget_fields[3]; +extern const pb_field_t google_firestore_v1_Target_PipelineQueryTarget_fields[2]; extern const pb_field_t google_firestore_v1_TargetChange_fields[6]; extern const pb_field_t google_firestore_v1_ListCollectionIdsRequest_fields[4]; extern const pb_field_t google_firestore_v1_ListCollectionIdsResponse_fields[3]; @@ -674,6 +690,7 @@ extern const pb_field_t google_firestore_v1_ListCollectionIdsResponse_fields[3]; /* google_firestore_v1_Target_size depends on runtime parameters */ /* google_firestore_v1_Target_DocumentsTarget_size depends on runtime parameters */ /* google_firestore_v1_Target_QueryTarget_size depends on runtime parameters */ +#define google_firestore_v1_Target_PipelineQueryTarget_size (5 + google_firestore_v1_StructuredPipeline_size) /* google_firestore_v1_TargetChange_size depends on runtime parameters */ /* google_firestore_v1_ListCollectionIdsRequest_size depends on runtime parameters */ /* google_firestore_v1_ListCollectionIdsResponse_size depends on runtime parameters */ diff --git a/Firestore/Protos/protos/google/firestore/v1/firestore.proto b/Firestore/Protos/protos/google/firestore/v1/firestore.proto index ebcb1249773..82523d254c1 100644 --- a/Firestore/Protos/protos/google/firestore/v1/firestore.proto +++ b/Firestore/Protos/protos/google/firestore/v1/firestore.proto @@ -797,6 +797,15 @@ message Target { } } + // A target specified by a pipeline query. + message PipelineQueryTarget { + // The pipeline to run. + oneof pipeline_type { + // A pipelined operation in structured format. + StructuredPipeline structured_pipeline = 1; + } + } + // The type of target to listen to. oneof target_type { // A target specified by a query. @@ -804,6 +813,9 @@ message Target { // A target specified by a set of document names. DocumentsTarget documents = 3; + + // A target specified by a pipeline query. + PipelineQueryTarget pipeline_query = 13; } // When to start listening. diff --git a/Firestore/Protos/protos/google/firestore/v1/write.proto b/Firestore/Protos/protos/google/firestore/v1/write.proto index 9fe53f7bdd1..72018e23301 100644 --- a/Firestore/Protos/protos/google/firestore/v1/write.proto +++ b/Firestore/Protos/protos/google/firestore/v1/write.proto @@ -197,6 +197,12 @@ message WriteResult { // // Multiple [DocumentChange][google.firestore.v1.DocumentChange] messages may be returned for the same logical // change, if multiple targets are affected. +// +// For PipelineQueryTargets, `document` will be in the new pipeline format, +// (-- TODO(b/330735468): Insert link to spec. --) +// For a Listen stream with both QueryTargets and PipelineQueryTargets present, +// if a document matches both types of queries, then a separate DocumentChange +// messages will be sent out one for each set. message DocumentChange { // The new state of the [Document][google.firestore.v1.Document]. //