google-cloud-bigtable-v2 0.7.0 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/google/bigtable/v2/bigtable_pb.rb +72 -2
- data/lib/google/bigtable/v2/bigtable_services_pb.rb +10 -0
- data/lib/google/bigtable/v2/data_pb.rb +13 -0
- data/lib/google/bigtable/v2/request_stats_pb.rb +7 -14
- data/lib/google/cloud/bigtable/v2/bigtable/client.rb +257 -18
- data/lib/google/cloud/bigtable/v2/bigtable.rb +1 -1
- data/lib/google/cloud/bigtable/v2/version.rb +1 -1
- data/lib/google/cloud/bigtable/v2.rb +2 -2
- data/proto_docs/google/api/client.rb +318 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/bigtable/v2/bigtable.rb +234 -4
- data/proto_docs/google/bigtable/v2/data.rb +36 -0
- data/proto_docs/google/bigtable/v2/request_stats.rb +15 -32
- data/proto_docs/google/protobuf/timestamp.rb +129 -0
- data/proto_docs/google/rpc/status.rb +4 -2
- metadata +10 -7
@@ -0,0 +1,318 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2022 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Api
|
22
|
+
# Required information for every language.
|
23
|
+
# @!attribute [rw] reference_docs_uri
|
24
|
+
# @return [::String]
|
25
|
+
# Link to automatically generated reference documentation. Example:
|
26
|
+
# https://cloud.google.com/nodejs/docs/reference/asset/latest
|
27
|
+
# @!attribute [rw] destinations
|
28
|
+
# @return [::Array<::Google::Api::ClientLibraryDestination>]
|
29
|
+
# The destination where API teams want this client library to be published.
|
30
|
+
class CommonLanguageSettings
|
31
|
+
include ::Google::Protobuf::MessageExts
|
32
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
33
|
+
end
|
34
|
+
|
35
|
+
# Details about how and where to publish client libraries.
|
36
|
+
# @!attribute [rw] version
|
37
|
+
# @return [::String]
|
38
|
+
# Version of the API to apply these settings to.
|
39
|
+
# @!attribute [rw] launch_stage
|
40
|
+
# @return [::Google::Api::LaunchStage]
|
41
|
+
# Launch stage of this version of the API.
|
42
|
+
# @!attribute [rw] rest_numeric_enums
|
43
|
+
# @return [::Boolean]
|
44
|
+
# When using transport=rest, the client request will encode enums as
|
45
|
+
# numbers rather than strings.
|
46
|
+
# @!attribute [rw] java_settings
|
47
|
+
# @return [::Google::Api::JavaSettings]
|
48
|
+
# Settings for legacy Java features, supported in the Service YAML.
|
49
|
+
# @!attribute [rw] cpp_settings
|
50
|
+
# @return [::Google::Api::CppSettings]
|
51
|
+
# Settings for C++ client libraries.
|
52
|
+
# @!attribute [rw] php_settings
|
53
|
+
# @return [::Google::Api::PhpSettings]
|
54
|
+
# Settings for PHP client libraries.
|
55
|
+
# @!attribute [rw] python_settings
|
56
|
+
# @return [::Google::Api::PythonSettings]
|
57
|
+
# Settings for Python client libraries.
|
58
|
+
# @!attribute [rw] node_settings
|
59
|
+
# @return [::Google::Api::NodeSettings]
|
60
|
+
# Settings for Node client libraries.
|
61
|
+
# @!attribute [rw] dotnet_settings
|
62
|
+
# @return [::Google::Api::DotnetSettings]
|
63
|
+
# Settings for .NET client libraries.
|
64
|
+
# @!attribute [rw] ruby_settings
|
65
|
+
# @return [::Google::Api::RubySettings]
|
66
|
+
# Settings for Ruby client libraries.
|
67
|
+
# @!attribute [rw] go_settings
|
68
|
+
# @return [::Google::Api::GoSettings]
|
69
|
+
# Settings for Go client libraries.
|
70
|
+
class ClientLibrarySettings
|
71
|
+
include ::Google::Protobuf::MessageExts
|
72
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
73
|
+
end
|
74
|
+
|
75
|
+
# This message configures the settings for publishing [Google Cloud Client
|
76
|
+
# libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
|
77
|
+
# generated from the service config.
|
78
|
+
# @!attribute [rw] method_settings
|
79
|
+
# @return [::Array<::Google::Api::MethodSettings>]
|
80
|
+
# A list of API method settings, e.g. the behavior for methods that use the
|
81
|
+
# long-running operation pattern.
|
82
|
+
# @!attribute [rw] new_issue_uri
|
83
|
+
# @return [::String]
|
84
|
+
# Link to a place that API users can report issues. Example:
|
85
|
+
# https://issuetracker.google.com/issues/new?component=190865&template=1161103
|
86
|
+
# @!attribute [rw] documentation_uri
|
87
|
+
# @return [::String]
|
88
|
+
# Link to product home page. Example:
|
89
|
+
# https://cloud.google.com/asset-inventory/docs/overview
|
90
|
+
# @!attribute [rw] api_short_name
|
91
|
+
# @return [::String]
|
92
|
+
# Used as a tracking tag when collecting data about the APIs developer
|
93
|
+
# relations artifacts like docs, packages delivered to package managers,
|
94
|
+
# etc. Example: "speech".
|
95
|
+
# @!attribute [rw] github_label
|
96
|
+
# @return [::String]
|
97
|
+
# GitHub label to apply to issues and pull requests opened for this API.
|
98
|
+
# @!attribute [rw] codeowner_github_teams
|
99
|
+
# @return [::Array<::String>]
|
100
|
+
# GitHub teams to be added to CODEOWNERS in the directory in GitHub
|
101
|
+
# containing source code for the client libraries for this API.
|
102
|
+
# @!attribute [rw] doc_tag_prefix
|
103
|
+
# @return [::String]
|
104
|
+
# A prefix used in sample code when demarking regions to be included in
|
105
|
+
# documentation.
|
106
|
+
# @!attribute [rw] organization
|
107
|
+
# @return [::Google::Api::ClientLibraryOrganization]
|
108
|
+
# For whom the client library is being published.
|
109
|
+
# @!attribute [rw] library_settings
|
110
|
+
# @return [::Array<::Google::Api::ClientLibrarySettings>]
|
111
|
+
# Client library settings. If the same version string appears multiple
|
112
|
+
# times in this list, then the last one wins. Settings from earlier
|
113
|
+
# settings with the same version string are discarded.
|
114
|
+
class Publishing
|
115
|
+
include ::Google::Protobuf::MessageExts
|
116
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
117
|
+
end
|
118
|
+
|
119
|
+
# Settings for Java client libraries.
|
120
|
+
# @!attribute [rw] library_package
|
121
|
+
# @return [::String]
|
122
|
+
# The package name to use in Java. Clobbers the java_package option
|
123
|
+
# set in the protobuf. This should be used **only** by APIs
|
124
|
+
# who have already set the language_settings.java.package_name" field
|
125
|
+
# in gapic.yaml. API teams should use the protobuf java_package option
|
126
|
+
# where possible.
|
127
|
+
#
|
128
|
+
# Example of a YAML configuration::
|
129
|
+
#
|
130
|
+
# publishing:
|
131
|
+
# java_settings:
|
132
|
+
# library_package: com.google.cloud.pubsub.v1
|
133
|
+
# @!attribute [rw] service_class_names
|
134
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
135
|
+
# Configure the Java class name to use instead of the service's for its
|
136
|
+
# corresponding generated GAPIC client. Keys are fully-qualified
|
137
|
+
# service names as they appear in the protobuf (including the full
|
138
|
+
# the language_settings.java.interface_names" field in gapic.yaml. API
|
139
|
+
# teams should otherwise use the service name as it appears in the
|
140
|
+
# protobuf.
|
141
|
+
#
|
142
|
+
# Example of a YAML configuration::
|
143
|
+
#
|
144
|
+
# publishing:
|
145
|
+
# java_settings:
|
146
|
+
# service_class_names:
|
147
|
+
# - google.pubsub.v1.Publisher: TopicAdmin
|
148
|
+
# - google.pubsub.v1.Subscriber: SubscriptionAdmin
|
149
|
+
# @!attribute [rw] common
|
150
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
151
|
+
# Some settings.
|
152
|
+
class JavaSettings
|
153
|
+
include ::Google::Protobuf::MessageExts
|
154
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
155
|
+
|
156
|
+
# @!attribute [rw] key
|
157
|
+
# @return [::String]
|
158
|
+
# @!attribute [rw] value
|
159
|
+
# @return [::String]
|
160
|
+
class ServiceClassNamesEntry
|
161
|
+
include ::Google::Protobuf::MessageExts
|
162
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
163
|
+
end
|
164
|
+
end
|
165
|
+
|
166
|
+
# Settings for C++ client libraries.
|
167
|
+
# @!attribute [rw] common
|
168
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
169
|
+
# Some settings.
|
170
|
+
class CppSettings
|
171
|
+
include ::Google::Protobuf::MessageExts
|
172
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
173
|
+
end
|
174
|
+
|
175
|
+
# Settings for Php client libraries.
|
176
|
+
# @!attribute [rw] common
|
177
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
178
|
+
# Some settings.
|
179
|
+
class PhpSettings
|
180
|
+
include ::Google::Protobuf::MessageExts
|
181
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
182
|
+
end
|
183
|
+
|
184
|
+
# Settings for Python client libraries.
|
185
|
+
# @!attribute [rw] common
|
186
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
187
|
+
# Some settings.
|
188
|
+
class PythonSettings
|
189
|
+
include ::Google::Protobuf::MessageExts
|
190
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
191
|
+
end
|
192
|
+
|
193
|
+
# Settings for Node client libraries.
|
194
|
+
# @!attribute [rw] common
|
195
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
196
|
+
# Some settings.
|
197
|
+
class NodeSettings
|
198
|
+
include ::Google::Protobuf::MessageExts
|
199
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
200
|
+
end
|
201
|
+
|
202
|
+
# Settings for Dotnet client libraries.
|
203
|
+
# @!attribute [rw] common
|
204
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
205
|
+
# Some settings.
|
206
|
+
class DotnetSettings
|
207
|
+
include ::Google::Protobuf::MessageExts
|
208
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
209
|
+
end
|
210
|
+
|
211
|
+
# Settings for Ruby client libraries.
|
212
|
+
# @!attribute [rw] common
|
213
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
214
|
+
# Some settings.
|
215
|
+
class RubySettings
|
216
|
+
include ::Google::Protobuf::MessageExts
|
217
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
218
|
+
end
|
219
|
+
|
220
|
+
# Settings for Go client libraries.
|
221
|
+
# @!attribute [rw] common
|
222
|
+
# @return [::Google::Api::CommonLanguageSettings]
|
223
|
+
# Some settings.
|
224
|
+
class GoSettings
|
225
|
+
include ::Google::Protobuf::MessageExts
|
226
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
227
|
+
end
|
228
|
+
|
229
|
+
# Describes the generator configuration for a method.
|
230
|
+
# @!attribute [rw] selector
|
231
|
+
# @return [::String]
|
232
|
+
# The fully qualified name of the method, for which the options below apply.
|
233
|
+
# This is used to find the method to apply the options.
|
234
|
+
# @!attribute [rw] long_running
|
235
|
+
# @return [::Google::Api::MethodSettings::LongRunning]
|
236
|
+
# Describes settings to use for long-running operations when generating
|
237
|
+
# API methods for RPCs. Complements RPCs that use the annotations in
|
238
|
+
# google/longrunning/operations.proto.
|
239
|
+
#
|
240
|
+
# Example of a YAML configuration::
|
241
|
+
#
|
242
|
+
# publishing:
|
243
|
+
# method_behavior:
|
244
|
+
# - selector: CreateAdDomain
|
245
|
+
# long_running:
|
246
|
+
# initial_poll_delay:
|
247
|
+
# seconds: 60 # 1 minute
|
248
|
+
# poll_delay_multiplier: 1.5
|
249
|
+
# max_poll_delay:
|
250
|
+
# seconds: 360 # 6 minutes
|
251
|
+
# total_poll_timeout:
|
252
|
+
# seconds: 54000 # 90 minutes
|
253
|
+
class MethodSettings
|
254
|
+
include ::Google::Protobuf::MessageExts
|
255
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
256
|
+
|
257
|
+
# Describes settings to use when generating API methods that use the
|
258
|
+
# long-running operation pattern.
|
259
|
+
# All default values below are from those used in the client library
|
260
|
+
# generators (e.g.
|
261
|
+
# [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
|
262
|
+
# @!attribute [rw] initial_poll_delay
|
263
|
+
# @return [::Google::Protobuf::Duration]
|
264
|
+
# Initial delay after which the first poll request will be made.
|
265
|
+
# Default value: 5 seconds.
|
266
|
+
# @!attribute [rw] poll_delay_multiplier
|
267
|
+
# @return [::Float]
|
268
|
+
# Multiplier to gradually increase delay between subsequent polls until it
|
269
|
+
# reaches max_poll_delay.
|
270
|
+
# Default value: 1.5.
|
271
|
+
# @!attribute [rw] max_poll_delay
|
272
|
+
# @return [::Google::Protobuf::Duration]
|
273
|
+
# Maximum time between two subsequent poll requests.
|
274
|
+
# Default value: 45 seconds.
|
275
|
+
# @!attribute [rw] total_poll_timeout
|
276
|
+
# @return [::Google::Protobuf::Duration]
|
277
|
+
# Total polling timeout.
|
278
|
+
# Default value: 5 minutes.
|
279
|
+
class LongRunning
|
280
|
+
include ::Google::Protobuf::MessageExts
|
281
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
282
|
+
end
|
283
|
+
end
|
284
|
+
|
285
|
+
# The organization for which the client libraries are being published.
|
286
|
+
# Affects the url where generated docs are published, etc.
|
287
|
+
module ClientLibraryOrganization
|
288
|
+
# Not useful.
|
289
|
+
CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
|
290
|
+
|
291
|
+
# Google Cloud Platform Org.
|
292
|
+
CLOUD = 1
|
293
|
+
|
294
|
+
# Ads (Advertising) Org.
|
295
|
+
ADS = 2
|
296
|
+
|
297
|
+
# Photos Org.
|
298
|
+
PHOTOS = 3
|
299
|
+
|
300
|
+
# Street View Org.
|
301
|
+
STREET_VIEW = 4
|
302
|
+
end
|
303
|
+
|
304
|
+
# To where should client libraries be published?
|
305
|
+
module ClientLibraryDestination
|
306
|
+
# Client libraries will neither be generated nor published to package
|
307
|
+
# managers.
|
308
|
+
CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
|
309
|
+
|
310
|
+
# Generate the client library in a repo under github.com/googleapis,
|
311
|
+
# but don't publish it to package managers.
|
312
|
+
GITHUB = 10
|
313
|
+
|
314
|
+
# Publish the library to package managers like nuget.org and npmjs.com.
|
315
|
+
PACKAGE_MANAGER = 20
|
316
|
+
end
|
317
|
+
end
|
318
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2022 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Api
|
22
|
+
# The launch stage as defined by [Google Cloud Platform
|
23
|
+
# Launch Stages](https://cloud.google.com/terms/launch-stages).
|
24
|
+
module LaunchStage
|
25
|
+
# Do not use this default value.
|
26
|
+
LAUNCH_STAGE_UNSPECIFIED = 0
|
27
|
+
|
28
|
+
# The feature is not yet implemented. Users can not use it.
|
29
|
+
UNIMPLEMENTED = 6
|
30
|
+
|
31
|
+
# Prelaunch features are hidden from users and are only visible internally.
|
32
|
+
PRELAUNCH = 7
|
33
|
+
|
34
|
+
# Early Access features are limited to a closed group of testers. To use
|
35
|
+
# these features, you must sign up in advance and sign a Trusted Tester
|
36
|
+
# agreement (which includes confidentiality provisions). These features may
|
37
|
+
# be unstable, changed in backward-incompatible ways, and are not
|
38
|
+
# guaranteed to be released.
|
39
|
+
EARLY_ACCESS = 1
|
40
|
+
|
41
|
+
# Alpha is a limited availability test for releases before they are cleared
|
42
|
+
# for widespread use. By Alpha, all significant design issues are resolved
|
43
|
+
# and we are in the process of verifying functionality. Alpha customers
|
44
|
+
# need to apply for access, agree to applicable terms, and have their
|
45
|
+
# projects allowlisted. Alpha releases don't have to be feature complete,
|
46
|
+
# no SLAs are provided, and there are no technical support obligations, but
|
47
|
+
# they will be far enough along that customers can actually use them in
|
48
|
+
# test environments or for limited-use tests -- just like they would in
|
49
|
+
# normal production cases.
|
50
|
+
ALPHA = 2
|
51
|
+
|
52
|
+
# Beta is the point at which we are ready to open a release for any
|
53
|
+
# customer to use. There are no SLA or technical support obligations in a
|
54
|
+
# Beta release. Products will be complete from a feature perspective, but
|
55
|
+
# may have some open outstanding issues. Beta releases are suitable for
|
56
|
+
# limited production use cases.
|
57
|
+
BETA = 3
|
58
|
+
|
59
|
+
# GA features are open to all developers and are considered stable and
|
60
|
+
# fully qualified for production use.
|
61
|
+
GA = 4
|
62
|
+
|
63
|
+
# Deprecated features are scheduled to be shut down and removed. For more
|
64
|
+
# information, see the "Deprecation Policy" section of our [Terms of
|
65
|
+
# Service](https://cloud.google.com/terms/)
|
66
|
+
# and the [Google Cloud Platform Subject to the Deprecation
|
67
|
+
# Policy](https://cloud.google.com/terms/deprecation) documentation.
|
68
|
+
DEPRECATED = 5
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -61,12 +61,9 @@ module Google
|
|
61
61
|
# RequestStats embedded message unset in the response.
|
62
62
|
REQUEST_STATS_NONE = 1
|
63
63
|
|
64
|
-
# Include stats related to the efficiency of the read.
|
65
|
-
REQUEST_STATS_EFFICIENCY = 2
|
66
|
-
|
67
64
|
# Include the full set of available RequestStats in the response,
|
68
65
|
# applicable to this read.
|
69
|
-
REQUEST_STATS_FULL =
|
66
|
+
REQUEST_STATS_FULL = 2
|
70
67
|
end
|
71
68
|
end
|
72
69
|
|
@@ -400,6 +397,239 @@ module Google
|
|
400
397
|
include ::Google::Protobuf::MessageExts
|
401
398
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
402
399
|
end
|
400
|
+
|
401
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
402
|
+
# Request message for Bigtable.GenerateInitialChangeStreamPartitions.
|
403
|
+
# @!attribute [rw] table_name
|
404
|
+
# @return [::String]
|
405
|
+
# Required. The unique name of the table from which to get change stream
|
406
|
+
# partitions. Values are of the form
|
407
|
+
# `projects/<project>/instances/<instance>/tables/<table>`.
|
408
|
+
# Change streaming must be enabled on the table.
|
409
|
+
# @!attribute [rw] app_profile_id
|
410
|
+
# @return [::String]
|
411
|
+
# This value specifies routing for replication. If not specified, the
|
412
|
+
# "default" application profile will be used.
|
413
|
+
# Single cluster routing must be configured on the profile.
|
414
|
+
class GenerateInitialChangeStreamPartitionsRequest
|
415
|
+
include ::Google::Protobuf::MessageExts
|
416
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
417
|
+
end
|
418
|
+
|
419
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
420
|
+
# Response message for Bigtable.GenerateInitialChangeStreamPartitions.
|
421
|
+
# @!attribute [rw] partition
|
422
|
+
# @return [::Google::Cloud::Bigtable::V2::StreamPartition]
|
423
|
+
# A partition of the change stream.
|
424
|
+
class GenerateInitialChangeStreamPartitionsResponse
|
425
|
+
include ::Google::Protobuf::MessageExts
|
426
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
427
|
+
end
|
428
|
+
|
429
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
430
|
+
# Request message for Bigtable.ReadChangeStream.
|
431
|
+
# @!attribute [rw] table_name
|
432
|
+
# @return [::String]
|
433
|
+
# Required. The unique name of the table from which to read a change stream.
|
434
|
+
# Values are of the form
|
435
|
+
# `projects/<project>/instances/<instance>/tables/<table>`.
|
436
|
+
# Change streaming must be enabled on the table.
|
437
|
+
# @!attribute [rw] app_profile_id
|
438
|
+
# @return [::String]
|
439
|
+
# This value specifies routing for replication. If not specified, the
|
440
|
+
# "default" application profile will be used.
|
441
|
+
# Single cluster routing must be configured on the profile.
|
442
|
+
# @!attribute [rw] partition
|
443
|
+
# @return [::Google::Cloud::Bigtable::V2::StreamPartition]
|
444
|
+
# The partition to read changes from.
|
445
|
+
# @!attribute [rw] start_time
|
446
|
+
# @return [::Google::Protobuf::Timestamp]
|
447
|
+
# Start reading the stream at the specified timestamp. This timestamp must
|
448
|
+
# be within the change stream retention period, less than or equal to the
|
449
|
+
# current time, and after change stream creation, whichever is greater.
|
450
|
+
# This value is inclusive and will be truncated to microsecond granularity.
|
451
|
+
# @!attribute [rw] continuation_tokens
|
452
|
+
# @return [::Google::Cloud::Bigtable::V2::StreamContinuationTokens]
|
453
|
+
# Tokens that describe how to resume reading a stream where reading
|
454
|
+
# previously left off. If specified, changes will be read starting at the
|
455
|
+
# the position. Tokens are delivered on the stream as part of `Heartbeat`
|
456
|
+
# and `CloseStream` messages.
|
457
|
+
#
|
458
|
+
# If a single token is provided, the token’s partition must exactly match
|
459
|
+
# the request’s partition. If multiple tokens are provided, as in the case
|
460
|
+
# of a partition merge, the union of the token partitions must exactly
|
461
|
+
# cover the request’s partition. Otherwise, INVALID_ARGUMENT will be
|
462
|
+
# returned.
|
463
|
+
# @!attribute [rw] end_time
|
464
|
+
# @return [::Google::Protobuf::Timestamp]
|
465
|
+
# If specified, OK will be returned when the stream advances beyond
|
466
|
+
# this time. Otherwise, changes will be continuously delivered on the stream.
|
467
|
+
# This value is inclusive and will be truncated to microsecond granularity.
|
468
|
+
# @!attribute [rw] heartbeat_duration
|
469
|
+
# @return [::Google::Protobuf::Duration]
|
470
|
+
# If specified, the duration between `Heartbeat` messages on the stream.
|
471
|
+
# Otherwise, defaults to 5 seconds.
|
472
|
+
class ReadChangeStreamRequest
|
473
|
+
include ::Google::Protobuf::MessageExts
|
474
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
475
|
+
end
|
476
|
+
|
477
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
478
|
+
# Response message for Bigtable.ReadChangeStream.
|
479
|
+
# @!attribute [rw] data_change
|
480
|
+
# @return [::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse::DataChange]
|
481
|
+
# A mutation to the partition.
|
482
|
+
# @!attribute [rw] heartbeat
|
483
|
+
# @return [::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse::Heartbeat]
|
484
|
+
# A periodic heartbeat message.
|
485
|
+
# @!attribute [rw] close_stream
|
486
|
+
# @return [::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse::CloseStream]
|
487
|
+
# An indication that the stream should be closed.
|
488
|
+
class ReadChangeStreamResponse
|
489
|
+
include ::Google::Protobuf::MessageExts
|
490
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
491
|
+
|
492
|
+
# A partial or complete mutation.
|
493
|
+
# @!attribute [rw] chunk_info
|
494
|
+
# @return [::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse::MutationChunk::ChunkInfo]
|
495
|
+
# If set, then the mutation is a `SetCell` with a chunked value across
|
496
|
+
# multiple messages.
|
497
|
+
# @!attribute [rw] mutation
|
498
|
+
# @return [::Google::Cloud::Bigtable::V2::Mutation]
|
499
|
+
# If this is a continuation of a chunked message (`chunked_value_offset` >
|
500
|
+
# 0), ignore all fields except the `SetCell`'s value and merge it with
|
501
|
+
# the previous message by concatenating the value fields.
|
502
|
+
class MutationChunk
|
503
|
+
include ::Google::Protobuf::MessageExts
|
504
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
505
|
+
|
506
|
+
# Information about the chunking of this mutation.
|
507
|
+
# Only `SetCell` mutations can be chunked, and all chunks for a `SetCell`
|
508
|
+
# will be delivered contiguously with no other mutation types interleaved.
|
509
|
+
# @!attribute [rw] chunked_value_size
|
510
|
+
# @return [::Integer]
|
511
|
+
# The total value size of all the chunks that make up the `SetCell`.
|
512
|
+
# @!attribute [rw] chunked_value_offset
|
513
|
+
# @return [::Integer]
|
514
|
+
# The byte offset of this chunk into the total value size of the
|
515
|
+
# mutation.
|
516
|
+
# @!attribute [rw] last_chunk
|
517
|
+
# @return [::Boolean]
|
518
|
+
# When true, this is the last chunk of a chunked `SetCell`.
|
519
|
+
class ChunkInfo
|
520
|
+
include ::Google::Protobuf::MessageExts
|
521
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
522
|
+
end
|
523
|
+
end
|
524
|
+
|
525
|
+
# A message corresponding to one or more mutations to the partition
|
526
|
+
# being streamed. A single logical `DataChange` message may also be split
|
527
|
+
# across a sequence of multiple individual messages. Messages other than
|
528
|
+
# the first in a sequence will only have the `type` and `chunks` fields
|
529
|
+
# populated, with the final message in the sequence also containing `done`
|
530
|
+
# set to true.
|
531
|
+
# @!attribute [rw] type
|
532
|
+
# @return [::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse::DataChange::Type]
|
533
|
+
# The type of the mutation.
|
534
|
+
# @!attribute [rw] source_cluster_id
|
535
|
+
# @return [::String]
|
536
|
+
# The cluster where the mutation was applied.
|
537
|
+
# Not set when `type` is `GARBAGE_COLLECTION`.
|
538
|
+
# @!attribute [rw] row_key
|
539
|
+
# @return [::String]
|
540
|
+
# The row key for all mutations that are part of this `DataChange`.
|
541
|
+
# If the `DataChange` is chunked across multiple messages, then this field
|
542
|
+
# will only be set for the first message.
|
543
|
+
# @!attribute [rw] commit_timestamp
|
544
|
+
# @return [::Google::Protobuf::Timestamp]
|
545
|
+
# The timestamp at which the mutation was applied on the Bigtable server.
|
546
|
+
# @!attribute [rw] tiebreaker
|
547
|
+
# @return [::Integer]
|
548
|
+
# A value that lets stream consumers reconstruct Bigtable's
|
549
|
+
# conflict resolution semantics.
|
550
|
+
# https://cloud.google.com/bigtable/docs/writes#conflict-resolution
|
551
|
+
# In the event that the same row key, column family, column qualifier,
|
552
|
+
# timestamp are modified on different clusters at the same
|
553
|
+
# `commit_timestamp`, the mutation with the larger `tiebreaker` will be the
|
554
|
+
# one chosen for the eventually consistent state of the system.
|
555
|
+
# @!attribute [rw] chunks
|
556
|
+
# @return [::Array<::Google::Cloud::Bigtable::V2::ReadChangeStreamResponse::MutationChunk>]
|
557
|
+
# The mutations associated with this change to the partition.
|
558
|
+
# May contain complete mutations or chunks of a multi-message chunked
|
559
|
+
# `DataChange` record.
|
560
|
+
# @!attribute [rw] done
|
561
|
+
# @return [::Boolean]
|
562
|
+
# When true, indicates that the entire `DataChange` has been read
|
563
|
+
# and the client can safely process the message.
|
564
|
+
# @!attribute [rw] token
|
565
|
+
# @return [::String]
|
566
|
+
# An encoded position for this stream's partition to restart reading from.
|
567
|
+
# This token is for the StreamPartition from the request.
|
568
|
+
# @!attribute [rw] estimated_low_watermark
|
569
|
+
# @return [::Google::Protobuf::Timestamp]
|
570
|
+
# An estimate of the commit timestamp that is usually lower than or equal
|
571
|
+
# to any timestamp for a record that will be delivered in the future on the
|
572
|
+
# stream. It is possible that, under particular circumstances that a future
|
573
|
+
# record has a timestamp is is lower than a previously seen timestamp. For
|
574
|
+
# an example usage see
|
575
|
+
# https://beam.apache.org/documentation/basics/#watermarks
|
576
|
+
class DataChange
|
577
|
+
include ::Google::Protobuf::MessageExts
|
578
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
579
|
+
|
580
|
+
# The type of mutation.
|
581
|
+
module Type
|
582
|
+
# The type is unspecified.
|
583
|
+
TYPE_UNSPECIFIED = 0
|
584
|
+
|
585
|
+
# A user-initiated mutation.
|
586
|
+
USER = 1
|
587
|
+
|
588
|
+
# A system-initiated mutation as part of garbage collection.
|
589
|
+
# https://cloud.google.com/bigtable/docs/garbage-collection
|
590
|
+
GARBAGE_COLLECTION = 2
|
591
|
+
|
592
|
+
# This is a continuation of a multi-message change.
|
593
|
+
CONTINUATION = 3
|
594
|
+
end
|
595
|
+
end
|
596
|
+
|
597
|
+
# A periodic message with information that can be used to checkpoint
|
598
|
+
# the state of a stream.
|
599
|
+
# @!attribute [rw] continuation_token
|
600
|
+
# @return [::Google::Cloud::Bigtable::V2::StreamContinuationToken]
|
601
|
+
# A token that can be provided to a subsequent `ReadChangeStream` call
|
602
|
+
# to pick up reading at the current stream position.
|
603
|
+
# @!attribute [rw] estimated_low_watermark
|
604
|
+
# @return [::Google::Protobuf::Timestamp]
|
605
|
+
# An estimate of the commit timestamp that is usually lower than or equal
|
606
|
+
# to any timestamp for a record that will be delivered in the future on the
|
607
|
+
# stream. It is possible that, under particular circumstances that a future
|
608
|
+
# record has a timestamp is is lower than a previously seen timestamp. For
|
609
|
+
# an example usage see
|
610
|
+
# https://beam.apache.org/documentation/basics/#watermarks
|
611
|
+
class Heartbeat
|
612
|
+
include ::Google::Protobuf::MessageExts
|
613
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
614
|
+
end
|
615
|
+
|
616
|
+
# A message indicating that the client should stop reading from the stream.
|
617
|
+
# If status is OK and `continuation_tokens` is empty, the stream has finished
|
618
|
+
# (for example if there was an `end_time` specified).
|
619
|
+
# If `continuation_tokens` is present, then a change in partitioning requires
|
620
|
+
# the client to open a new stream for each token to resume reading.
|
621
|
+
# @!attribute [rw] status
|
622
|
+
# @return [::Google::Rpc::Status]
|
623
|
+
# The status of the stream.
|
624
|
+
# @!attribute [rw] continuation_tokens
|
625
|
+
# @return [::Array<::Google::Cloud::Bigtable::V2::StreamContinuationToken>]
|
626
|
+
# If non-empty, contains the information needed to start reading the new
|
627
|
+
# partition(s) that contain segments of this partition's row range.
|
628
|
+
class CloseStream
|
629
|
+
include ::Google::Protobuf::MessageExts
|
630
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
631
|
+
end
|
632
|
+
end
|
403
633
|
end
|
404
634
|
end
|
405
635
|
end
|
@@ -550,6 +550,42 @@ module Google
|
|
550
550
|
include ::Google::Protobuf::MessageExts
|
551
551
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
552
552
|
end
|
553
|
+
|
554
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
555
|
+
# A partition of a change stream.
|
556
|
+
# @!attribute [rw] row_range
|
557
|
+
# @return [::Google::Cloud::Bigtable::V2::RowRange]
|
558
|
+
# The row range covered by this partition and is specified by
|
559
|
+
# [`start_key_closed`, `end_key_open`).
|
560
|
+
class StreamPartition
|
561
|
+
include ::Google::Protobuf::MessageExts
|
562
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
563
|
+
end
|
564
|
+
|
565
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
566
|
+
# The information required to continue reading the data from multiple
|
567
|
+
# `StreamPartitions` from where a previous read left off.
|
568
|
+
# @!attribute [rw] tokens
|
569
|
+
# @return [::Array<::Google::Cloud::Bigtable::V2::StreamContinuationToken>]
|
570
|
+
# List of continuation tokens.
|
571
|
+
class StreamContinuationTokens
|
572
|
+
include ::Google::Protobuf::MessageExts
|
573
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
574
|
+
end
|
575
|
+
|
576
|
+
# NOTE: This API is intended to be used by Apache Beam BigtableIO.
|
577
|
+
# The information required to continue reading the data from a
|
578
|
+
# `StreamPartition` from where a previous read left off.
|
579
|
+
# @!attribute [rw] partition
|
580
|
+
# @return [::Google::Cloud::Bigtable::V2::StreamPartition]
|
581
|
+
# The partition that this token applies to.
|
582
|
+
# @!attribute [rw] token
|
583
|
+
# @return [::String]
|
584
|
+
# An encoded position in the stream to restart reading from.
|
585
|
+
class StreamContinuationToken
|
586
|
+
include ::Google::Protobuf::MessageExts
|
587
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
588
|
+
end
|
553
589
|
end
|
554
590
|
end
|
555
591
|
end
|