google-cloud-bigtable-v2 1.12.0 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1410,7 +1410,7 @@ module Google
1410
1410
  # @param options [::Gapic::CallOptions, ::Hash]
1411
1411
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1412
1412
  #
1413
- # @overload execute_query(instance_name: nil, app_profile_id: nil, query: nil, prepared_query: nil, proto_format: nil, resume_token: nil, params: nil)
1413
+ # @overload execute_query(instance_name: nil, app_profile_id: nil, query: nil, prepared_query: nil, proto_format: nil, resume_token: nil, params: nil, view_parameters: nil)
1414
1414
  # Pass arguments to `execute_query` via keyword arguments. Note that at
1415
1415
  # least one keyword argument is required. To specify no parameters, or to keep all
1416
1416
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -1472,6 +1472,13 @@ module Google
1472
1472
  # inferred from the `param_types` in the `PrepareQueryRequest`. Any non-empty
1473
1473
  # `Value.type` must match the corresponding `param_types` entry, or be
1474
1474
  # rejected with `INVALID_ARGUMENT`.
1475
+ # @param view_parameters [::Hash{::String => ::Google::Cloud::Bigtable::V2::Value, ::Hash}]
1476
+ # Optional. This map provides the runtime values returned by the
1477
+ # VIEW_PARAMETERS() function calls, typically used for user-level scoping of
1478
+ # data based on identity.
1479
+ #
1480
+ # The key is the name of the view parameter e.g. `user_id`, and
1481
+ # the value is the parameter value e.g. `alice@example.com`.
1475
1482
  #
1476
1483
  # @yield [response, operation] Access the result along with the RPC operation
1477
1484
  # @yieldparam response [::Enumerable<::Google::Cloud::Bigtable::V2::ExecuteQueryResponse>]
@@ -1544,6 +1551,333 @@ module Google
1544
1551
  raise ::Google::Cloud::Error.from_error(e)
1545
1552
  end
1546
1553
 
