From bf0629e5a7ee927537b30c23cc82fe1102ad71f7 Mon Sep 17 00:00:00 2001 From: Yoshi Automation Bot Date: Sun, 21 Dec 2025 09:30:58 +0000 Subject: [PATCH] feat: Automated regeneration of firestore v1 client --- api_names_out.yaml | 38 +++ .../google-apis-firestore_v1/CHANGELOG.md | 4 + .../lib/google/apis/firestore_v1/classes.rb | 265 +++++++++++++++++- .../google/apis/firestore_v1/gem_version.rb | 4 +- .../apis/firestore_v1/representations.rb | 118 ++++++++ .../lib/google/apis/firestore_v1/service.rb | 34 +++ 6 files changed, 460 insertions(+), 3 deletions(-) diff --git a/api_names_out.yaml b/api_names_out.yaml index a0423db1883..3baeb9e7cd4 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -263488,6 +263488,17 @@ "/firestore:v1/DocumentsTarget/documents": documents "/firestore:v1/DocumentsTarget/documents/document": document "/firestore:v1/Empty": empty +"/firestore:v1/ExecutePipelineRequest": execute_pipeline_request +"/firestore:v1/ExecutePipelineRequest/newTransaction": new_transaction +"/firestore:v1/ExecutePipelineRequest/readTime": read_time +"/firestore:v1/ExecutePipelineRequest/structuredPipeline": structured_pipeline +"/firestore:v1/ExecutePipelineRequest/transaction": transaction +"/firestore:v1/ExecutePipelineResponse": execute_pipeline_response +"/firestore:v1/ExecutePipelineResponse/executionTime": execution_time +"/firestore:v1/ExecutePipelineResponse/explainStats": explain_stats +"/firestore:v1/ExecutePipelineResponse/results": results +"/firestore:v1/ExecutePipelineResponse/results/result": result +"/firestore:v1/ExecutePipelineResponse/transaction": transaction "/firestore:v1/ExecutionStats": execution_stats "/firestore:v1/ExecutionStats/debugStats": debug_stats "/firestore:v1/ExecutionStats/debugStats/debug_stat": debug_stat @@ -263503,6 +263514,9 @@ "/firestore:v1/ExplainMetrics/planSummary": plan_summary "/firestore:v1/ExplainOptions": explain_options "/firestore:v1/ExplainOptions/analyze": analyze +"/firestore:v1/ExplainStats": explain_stats +"/firestore:v1/ExplainStats/data": data +"/firestore:v1/ExplainStats/data/datum": datum "/firestore:v1/FieldFilter": field_filter "/firestore:v1/FieldFilter/field": field "/firestore:v1/FieldFilter/op": op @@ -263528,6 +263542,12 @@ "/firestore:v1/FindNearest/limit": limit "/firestore:v1/FindNearest/queryVector": query_vector "/firestore:v1/FindNearest/vectorField": vector_field +"/firestore:v1/Function": function +"/firestore:v1/Function/args": args +"/firestore:v1/Function/args/arg": arg +"/firestore:v1/Function/name": name +"/firestore:v1/Function/options": options +"/firestore:v1/Function/options/option": option "/firestore:v1/GoogleFirestoreAdminV1Backup": google_firestore_admin_v1_backup "/firestore:v1/GoogleFirestoreAdminV1Backup/database": database "/firestore:v1/GoogleFirestoreAdminV1Backup/databaseUid": database_uid @@ -263852,6 +263872,9 @@ "/firestore:v1/PartitionQueryResponse/nextPageToken": next_page_token "/firestore:v1/PartitionQueryResponse/partitions": partitions "/firestore:v1/PartitionQueryResponse/partitions/partition": partition +"/firestore:v1/Pipeline": pipeline +"/firestore:v1/Pipeline/stages": stages +"/firestore:v1/Pipeline/stages/stage": stage "/firestore:v1/PlanSummary": plan_summary "/firestore:v1/PlanSummary/indexesUsed": indexes_used "/firestore:v1/PlanSummary/indexesUsed/indexes_used": indexes_used @@ -263906,6 +263929,12 @@ "/firestore:v1/RunQueryResponse/skippedResults": skipped_results "/firestore:v1/RunQueryResponse/stats": stats "/firestore:v1/RunQueryResponse/transaction": transaction +"/firestore:v1/Stage": stage +"/firestore:v1/Stage/args": args +"/firestore:v1/Stage/args/arg": arg +"/firestore:v1/Stage/name": name +"/firestore:v1/Stage/options": options +"/firestore:v1/Stage/options/option": option "/firestore:v1/Status": status "/firestore:v1/Status/code": code "/firestore:v1/Status/details": details @@ -263916,6 +263945,10 @@ "/firestore:v1/StructuredAggregationQuery/aggregations": aggregations "/firestore:v1/StructuredAggregationQuery/aggregations/aggregation": aggregation "/firestore:v1/StructuredAggregationQuery/structuredQuery": structured_query +"/firestore:v1/StructuredPipeline": structured_pipeline +"/firestore:v1/StructuredPipeline/options": options +"/firestore:v1/StructuredPipeline/options/option": option +"/firestore:v1/StructuredPipeline/pipeline": pipeline "/firestore:v1/StructuredQuery": structured_query "/firestore:v1/StructuredQuery/endAt": end_at "/firestore:v1/StructuredQuery/findNearest": find_nearest @@ -263961,10 +263994,13 @@ "/firestore:v1/Value/booleanValue": boolean_value "/firestore:v1/Value/bytesValue": bytes_value "/firestore:v1/Value/doubleValue": double_value +"/firestore:v1/Value/fieldReferenceValue": field_reference_value +"/firestore:v1/Value/functionValue": function_value "/firestore:v1/Value/geoPointValue": geo_point_value "/firestore:v1/Value/integerValue": integer_value "/firestore:v1/Value/mapValue": map_value "/firestore:v1/Value/nullValue": null_value +"/firestore:v1/Value/pipelineValue": pipeline_value "/firestore:v1/Value/referenceValue": reference_value "/firestore:v1/Value/stringValue": string_value "/firestore:v1/Value/timestampValue": timestamp_value @@ -264057,6 +264093,8 @@ "/firestore:v1/firestore.projects.databases.documents.delete/currentDocument.exists": current_document_exists "/firestore:v1/firestore.projects.databases.documents.delete/currentDocument.updateTime": current_document_update_time "/firestore:v1/firestore.projects.databases.documents.delete/name": name +"/firestore:v1/firestore.projects.databases.documents.executePipeline": execute_document_pipeline +"/firestore:v1/firestore.projects.databases.documents.executePipeline/database": database "/firestore:v1/firestore.projects.databases.documents.get": get_project_database_document "/firestore:v1/firestore.projects.databases.documents.get/mask.fieldPaths": mask_field_paths "/firestore:v1/firestore.projects.databases.documents.get/name": name diff --git a/generated/google-apis-firestore_v1/CHANGELOG.md b/generated/google-apis-firestore_v1/CHANGELOG.md index 1156ec8a358..b9e85a77c9e 100644 --- a/generated/google-apis-firestore_v1/CHANGELOG.md +++ b/generated/google-apis-firestore_v1/CHANGELOG.md @@ -1,5 +1,9 @@ # Release history for google-apis-firestore_v1 +### v0.87.0 (2025-12-21) + +* Regenerated from discovery document revision 20251216 + ### v0.86.0 (2025-12-14) * Regenerated from discovery document revision 20251203 diff --git a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/classes.rb b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/classes.rb index be0c57fc0ac..ac96fd1f75e 100644 --- a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/classes.rb +++ b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/classes.rb @@ -826,6 +826,104 @@ def update!(**args) end end + # The request for Firestore.ExecutePipeline. + class ExecutePipelineRequest + include Google::Apis::Core::Hashable + + # Options for creating a new transaction. + # Corresponds to the JSON property `newTransaction` + # @return [Google::Apis::FirestoreV1::TransactionOptions] + attr_accessor :new_transaction + + # Execute the pipeline in a snapshot transaction at the given time. This must be + # a microsecond precision timestamp within the past one hour, or if Point-in- + # Time Recovery is enabled, can additionally be a whole minute timestamp within + # the past 7 days. + # Corresponds to the JSON property `readTime` + # @return [String] + attr_accessor :read_time + + # A Firestore query represented as an ordered list of operations / stages. This + # is considered the top-level function which plans and executes a query. It is + # logically equivalent to `query(stages, options)`, but prevents the client from + # having to build a function wrapper. + # Corresponds to the JSON property `structuredPipeline` + # @return [Google::Apis::FirestoreV1::StructuredPipeline] + attr_accessor :structured_pipeline + + # Run the query within an already active transaction. The value here is the + # opaque transaction ID to execute the query in. + # Corresponds to the JSON property `transaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @new_transaction = args[:new_transaction] if args.key?(:new_transaction) + @read_time = args[:read_time] if args.key?(:read_time) + @structured_pipeline = args[:structured_pipeline] if args.key?(:structured_pipeline) + @transaction = args[:transaction] if args.key?(:transaction) + end + end + + # The response for Firestore.Execute. + class ExecutePipelineResponse + include Google::Apis::Core::Hashable + + # The time at which the results are valid. This is a (not strictly) + # monotonically increasing value across multiple responses in the same stream. + # The API guarantees that all previously returned results are still valid at the + # latest `execution_time`. This allows the API consumer to treat the query if it + # ran at the latest `execution_time` returned. If the query returns no results, + # a response with `execution_time` and no `results` will be sent, and this + # represents the time at which the operation was run. + # Corresponds to the JSON property `executionTime` + # @return [String] + attr_accessor :execution_time + + # Pipeline explain stats. Depending on the explain options in the original + # request, this can contain the optimized plan and / or execution stats. + # Corresponds to the JSON property `explainStats` + # @return [Google::Apis::FirestoreV1::ExplainStats] + attr_accessor :explain_stats + + # An ordered batch of results returned executing a pipeline. The batch size is + # variable, and can even be zero for when only a partial progress message is + # returned. The fields present in the returned documents are only those that + # were explicitly requested in the pipeline, this includes those like `__name__` + # and `__update_time__`. This is explicitly a divergence from `Firestore. + # RunQuery` / `Firestore.GetDocument` RPCs which always return such fields even + # when they are not specified in the `mask`. + # Corresponds to the JSON property `results` + # @return [Array] + attr_accessor :results + + # Newly created transaction identifier. This field is only specified as part of + # the first response from the server, alongside the `results` field when the + # original request specified ExecuteRequest.new_transaction. + # Corresponds to the JSON property `transaction` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :transaction + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @execution_time = args[:execution_time] if args.key?(:execution_time) + @explain_stats = args[:explain_stats] if args.key?(:explain_stats) + @results = args[:results] if args.key?(:results) + @transaction = args[:transaction] if args.key?(:transaction) + end + end + # Execution statistics for the query. class ExecutionStats include Google::Apis::Core::Hashable @@ -959,6 +1057,28 @@ def update!(**args) end end + # Pipeline explain stats. Depending on the explain options in the original + # request, this can contain the optimized plan and / or execution stats. + class ExplainStats + include Google::Apis::Core::Hashable + + # The format depends on the `output_format` options in the request. Currently + # there are two supported options: `TEXT` and `JSON`. Both supply a `google. + # protobuf.StringValue`. + # Corresponds to the JSON property `data` + # @return [Hash] + attr_accessor :data + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + end + end + # A filter on a specific field. class FieldFilter include Google::Apis::Core::Hashable @@ -1156,6 +1276,40 @@ def update!(**args) end end + # Represents an unevaluated scalar expression. For example, the expression `like( + # user_name, "%alice%")` is represented as: ``` name: "like" args ` + # field_reference: "user_name" ` args ` string_value: "%alice%" ` ``` + class Function + include Google::Apis::Core::Hashable + + # Optional. Ordered list of arguments the given function expects. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # Required. The name of the function to evaluate. **Requires:** * must be in + # snake case (lower case with underscore separator). + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional. Optional named arguments that certain functions may support. + # Corresponds to the JSON property `options` + # @return [Hash] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @args = args[:args] if args.key?(:args) + @name = args[:name] if args.key?(:name) + @options = args[:options] if args.key?(:options) + end + end + # A Backup of a Cloud Firestore Database. The backup contains all documents and # index configurations for the given database at a specific point in time. class GoogleFirestoreAdminV1Backup @@ -1602,7 +1756,9 @@ class GoogleFirestoreAdminV1Database # @return [Google::Apis::FirestoreV1::GoogleFirestoreAdminV1CmekConfig] attr_accessor :cmek_config - # The concurrency control mode to use for this database. + # The concurrency control mode to use for this database. If unspecified in a + # CreateDatabase request, this will default based on the database edition: + # Optimistic for Enterprise and Pessimistic for all other databases. # Corresponds to the JSON property `concurrencyMode` # @return [String] attr_accessor :concurrency_mode @@ -3620,6 +3776,25 @@ def update!(**args) end end + # A Firestore query represented as an ordered list of operations / stages. + class Pipeline + include Google::Apis::Core::Hashable + + # Required. Ordered list of stages to evaluate. + # Corresponds to the JSON property `stages` + # @return [Array] + attr_accessor :stages + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @stages = args[:stages] if args.key?(:stages) + end + end + # Planning phase information for the query. class PlanSummary include Google::Apis::Core::Hashable @@ -3983,6 +4158,43 @@ def update!(**args) end end + # A single operation within a pipeline. A stage is made up of a unique name, and + # a list of arguments. The exact number of arguments & types is dependent on the + # stage type. To give an example, the stage `filter(state = "MD")` would be + # encoded as: ``` name: "filter" args ` function_value ` name: "eq" args ` + # field_reference_value: "state" ` args ` string_value: "MD" ` ` ` ``` See + # public documentation for the full list. + class Stage + include Google::Apis::Core::Hashable + + # Optional. Ordered list of arguments the given stage expects. + # Corresponds to the JSON property `args` + # @return [Array] + attr_accessor :args + + # Required. The name of the stage to evaluate. **Requires:** * must be in snake + # case (lower case with underscore separator). + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional. Optional named arguments that certain functions may support. + # Corresponds to the JSON property `options` + # @return [Hash] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @args = args[:args] if args.key?(:args) + @name = args[:name] if args.key?(:name) + @options = args[:options] if args.key?(:options) + end + end + # The `Status` type defines a logical error model that is suitable for different # programming environments, including REST APIs and RPC APIs. It is used by [ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of @@ -4051,6 +4263,34 @@ def update!(**args) end end + # A Firestore query represented as an ordered list of operations / stages. This + # is considered the top-level function which plans and executes a query. It is + # logically equivalent to `query(stages, options)`, but prevents the client from + # having to build a function wrapper. + class StructuredPipeline + include Google::Apis::Core::Hashable + + # Optional. Optional query-level arguments. + # Corresponds to the JSON property `options` + # @return [Hash] + attr_accessor :options + + # A Firestore query represented as an ordered list of operations / stages. + # Corresponds to the JSON property `pipeline` + # @return [Google::Apis::FirestoreV1::Pipeline] + attr_accessor :pipeline + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @options = args[:options] if args.key?(:options) + @pipeline = args[:pipeline] if args.key?(:pipeline) + end + end + # A Firestore query. The query stages are executed in the following order: 1. # from 2. where 3. select 4. order_by + start_at + end_at 5. offset 6. limit 7. # find_nearest @@ -4379,6 +4619,21 @@ class Value # @return [Float] attr_accessor :double_value + # Value which references a field. This is considered relative (vs absolute) + # since it only refers to a field and not a field within a particular document. * + # *Requires:** * Must follow field reference limitations. * Not allowed to be + # used when writing documents. + # Corresponds to the JSON property `fieldReferenceValue` + # @return [String] + attr_accessor :field_reference_value + + # Represents an unevaluated scalar expression. For example, the expression `like( + # user_name, "%alice%")` is represented as: ``` name: "like" args ` + # field_reference: "user_name" ` args ` string_value: "%alice%" ` ``` + # Corresponds to the JSON property `functionValue` + # @return [Google::Apis::FirestoreV1::Function] + attr_accessor :function_value + # An object that represents a latitude/longitude pair. This is expressed as a # pair of doubles to represent degrees latitude and degrees longitude. Unless # specified otherwise, this object must conform to the WGS84 standard. Values @@ -4402,6 +4657,11 @@ class Value # @return [String] attr_accessor :null_value + # A Firestore query represented as an ordered list of operations / stages. + # Corresponds to the JSON property `pipelineValue` + # @return [Google::Apis::FirestoreV1::Pipeline] + attr_accessor :pipeline_value + # A reference to a document. For example: `projects/`project_id`/databases/` # database_id`/documents/`document_path``. # Corresponds to the JSON property `referenceValue` @@ -4431,10 +4691,13 @@ def update!(**args) @boolean_value = args[:boolean_value] if args.key?(:boolean_value) @bytes_value = args[:bytes_value] if args.key?(:bytes_value) @double_value = args[:double_value] if args.key?(:double_value) + @field_reference_value = args[:field_reference_value] if args.key?(:field_reference_value) + @function_value = args[:function_value] if args.key?(:function_value) @geo_point_value = args[:geo_point_value] if args.key?(:geo_point_value) @integer_value = args[:integer_value] if args.key?(:integer_value) @map_value = args[:map_value] if args.key?(:map_value) @null_value = args[:null_value] if args.key?(:null_value) + @pipeline_value = args[:pipeline_value] if args.key?(:pipeline_value) @reference_value = args[:reference_value] if args.key?(:reference_value) @string_value = args[:string_value] if args.key?(:string_value) @timestamp_value = args[:timestamp_value] if args.key?(:timestamp_value) diff --git a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/gem_version.rb b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/gem_version.rb index 8be2521ceca..80715d4ba32 100644 --- a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/gem_version.rb +++ b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/gem_version.rb @@ -16,13 +16,13 @@ module Google module Apis module FirestoreV1 # Version of the google-apis-firestore_v1 gem - GEM_VERSION = "0.86.0" + GEM_VERSION = "0.87.0" # Version of the code generator used to generate this client GENERATOR_VERSION = "0.18.0" # Revision of the discovery document this client was generated from - REVISION = "20251203" + REVISION = "20251216" end end end diff --git a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/representations.rb b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/representations.rb index 3acf2a696e4..9531649cce5 100644 --- a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/representations.rb +++ b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/representations.rb @@ -178,6 +178,18 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class ExecutePipelineRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ExecutePipelineResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ExecutionStats class Representation < Google::Apis::Core::JsonRepresentation; end @@ -202,6 +214,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class ExplainStats + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class FieldFilter class Representation < Google::Apis::Core::JsonRepresentation; end @@ -232,6 +250,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Function + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GoogleFirestoreAdminV1Backup class Representation < Google::Apis::Core::JsonRepresentation; end @@ -634,6 +658,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Pipeline + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class PlanSummary class Representation < Google::Apis::Core::JsonRepresentation; end @@ -700,6 +730,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Stage + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Status class Representation < Google::Apis::Core::JsonRepresentation; end @@ -712,6 +748,12 @@ class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class StructuredPipeline + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class StructuredQuery class Representation < Google::Apis::Core::JsonRepresentation; end @@ -1009,6 +1051,30 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class ExecutePipelineRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_transaction, as: 'newTransaction', class: Google::Apis::FirestoreV1::TransactionOptions, decorator: Google::Apis::FirestoreV1::TransactionOptions::Representation + + property :read_time, as: 'readTime' + property :structured_pipeline, as: 'structuredPipeline', class: Google::Apis::FirestoreV1::StructuredPipeline, decorator: Google::Apis::FirestoreV1::StructuredPipeline::Representation + + property :transaction, :base64 => true, as: 'transaction' + end + end + + class ExecutePipelineResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :execution_time, as: 'executionTime' + property :explain_stats, as: 'explainStats', class: Google::Apis::FirestoreV1::ExplainStats, decorator: Google::Apis::FirestoreV1::ExplainStats::Representation + + collection :results, as: 'results', class: Google::Apis::FirestoreV1::Document, decorator: Google::Apis::FirestoreV1::Document::Representation + + property :transaction, :base64 => true, as: 'transaction' + end + end + class ExecutionStats # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1046,6 +1112,13 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class ExplainStats + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :data, as: 'data' + end + end + class FieldFilter # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1108,6 +1181,17 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class Function + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :args, as: 'args', class: Google::Apis::FirestoreV1::Value, decorator: Google::Apis::FirestoreV1::Value::Representation + + property :name, as: 'name' + hash :options, as: 'options', class: Google::Apis::FirestoreV1::Value, decorator: Google::Apis::FirestoreV1::Value::Representation + + end + end + class GoogleFirestoreAdminV1Backup # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1774,6 +1858,14 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class Pipeline + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :stages, as: 'stages', class: Google::Apis::FirestoreV1::Stage, decorator: Google::Apis::FirestoreV1::Stage::Representation + + end + end + class PlanSummary # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1881,6 +1973,17 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class Stage + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :args, as: 'args', class: Google::Apis::FirestoreV1::Value, decorator: Google::Apis::FirestoreV1::Value::Representation + + property :name, as: 'name' + hash :options, as: 'options', class: Google::Apis::FirestoreV1::Value, decorator: Google::Apis::FirestoreV1::Value::Representation + + end + end + class Status # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1900,6 +2003,16 @@ class Representation < Google::Apis::Core::JsonRepresentation end end + class StructuredPipeline + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :options, as: 'options', class: Google::Apis::FirestoreV1::Value, decorator: Google::Apis::FirestoreV1::Value::Representation + + property :pipeline, as: 'pipeline', class: Google::Apis::FirestoreV1::Pipeline, decorator: Google::Apis::FirestoreV1::Pipeline::Representation + + end + end + class StructuredQuery # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1984,12 +2097,17 @@ class Representation < Google::Apis::Core::JsonRepresentation property :boolean_value, as: 'booleanValue' property :bytes_value, :base64 => true, as: 'bytesValue' property :double_value, as: 'doubleValue' + property :field_reference_value, as: 'fieldReferenceValue' + property :function_value, as: 'functionValue', class: Google::Apis::FirestoreV1::Function, decorator: Google::Apis::FirestoreV1::Function::Representation + property :geo_point_value, as: 'geoPointValue', class: Google::Apis::FirestoreV1::LatLng, decorator: Google::Apis::FirestoreV1::LatLng::Representation property :integer_value, :numeric_string => true, as: 'integerValue' property :map_value, as: 'mapValue', class: Google::Apis::FirestoreV1::MapValue, decorator: Google::Apis::FirestoreV1::MapValue::Representation property :null_value, as: 'nullValue' + property :pipeline_value, as: 'pipelineValue', class: Google::Apis::FirestoreV1::Pipeline, decorator: Google::Apis::FirestoreV1::Pipeline::Representation + property :reference_value, as: 'referenceValue' property :string_value, as: 'stringValue' property :timestamp_value, as: 'timestampValue' diff --git a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/service.rb b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/service.rb index f1158a80b85..00e992464b9 100644 --- a/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/service.rb +++ b/generated/google-apis-firestore_v1/lib/google/apis/firestore_v1/service.rb @@ -1100,6 +1100,40 @@ def delete_project_database_document(name, current_document_exists: nil, current execute_or_queue_command(command, &block) end + # Executes a pipeline query. + # @param [String] database + # Required. Database identifier, in the form `projects/`project`/databases/` + # database``. + # @param [Google::Apis::FirestoreV1::ExecutePipelineRequest] execute_pipeline_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::FirestoreV1::ExecutePipelineResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::FirestoreV1::ExecutePipelineResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def execute_document_pipeline(database, execute_pipeline_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+database}/documents:executePipeline', options) + command.request_representation = Google::Apis::FirestoreV1::ExecutePipelineRequest::Representation + command.request_object = execute_pipeline_request_object + command.response_representation = Google::Apis::FirestoreV1::ExecutePipelineResponse::Representation + command.response_class = Google::Apis::FirestoreV1::ExecutePipelineResponse + command.params['database'] = database unless database.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Gets a single document. # @param [String] name # Required. The resource name of the Document to get. In the format: `projects/`