1554
+ ##
1555
+ # This RPC is only intended to be used by the official Cloud Bigtable client
1556
+ # libraries to implement the Bigtable Session based protocol. It is subject
1557
+ # to change without notice.
1558
+ #
1559
+ # @overload get_client_configuration(request, options = nil)
1560
+ # Pass arguments to `get_client_configuration` via a request object, either of type
1561
+ # {::Google::Cloud::Bigtable::V2::GetClientConfigurationRequest} or an equivalent Hash.
1562
+ #
1563
+ # @param request [::Google::Cloud::Bigtable::V2::GetClientConfigurationRequest, ::Hash]
1564
+ # A request object representing the call parameters. Required. To specify no
1565
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
1566
+ # @param options [::Gapic::CallOptions, ::Hash]
1567
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1568
+ #
1569
+ # @overload get_client_configuration(instance_name: nil, app_profile_id: nil)
1570
+ # Pass arguments to `get_client_configuration` via keyword arguments. Note that at
1571
+ # least one keyword argument is required. To specify no parameters, or to keep all
1572
+ # the default parameter values, pass an empty Hash as a request object (see above).
1573
+ #
1574
+ # @param instance_name [::String]
1575
+ # Required. The unique name of the instance for which the client will target
1576
+ # with Data API requests.
1577
+ #
1578
+ # Values are of the form `projects/<project>/instances/<instance>`
1579
+ # @param app_profile_id [::String]
1580
+ # Optional. The name of the AppProfile which will be used by the client when
1581
+ # sending requests in the Data API.
1582
+ #
1583
+ # If not specified, the `default` application profile will be used.
1584
+ #
1585
+ # @yield [response, operation] Access the result along with the RPC operation
1586
+ # @yieldparam response [::Google::Cloud::Bigtable::V2::ClientConfiguration]
1587
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1588
+ #
1589
+ # @return [::Google::Cloud::Bigtable::V2::ClientConfiguration]
1590
+ #
1591
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1592
+ #
1593
+ # @example Basic example
1594
+ # require "google/cloud/bigtable/v2"
1595
+ #
1596
+ # # Create a client object. The client can be reused for multiple calls.
1597
+ # client = Google::Cloud::Bigtable::V2::Bigtable::Client.new
1598
+ #
1599
+ # # Create a request. To set request fields, pass in keyword arguments.
1600
+ # request = Google::Cloud::Bigtable::V2::GetClientConfigurationRequest.new
1601
+ #
1602
+ # # Call the get_client_configuration method.
1603
+ # result = client.get_client_configuration request
1604
+ #
1605
+ # # The returned object is of type Google::Cloud::Bigtable::V2::ClientConfiguration.
1606
+ # p result
1607
+ #
1608
+ def get_client_configuration request, options = nil
1609
+ raise ::ArgumentError, "request must be provided" if request.nil?
1610
+
1611
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigtable::V2::GetClientConfigurationRequest
1612
+
1613
+ # Converts hash and nil to an options object
1614
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1615
+
1616
+ # Customize the options with defaults
1617
+ metadata = @config.rpcs.get_client_configuration.metadata.to_h
1618
+
1619
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1620
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1621
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1622
+ gapic_version: ::Google::Cloud::Bigtable::V2::VERSION
1623
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1624
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1625
+
1626
+ options.apply_defaults timeout: @config.rpcs.get_client_configuration.timeout,
1627
+ metadata: metadata,
1628
+ retry_policy: @config.rpcs.get_client_configuration.retry_policy
1629
+
1630
+ options.apply_defaults timeout: @config.timeout,
1631
+ metadata: @config.metadata,
1632
+ retry_policy: @config.retry_policy
1633
+
1634
+ @bigtable_stub.call_rpc :get_client_configuration, request, options: options do |response, operation|
1635
+ yield response, operation if block_given?
1636
+ end
1637
+ rescue ::GRPC::BadStatus => e
1638
+ raise ::Google::Cloud::Error.from_error(e)
1639
+ end
1640
+
1641
+ ##
1642
+ # This RPC is only intended to be used by the official Cloud Bigtable client
1643
+ # libraries to implement the Bigtable Session based protocol. It is subject
1644
+ # to change without notice.
1645
+ #
1646
+ # @param request [::Gapic::StreamInput, ::Enumerable<::Google::Cloud::Bigtable::V2::SessionRequest, ::Hash>]
1647
+ # An enumerable of {::Google::Cloud::Bigtable::V2::SessionRequest} instances.
1648
+ # @param options [::Gapic::CallOptions, ::Hash]
1649
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1650
+ #
1651
+ # @yield [response, operation] Access the result along with the RPC operation
1652
+ # @yieldparam response [::Enumerable<::Google::Cloud::Bigtable::V2::SessionResponse>]
1653
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1654
+ #
1655
+ # @return [::Enumerable<::Google::Cloud::Bigtable::V2::SessionResponse>]
1656
+ #
1657
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1658
+ #
1659
+ # @example Basic example
1660
+ # require "google/cloud/bigtable/v2"
1661
+ #
1662
+ # # Create a client object. The client can be reused for multiple calls.
1663
+ # client = Google::Cloud::Bigtable::V2::Bigtable::Client.new
1664
+ #
1665
+ # # Create an input stream.
1666
+ # input = Gapic::StreamInput.new
1667
+ #
1668
+ # # Call the open_table method to start streaming.
1669
+ # output = client.open_table input
1670
+ #
1671
+ # # Send requests on the stream. For each request object, set fields by
1672
+ # # passing keyword arguments. Be sure to close the stream when done.
1673
+ # input << Google::Cloud::Bigtable::V2::SessionRequest.new
1674
+ # input << Google::Cloud::Bigtable::V2::SessionRequest.new
1675
+ # input.close
1676
+ #
1677
+ # # The returned object is a streamed enumerable yielding elements of type
1678
+ # # ::Google::Cloud::Bigtable::V2::SessionResponse
1679
+ # output.each do |current_response|
1680
+ # p current_response
1681
+ # end
1682
+ #
1683
+ def open_table request, options = nil
1684
+ unless request.is_a? ::Enumerable
1685
+ raise ::ArgumentError, "request must be an Enumerable" unless request.respond_to? :to_enum
1686
+ request = request.to_enum
1687
+ end
1688
+
1689
+ request = request.lazy.map do |req|
1690
+ ::Gapic::Protobuf.coerce req, to: ::Google::Cloud::Bigtable::V2::SessionRequest
1691
+ end
1692
+
1693
+ # Converts hash and nil to an options object
1694
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1695
+
1696
+ # Customize the options with defaults
1697
+ metadata = @config.rpcs.open_table.metadata.to_h
1698
+
1699
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1700
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1701
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1702
+ gapic_version: ::Google::Cloud::Bigtable::V2::VERSION
1703
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1704
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1705
+
1706
+ options.apply_defaults timeout: @config.rpcs.open_table.timeout,
1707
+ metadata: metadata,
1708
+ retry_policy: @config.rpcs.open_table.retry_policy
1709
+
1710
+ options.apply_defaults timeout: @config.timeout,
1711
+ metadata: @config.metadata,
1712
+ retry_policy: @config.retry_policy
1713
+
1714
+ @bigtable_stub.call_rpc :open_table, request, options: options do |response, operation|
1715
+ yield response, operation if block_given?
1716
+ end
1717
+ rescue ::GRPC::BadStatus => e
1718
+ raise ::Google::Cloud::Error.from_error(e)
1719
+ end
1720
+
1721
+ ##
1722
+ # This RPC is only intended to be used by the official Cloud Bigtable client
1723
+ # libraries to implement the Bigtable Session based protocol. It is subject
1724
+ # to change without notice.
1725
+ #
1726
+ # @param request [::Gapic::StreamInput, ::Enumerable<::Google::Cloud::Bigtable::V2::SessionRequest, ::Hash>]
1727
+ # An enumerable of {::Google::Cloud::Bigtable::V2::SessionRequest} instances.
1728
+ # @param options [::Gapic::CallOptions, ::Hash]
1729
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1730
+ #
1731
+ # @yield [response, operation] Access the result along with the RPC operation
1732
+ # @yieldparam response [::Enumerable<::Google::Cloud::Bigtable::V2::SessionResponse>]
1733
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1734
+ #
1735
+ # @return [::Enumerable<::Google::Cloud::Bigtable::V2::SessionResponse>]
1736
+ #
1737
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1738
+ #
1739
+ # @example Basic example
1740
+ # require "google/cloud/bigtable/v2"
1741
+ #
1742
+ # # Create a client object. The client can be reused for multiple calls.
1743
+ # client = Google::Cloud::Bigtable::V2::Bigtable::Client.new
1744
+ #
1745
+ # # Create an input stream.
1746
+ # input = Gapic::StreamInput.new
1747
+ #
1748
+ # # Call the open_authorized_view method to start streaming.
1749
+ # output = client.open_authorized_view input
1750
+ #
1751
+ # # Send requests on the stream. For each request object, set fields by
1752
+ # # passing keyword arguments. Be sure to close the stream when done.
1753
+ # input << Google::Cloud::Bigtable::V2::SessionRequest.new
1754
+ # input << Google::Cloud::Bigtable::V2::SessionRequest.new
1755
+ # input.close
1756
+ #
1757
+ # # The returned object is a streamed enumerable yielding elements of type
1758
+ # # ::Google::Cloud::Bigtable::V2::SessionResponse
1759
+ # output.each do |current_response|
1760
+ # p current_response
1761
+ # end
1762
+ #
1763
+ def open_authorized_view request, options = nil
1764
+ unless request.is_a? ::Enumerable
1765
+ raise ::ArgumentError, "request must be an Enumerable" unless request.respond_to? :to_enum
1766
+ request = request.to_enum
1767
+ end
1768
+
1769
+ request = request.lazy.map do |req|
1770
+ ::Gapic::Protobuf.coerce req, to: ::Google::Cloud::Bigtable::V2::SessionRequest
1771
+ end
1772
+
1773
+ # Converts hash and nil to an options object
1774
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1775
+
1776
+ # Customize the options with defaults
1777
+ metadata = @config.rpcs.open_authorized_view.metadata.to_h
1778
+
1779
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1780
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1781
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1782
+ gapic_version: ::Google::Cloud::Bigtable::V2::VERSION
1783
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1784
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1785
+
1786
+ options.apply_defaults timeout: @config.rpcs.open_authorized_view.timeout,
1787
+ metadata: metadata,
1788
+ retry_policy: @config.rpcs.open_authorized_view.retry_policy
1789
+
1790
+ options.apply_defaults timeout: @config.timeout,
1791
+ metadata: @config.metadata,
1792
+ retry_policy: @config.retry_policy
1793
+
1794
+ @bigtable_stub.call_rpc :open_authorized_view, request, options: options do |response, operation|
1795
+ yield response, operation if block_given?
1796
+ end
1797
+ rescue ::GRPC::BadStatus => e
1798
+ raise ::Google::Cloud::Error.from_error(e)
1799
+ end
1800
+
1801
+ ##
1802
+ # This RPC is only intended to be used by the official Cloud Bigtable client
1803
+ # libraries to implement the Bigtable Session based protocol. It is subject
1804
+ # to change without notice.
1805
+ #
1806
+ # @param request [::Gapic::StreamInput, ::Enumerable<::Google::Cloud::Bigtable::V2::SessionRequest, ::Hash>]
1807
+ # An enumerable of {::Google::Cloud::Bigtable::V2::SessionRequest} instances.
1808
+ # @param options [::Gapic::CallOptions, ::Hash]
1809
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1810
+ #
1811
+ # @yield [response, operation] Access the result along with the RPC operation
1812
+ # @yieldparam response [::Enumerable<::Google::Cloud::Bigtable::V2::SessionResponse>]
1813
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
1814
+ #
1815
+ # @return [::Enumerable<::Google::Cloud::Bigtable::V2::SessionResponse>]
1816
+ #
1817
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
1818
+ #
1819
+ # @example Basic example
1820
+ # require "google/cloud/bigtable/v2"
1821
+ #
1822
+ # # Create a client object. The client can be reused for multiple calls.
1823
+ # client = Google::Cloud::Bigtable::V2::Bigtable::Client.new
1824
+ #
1825
+ # # Create an input stream.
1826
+ # input = Gapic::StreamInput.new
1827
+ #
1828
+ # # Call the open_materialized_view method to start streaming.
1829
+ # output = client.open_materialized_view input
1830
+ #
1831
+ # # Send requests on the stream. For each request object, set fields by
1832
+ # # passing keyword arguments. Be sure to close the stream when done.
1833
+ # input << Google::Cloud::Bigtable::V2::SessionRequest.new
1834
+ # input << Google::Cloud::Bigtable::V2::SessionRequest.new
1835
+ # input.close
1836
+ #
1837
+ # # The returned object is a streamed enumerable yielding elements of type
1838
+ # # ::Google::Cloud::Bigtable::V2::SessionResponse
1839
+ # output.each do |current_response|
1840
+ # p current_response
1841
+ # end
1842
+ #
1843
+ def open_materialized_view request, options = nil
1844
+ unless request.is_a? ::Enumerable
1845
+ raise ::ArgumentError, "request must be an Enumerable" unless request.respond_to? :to_enum
1846
+ request = request.to_enum
1847
+ end
1848
+
1849
+ request = request.lazy.map do |req|
1850
+ ::Gapic::Protobuf.coerce req, to: ::Google::Cloud::Bigtable::V2::SessionRequest
1851
+ end
1852
+
1853
+ # Converts hash and nil to an options object
1854
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
1855
+
1856
+ # Customize the options with defaults
1857
+ metadata = @config.rpcs.open_materialized_view.metadata.to_h
1858
+
1859
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
1860
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
1861
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
1862
+ gapic_version: ::Google::Cloud::Bigtable::V2::VERSION
1863
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
1864
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
1865
+
1866
+ options.apply_defaults timeout: @config.rpcs.open_materialized_view.timeout,
1867
+ metadata: metadata,
1868
+ retry_policy: @config.rpcs.open_materialized_view.retry_policy
1869
+
1870
+ options.apply_defaults timeout: @config.timeout,
1871
+ metadata: @config.metadata,
1872
+ retry_policy: @config.retry_policy
1873
+
1874
+ @bigtable_stub.call_rpc :open_materialized_view, request, options: options do |response, operation|
1875
+ yield response, operation if block_given?
1876
+ end
1877
+ rescue ::GRPC::BadStatus => e
1878
+ raise ::Google::Cloud::Error.from_error(e)
1879
+ end
1880
+
1547
1881
  ##
1548
1882
  # Configuration class for the Bigtable API.
1549
1883
  #
@@ -1782,6 +2116,26 @@ module Google
1782
2116
  # @return [::Gapic::Config::Method]
1783
2117
  #
1784
2118
  attr_reader :execute_query
2119
+ ##
2120
+ # RPC-specific configuration for `get_client_configuration`
2121
+ # @return [::Gapic::Config::Method]
2122
+ #
2123
+ attr_reader :get_client_configuration
2124
+ ##
2125
+ # RPC-specific configuration for `open_table`
2126
+ # @return [::Gapic::Config::Method]
2127
+ #
2128
+ attr_reader :open_table
2129
+ ##
2130
+ # RPC-specific configuration for `open_authorized_view`
2131
+ # @return [::Gapic::Config::Method]
2132
+ #
2133
+ attr_reader :open_authorized_view
2134
+ ##
2135
+ # RPC-specific configuration for `open_materialized_view`
2136
+ # @return [::Gapic::Config::Method]
2137
+ #
2138
+ attr_reader :open_materialized_view
1785
2139
 
1786
2140
  # @private
1787
2141
  def initialize parent_rpcs = nil
@@ -1807,6 +2161,14 @@ module Google
1807
2161
  @prepare_query = ::Gapic::Config::Method.new prepare_query_config
1808
2162
  execute_query_config = parent_rpcs.execute_query if parent_rpcs.respond_to? :execute_query
1809
2163
  @execute_query = ::Gapic::Config::Method.new execute_query_config
2164
+ get_client_configuration_config = parent_rpcs.get_client_configuration if parent_rpcs.respond_to? :get_client_configuration
2165
+ @get_client_configuration = ::Gapic::Config::Method.new get_client_configuration_config
2166
+ open_table_config = parent_rpcs.open_table if parent_rpcs.respond_to? :open_table
2167
+ @open_table = ::Gapic::Config::Method.new open_table_config
2168
+ open_authorized_view_config = parent_rpcs.open_authorized_view if parent_rpcs.respond_to? :open_authorized_view
2169
+ @open_authorized_view = ::Gapic::Config::Method.new open_authorized_view_config
2170
+ open_materialized_view_config = parent_rpcs.open_materialized_view if parent_rpcs.respond_to? :open_materialized_view
2171
+ @open_materialized_view = ::Gapic::Config::Method.new open_materialized_view_config
1810
2172
 
1811
2173
  yield self if block_given?
1812
2174
  end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Bigtable
23
23
  module V2
24
- VERSION = "1.12.0"
24
+ VERSION = "1.13.0"
25
25
  end
26
26
  end
27
27
  end
@@ -31,6 +31,8 @@ module Google
31
31
  # @!attribute [rw] selective_gapic_generation
32
32
  # @return [::Google::Api::SelectiveGapicGeneration]
33
33
  # Configuration for which RPCs should be generated in the GAPIC client.
34
+ #
35
+ # Note: This field should not be used in most cases.
34
36
  class CommonLanguageSettings
35
37
  include ::Google::Protobuf::MessageExts
36
38
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -141,9 +143,10 @@ module Google
141
143
  #
142
144
  # Example of a YAML configuration::
143
145
  #
144
- # publishing:
145
- # java_settings:
146
- # library_package: com.google.cloud.pubsub.v1
146
+ # publishing:
147
+ # library_settings:
148
+ # java_settings:
149
+ # library_package: com.google.cloud.pubsub.v1
147
150
  # @!attribute [rw] service_class_names
148
151
  # @return [::Google::Protobuf::Map{::String => ::String}]
149
152
  # Configure the Java class name to use instead of the service's for its
@@ -155,11 +158,11 @@ module Google
155
158
  #
156
159
  # Example of a YAML configuration::
157
160
  #
158
- # publishing:
159
- # java_settings:
160
- # service_class_names:
161
- # - google.pubsub.v1.Publisher: TopicAdmin
162
- # - google.pubsub.v1.Subscriber: SubscriptionAdmin
161
+ # publishing:
162
+ # java_settings:
163
+ # service_class_names:
164
+ # - google.pubsub.v1.Publisher: TopicAdmin
165
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
163
166
  # @!attribute [rw] common
164
167
  # @return [::Google::Api::CommonLanguageSettings]
165
168
  # Some settings.
@@ -190,6 +193,20 @@ module Google
190
193
  # @!attribute [rw] common
191
194
  # @return [::Google::Api::CommonLanguageSettings]
192
195
  # Some settings.
196
+ # @!attribute [rw] library_package
197
+ # @return [::String]
198
+ # The package name to use in Php. Clobbers the php_namespace option
199
+ # set in the protobuf. This should be used **only** by APIs
200
+ # who have already set the language_settings.php.package_name" field
201
+ # in gapic.yaml. API teams should use the protobuf php_namespace option
202
+ # where possible.
203
+ #
204
+ # Example of a YAML configuration::
205
+ #
206
+ # publishing:
207
+ # library_settings:
208
+ # php_settings:
209
+ # library_package: Google\Cloud\PubSub\V1
193
210
  class PhpSettings
194
211
  include ::Google::Protobuf::MessageExts
195
212
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -318,10 +335,12 @@ module Google
318
335
  # service names and values are the name to be used for the service client
319
336
  # and call options.
320
337
  #
321
- # publishing:
322
- # go_settings:
323
- # renamed_services:
324
- # Publisher: TopicAdmin
338
+ # Example:
339
+ #
340
+ # publishing:
341
+ # go_settings:
342
+ # renamed_services:
343
+ # Publisher: TopicAdmin
325
344
  class GoSettings
326
345
  include ::Google::Protobuf::MessageExts
327
346
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -344,10 +363,10 @@ module Google
344
363
  #
345
364
  # Example:
346
365
  #
347
- # publishing:
348
- # method_settings:
349
- # - selector: google.storage.control.v2.StorageControl.CreateFolder
350
- # # method settings for CreateFolder...
366
+ # publishing:
367
+ # method_settings:
368
+ # - selector: google.storage.control.v2.StorageControl.CreateFolder
369
+ # # method settings for CreateFolder...
351
370
  # @!attribute [rw] long_running
352
371
  # @return [::Google::Api::MethodSettings::LongRunning]
353
372
  # Describes settings to use for long-running operations when generating
@@ -356,14 +375,14 @@ module Google
356
375
  #
357
376
  # Example of a YAML configuration::
358
377
  #
359
- # publishing:
360
- # method_settings:
361
- # - selector: google.cloud.speech.v2.Speech.BatchRecognize
362
- # long_running:
363
- # initial_poll_delay: 60s # 1 minute
364
- # poll_delay_multiplier: 1.5
365
- # max_poll_delay: 360s # 6 minutes
366
- # total_poll_timeout: 54000s # 90 minutes
378
+ # publishing:
379
+ # method_settings:
380
+ # - selector: google.cloud.speech.v2.Speech.BatchRecognize
381
+ # long_running:
382
+ # initial_poll_delay: 60s # 1 minute
383
+ # poll_delay_multiplier: 1.5
384
+ # max_poll_delay: 360s # 6 minutes
385
+ # total_poll_timeout: 54000s # 90 minutes
367
386
  # @!attribute [rw] auto_populated_fields
368
387
  # @return [::Array<::String>]
369
388
  # List of top-level fields of the request message, that should be
@@ -372,11 +391,24 @@ module Google
372
391
  #
373
392
  # Example of a YAML configuration:
374
393
  #
375
- # publishing:
376
- # method_settings:
377
- # - selector: google.example.v1.ExampleService.CreateExample
378
- # auto_populated_fields:
379
- # - request_id
394
+ # publishing:
395
+ # method_settings:
396
+ # - selector: google.example.v1.ExampleService.CreateExample
397
+ # auto_populated_fields:
398
+ # - request_id
399
+ # @!attribute [rw] batching
400
+ # @return [::Google::Api::BatchingConfigProto]
401
+ # Batching configuration for an API method in client libraries.
402
+ #
403
+ # Example of a YAML configuration:
404
+ #
405
+ # publishing:
406
+ # method_settings:
407
+ # - selector: google.example.v1.ExampleService.BatchCreateExample
408
+ # batching:
409
+ # element_count_threshold: 1000
410
+ # request_byte_threshold: 100000000
411
+ # delay_threshold_millis: 10
380
412
  class MethodSettings
381
413
  include ::Google::Protobuf::MessageExts
382
414
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -411,6 +443,8 @@ module Google
411
443
 
412
444
  # This message is used to configure the generation of a subset of the RPCs in
413
445
  # a service for client libraries.
446
+ #
447
+ # Note: This feature should not be used in most cases.
414
448
  # @!attribute [rw] methods
415
449
  # @return [::Array<::String>]
416
450
  # An allowlist of the fully qualified names of RPCs that should be included
@@ -428,6 +462,77 @@ module Google
428
462
  extend ::Google::Protobuf::MessageExts::ClassMethods
429
463
  end
430
464
 
465
+ # `BatchingConfigProto` defines the batching configuration for an API method.
466
+ # @!attribute [rw] thresholds
467
+ # @return [::Google::Api::BatchingSettingsProto]
468
+ # The thresholds which trigger a batched request to be sent.
469
+ # @!attribute [rw] batch_descriptor
470
+ # @return [::Google::Api::BatchingDescriptorProto]
471
+ # The request and response fields used in batching.
472
+ class BatchingConfigProto
473
+ include ::Google::Protobuf::MessageExts
474
+ extend ::Google::Protobuf::MessageExts::ClassMethods
475
+ end
476
+
477
+ # `BatchingSettingsProto` specifies a set of batching thresholds, each of
478
+ # which acts as a trigger to send a batch of messages as a request. At least
479
+ # one threshold must be positive nonzero.
480
+ # @!attribute [rw] element_count_threshold
481
+ # @return [::Integer]
482
+ # The number of elements of a field collected into a batch which, if
483
+ # exceeded, causes the batch to be sent.
484
+ # @!attribute [rw] request_byte_threshold
485
+ # @return [::Integer]
486
+ # The aggregated size of the batched field which, if exceeded, causes the
487
+ # batch to be sent. This size is computed by aggregating the sizes of the
488
+ # request field to be batched, not of the entire request message.
489
+ # @!attribute [rw] delay_threshold
490
+ # @return [::Google::Protobuf::Duration]
491
+ # The duration after which a batch should be sent, starting from the addition
492
+ # of the first message to that batch.
493
+ # @!attribute [rw] element_count_limit
494
+ # @return [::Integer]
495
+ # The maximum number of elements collected in a batch that could be accepted
496
+ # by server.
497
+ # @!attribute [rw] request_byte_limit
498
+ # @return [::Integer]
499
+ # The maximum size of the request that could be accepted by server.
500
+ # @!attribute [rw] flow_control_element_limit
501
+ # @return [::Integer]
502
+ # The maximum number of elements allowed by flow control.
503
+ # @!attribute [rw] flow_control_byte_limit
504
+ # @return [::Integer]
505
+ # The maximum size of data allowed by flow control.
506
+ # @!attribute [rw] flow_control_limit_exceeded_behavior
507
+ # @return [::Google::Api::FlowControlLimitExceededBehaviorProto]
508
+ # The behavior to take when the flow control limit is exceeded.
509
+ class BatchingSettingsProto
510
+ include ::Google::Protobuf::MessageExts
511
+ extend ::Google::Protobuf::MessageExts::ClassMethods
512
+ end
513
+
514
+ # `BatchingDescriptorProto` specifies the fields of the request message to be
515
+ # used for batching, and, optionally, the fields of the response message to be
516
+ # used for demultiplexing.
517
+ # @!attribute [rw] batched_field
518
+ # @return [::String]
519
+ # The repeated field in the request message to be aggregated by batching.
520
+ # @!attribute [rw] discriminator_fields
521
+ # @return [::Array<::String>]
522
+ # A list of the fields in the request message. Two requests will be batched
523
+ # together only if the values of every field specified in
524
+ # `request_discriminator_fields` is equal between the two requests.
525
+ # @!attribute [rw] subresponse_field
526
+ # @return [::String]
527
+ # Optional. When present, indicates the field in the response message to be
528
+ # used to demultiplex the response into multiple response messages, in
529
+ # correspondence with the multiple request messages originally batched
530
+ # together.
531
+ class BatchingDescriptorProto
532
+ include ::Google::Protobuf::MessageExts
533
+ extend ::Google::Protobuf::MessageExts::ClassMethods
534
+ end
535
+
431
536
  # The organization for which the client libraries are being published.
432
537
  # Affects the url where generated docs are published, etc.
433
538
  module ClientLibraryOrganization
@@ -469,5 +574,20 @@ module Google
469
574
  # Publish the library to package managers like nuget.org and npmjs.com.
470
575
  PACKAGE_MANAGER = 20
471
576
  end
577
+
578
+ # The behavior to take when the flow control limit is exceeded.
579
+ module FlowControlLimitExceededBehaviorProto
580
+ # Default behavior, system-defined.
581
+ UNSET_BEHAVIOR = 0
582
+
583
+ # Stop operation, raise error.
584
+ THROW_EXCEPTION = 1
585
+
586
+ # Pause operation until limit clears.
587
+ BLOCK = 2
588
+
589
+ # Continue operation, disregard limit.
590
+ IGNORE = 3
591
+ end
472
592
  end
473
593
  end
@@ -49,9 +49,13 @@ module Google
49
49
  # app_profile_id: profiles/prof_qux
50
50
  # }
51
51
  #
52
- # The routing header consists of one or multiple key-value pairs. Every key
53
- # and value must be percent-encoded, and joined together in the format of
54
- # `key1=value1&key2=value2`.
52
+ # The routing header consists of one or multiple key-value pairs. The order of
53
+ # the key-value pairs is undefined, the order of the `routing_parameters` in
54
+ # the `RoutingRule` only matters for the evaluation order of the path
55
+ # templates when `field` is the same. See the examples below for more details.
56
+ #
57
+ # Every key and value in the routing header must be percent-encoded,
58
+ # and joined together in the following format: `key1=value1&key2=value2`.
55
59
  # The examples below skip the percent-encoding for readability.
56
60
  #
57
61
  # Example 1