Google Cloud BigQuery C++ Client 2.13.0
A C++ Client Library for Google Cloud BigQuery
Loading...
Searching...
No Matches
metastore_client.h
1// Copyright 2023 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// https://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Generated by the Codegen C++ plugin.
16// If you make any local changes, they will be lost.
17// source: google/cloud/bigquery/biglake/v1/metastore.proto
18
19#ifndef GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_BIGQUERY_BIGLAKE_V1_METASTORE_CLIENT_H
20#define GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_BIGQUERY_BIGLAKE_V1_METASTORE_CLIENT_H
21
22#include "google/cloud/bigquery/biglake/v1/metastore_connection.h"
23#include "google/cloud/future.h"
24#include "google/cloud/options.h"
25#include "google/cloud/polling_policy.h"
26#include "google/cloud/status_or.h"
27#include "google/cloud/version.h"
28#include <memory>
29
30namespace google {
31namespace cloud {
32namespace bigquery_biglake_v1 {
33GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_BEGIN
34
35///
36/// BigLake Metastore is a serverless, highly available, multi-tenant runtime
37/// metastore for Google Cloud Data Analytics products.
38///
39/// The BigLake Metastore API defines the following resource model:
40///
41/// * A collection of Google Cloud projects: `/projects/*`
42/// * Each project has a collection of available locations: `/locations/*`
43/// * Each location has a collection of catalogs: `/catalogs/*`
44/// * Each catalog has a collection of databases: `/databases/*`
45/// * Each database has a collection of tables: `/tables/*`
46///
47/// @par Equality
48///
49/// Instances of this class created via copy-construction or copy-assignment
50/// always compare equal. Instances created with equal
51/// `std::shared_ptr<*Connection>` objects compare equal. Objects that compare
52/// equal share the same underlying resources.
53///
54/// @par Performance
55///
56/// Creating a new instance of this class is a relatively expensive operation,
57/// new objects establish new connections to the service. In contrast,
58/// copy-construction, move-construction, and the corresponding assignment
59/// operations are relatively efficient as the copies share all underlying
60/// resources.
61///
62/// @par Thread Safety
63///
64/// Concurrent access to different instances of this class, even if they compare
65/// equal, is guaranteed to work. Two or more threads operating on the same
66/// instance of this class is not guaranteed to work. Since copy-construction
67/// and move-construction is a relatively efficient operation, consider using
68/// such a copy when using this class from multiple threads.
69///
71 public:
73 std::shared_ptr<MetastoreServiceConnection> connection,
74 Options opts = {});
76
77 ///@{
78 /// @name Copy and move support
83 ///@}
84
85 ///@{
86 /// @name Equality
87 friend bool operator==(MetastoreServiceClient const& a,
88 MetastoreServiceClient const& b) {
89 return a.connection_ == b.connection_;
90 }
91 friend bool operator!=(MetastoreServiceClient const& a,
92 MetastoreServiceClient const& b) {
93 return !(a == b);
94 }
95 ///@}
96
97 // clang-format off
98 ///
99 /// Creates a new catalog.
100 ///
101 /// @param parent Required. The parent resource where this catalog will be created.
102 /// Format: projects/{project_id_or_number}/locations/{location_id}
103 /// @param catalog Required. The catalog to create.
104 /// The `name` field does not need to be provided.
105 /// @param catalog_id Required. The ID to use for the catalog, which will become the final
106 /// component of the catalog's resource name.
107 /// @param opts Optional. Override the class-level options, such as retry and
108 /// backoff policies.
109 /// @return the result of the RPC. The response message type
110 /// ([google.cloud.bigquery.biglake.v1.Catalog])
111 /// is mapped to a C++ class using the [Protobuf mapping rules].
112 /// If the request fails, the [`StatusOr`] contains the error details.
113 ///
114 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
115 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
116 /// [Long Running Operation]: https://google.aip.dev/151
117 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
118 /// [`future`]: @ref google::cloud::future
119 /// [`StatusOr`]: @ref google::cloud::StatusOr
120 /// [`Status`]: @ref google::cloud::Status
121 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
122 /// [google.cloud.bigquery.biglake.v1.CreateCatalogRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L336}
123 ///
124 // clang-format on
125 StatusOr<google::cloud::bigquery::biglake::v1::Catalog> CreateCatalog(
126 std::string const& parent,
127 google::cloud::bigquery::biglake::v1::Catalog const& catalog,
128 std::string const& catalog_id, Options opts = {});
129
130 // clang-format off
131 ///
132 /// Creates a new catalog.
133 ///
134 /// @param request Unary RPCs, such as the one wrapped by this
135 /// function, receive a single `request` proto message which includes all
136 /// the inputs for the RPC. In this case, the proto message is a
137 /// [google.cloud.bigquery.biglake.v1.CreateCatalogRequest].
138 /// Proto messages are converted to C++ classes by Protobuf, using the
139 /// [Protobuf mapping rules].
140 /// @param opts Optional. Override the class-level options, such as retry and
141 /// backoff policies.
142 /// @return the result of the RPC. The response message type
143 /// ([google.cloud.bigquery.biglake.v1.Catalog])
144 /// is mapped to a C++ class using the [Protobuf mapping rules].
145 /// If the request fails, the [`StatusOr`] contains the error details.
146 ///
147 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
148 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
149 /// [Long Running Operation]: https://google.aip.dev/151
150 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
151 /// [`future`]: @ref google::cloud::future
152 /// [`StatusOr`]: @ref google::cloud::StatusOr
153 /// [`Status`]: @ref google::cloud::Status
154 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
155 /// [google.cloud.bigquery.biglake.v1.CreateCatalogRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L336}
156 ///
157 // clang-format on
158 StatusOr<google::cloud::bigquery::biglake::v1::Catalog> CreateCatalog(
159 google::cloud::bigquery::biglake::v1::CreateCatalogRequest const& request,
160 Options opts = {});
161
162 // clang-format off
163 ///
164 /// Deletes an existing catalog specified by the catalog ID.
165 ///
166 /// @param name Required. The name of the catalog to delete.
167 /// Format:
168 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}
169 /// @param opts Optional. Override the class-level options, such as retry and
170 /// backoff policies.
171 /// @return the result of the RPC. The response message type
172 /// ([google.cloud.bigquery.biglake.v1.Catalog])
173 /// is mapped to a C++ class using the [Protobuf mapping rules].
174 /// If the request fails, the [`StatusOr`] contains the error details.
175 ///
176 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
177 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
178 /// [Long Running Operation]: https://google.aip.dev/151
179 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
180 /// [`future`]: @ref google::cloud::future
181 /// [`StatusOr`]: @ref google::cloud::StatusOr
182 /// [`Status`]: @ref google::cloud::Status
183 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
184 /// [google.cloud.bigquery.biglake.v1.DeleteCatalogRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L356}
185 ///
186 // clang-format on
187 StatusOr<google::cloud::bigquery::biglake::v1::Catalog> DeleteCatalog(
188 std::string const& name, Options opts = {});
189
190 // clang-format off
191 ///
192 /// Deletes an existing catalog specified by the catalog ID.
193 ///
194 /// @param request Unary RPCs, such as the one wrapped by this
195 /// function, receive a single `request` proto message which includes all
196 /// the inputs for the RPC. In this case, the proto message is a
197 /// [google.cloud.bigquery.biglake.v1.DeleteCatalogRequest].
198 /// Proto messages are converted to C++ classes by Protobuf, using the
199 /// [Protobuf mapping rules].
200 /// @param opts Optional. Override the class-level options, such as retry and
201 /// backoff policies.
202 /// @return the result of the RPC. The response message type
203 /// ([google.cloud.bigquery.biglake.v1.Catalog])
204 /// is mapped to a C++ class using the [Protobuf mapping rules].
205 /// If the request fails, the [`StatusOr`] contains the error details.
206 ///
207 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
208 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
209 /// [Long Running Operation]: https://google.aip.dev/151
210 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
211 /// [`future`]: @ref google::cloud::future
212 /// [`StatusOr`]: @ref google::cloud::StatusOr
213 /// [`Status`]: @ref google::cloud::Status
214 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
215 /// [google.cloud.bigquery.biglake.v1.DeleteCatalogRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L356}
216 ///
217 // clang-format on
218 StatusOr<google::cloud::bigquery::biglake::v1::Catalog> DeleteCatalog(
219 google::cloud::bigquery::biglake::v1::DeleteCatalogRequest const& request,
220 Options opts = {});
221
222 // clang-format off
223 ///
224 /// Gets the catalog specified by the resource name.
225 ///
226 /// @param name Required. The name of the catalog to retrieve.
227 /// Format:
228 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}
229 /// @param opts Optional. Override the class-level options, such as retry and
230 /// backoff policies.
231 /// @return the result of the RPC. The response message type
232 /// ([google.cloud.bigquery.biglake.v1.Catalog])
233 /// is mapped to a C++ class using the [Protobuf mapping rules].
234 /// If the request fails, the [`StatusOr`] contains the error details.
235 ///
236 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
237 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
238 /// [Long Running Operation]: https://google.aip.dev/151
239 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
240 /// [`future`]: @ref google::cloud::future
241 /// [`StatusOr`]: @ref google::cloud::StatusOr
242 /// [`Status`]: @ref google::cloud::Status
243 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
244 /// [google.cloud.bigquery.biglake.v1.GetCatalogRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L367}
245 ///
246 // clang-format on
247 StatusOr<google::cloud::bigquery::biglake::v1::Catalog> GetCatalog(
248 std::string const& name, Options opts = {});
249
250 // clang-format off
251 ///
252 /// Gets the catalog specified by the resource name.
253 ///
254 /// @param request Unary RPCs, such as the one wrapped by this
255 /// function, receive a single `request` proto message which includes all
256 /// the inputs for the RPC. In this case, the proto message is a
257 /// [google.cloud.bigquery.biglake.v1.GetCatalogRequest].
258 /// Proto messages are converted to C++ classes by Protobuf, using the
259 /// [Protobuf mapping rules].
260 /// @param opts Optional. Override the class-level options, such as retry and
261 /// backoff policies.
262 /// @return the result of the RPC. The response message type
263 /// ([google.cloud.bigquery.biglake.v1.Catalog])
264 /// is mapped to a C++ class using the [Protobuf mapping rules].
265 /// If the request fails, the [`StatusOr`] contains the error details.
266 ///
267 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
268 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
269 /// [Long Running Operation]: https://google.aip.dev/151
270 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
271 /// [`future`]: @ref google::cloud::future
272 /// [`StatusOr`]: @ref google::cloud::StatusOr
273 /// [`Status`]: @ref google::cloud::Status
274 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
275 /// [google.cloud.bigquery.biglake.v1.GetCatalogRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L367}
276 ///
277 // clang-format on
278 StatusOr<google::cloud::bigquery::biglake::v1::Catalog> GetCatalog(
279 google::cloud::bigquery::biglake::v1::GetCatalogRequest const& request,
280 Options opts = {});
281
282 // clang-format off
283 ///
284 /// List all catalogs in a specified project.
285 ///
286 /// @param parent Required. The parent, which owns this collection of catalogs.
287 /// Format: projects/{project_id_or_number}/locations/{location_id}
288 /// @param opts Optional. Override the class-level options, such as retry and
289 /// backoff policies.
290 /// @return a [StreamRange](@ref google::cloud::StreamRange)
291 /// to iterate of the results. See the documentation of this type for
292 /// details. In brief, this class has `begin()` and `end()` member
293 /// functions returning a iterator class meeting the
294 /// [input iterator requirements]. The value type for this iterator is a
295 /// [`StatusOr`] as the iteration may fail even after some values are
296 /// retrieved successfully, for example, if there is a network disconnect.
297 /// An empty set of results does not indicate an error, it indicates
298 /// that there are no resources meeting the request criteria.
299 /// On a successful iteration the `StatusOr<T>` contains elements of type
300 /// [google.cloud.bigquery.biglake.v1.Catalog], or rather,
301 /// the C++ class generated by Protobuf from that type. Please consult the
302 /// Protobuf documentation for details on the [Protobuf mapping rules].
303 ///
304 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
305 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
306 /// [Long Running Operation]: https://google.aip.dev/151
307 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
308 /// [`future`]: @ref google::cloud::future
309 /// [`StatusOr`]: @ref google::cloud::StatusOr
310 /// [`Status`]: @ref google::cloud::Status
311 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
312 /// [google.cloud.bigquery.biglake.v1.ListCatalogsRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L378}
313 ///
314 // clang-format on
315 StreamRange<google::cloud::bigquery::biglake::v1::Catalog> ListCatalogs(
316 std::string const& parent, Options opts = {});
317
318 // clang-format off
319 ///
320 /// List all catalogs in a specified project.
321 ///
322 /// @param request Unary RPCs, such as the one wrapped by this
323 /// function, receive a single `request` proto message which includes all
324 /// the inputs for the RPC. In this case, the proto message is a
325 /// [google.cloud.bigquery.biglake.v1.ListCatalogsRequest].
326 /// Proto messages are converted to C++ classes by Protobuf, using the
327 /// [Protobuf mapping rules].
328 /// @param opts Optional. Override the class-level options, such as retry and
329 /// backoff policies.
330 /// @return a [StreamRange](@ref google::cloud::StreamRange)
331 /// to iterate of the results. See the documentation of this type for
332 /// details. In brief, this class has `begin()` and `end()` member
333 /// functions returning a iterator class meeting the
334 /// [input iterator requirements]. The value type for this iterator is a
335 /// [`StatusOr`] as the iteration may fail even after some values are
336 /// retrieved successfully, for example, if there is a network disconnect.
337 /// An empty set of results does not indicate an error, it indicates
338 /// that there are no resources meeting the request criteria.
339 /// On a successful iteration the `StatusOr<T>` contains elements of type
340 /// [google.cloud.bigquery.biglake.v1.Catalog], or rather,
341 /// the C++ class generated by Protobuf from that type. Please consult the
342 /// Protobuf documentation for details on the [Protobuf mapping rules].
343 ///
344 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
345 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
346 /// [Long Running Operation]: https://google.aip.dev/151
347 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
348 /// [`future`]: @ref google::cloud::future
349 /// [`StatusOr`]: @ref google::cloud::StatusOr
350 /// [`Status`]: @ref google::cloud::Status
351 /// [google.cloud.bigquery.biglake.v1.Catalog]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L189}
352 /// [google.cloud.bigquery.biglake.v1.ListCatalogsRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L378}
353 ///
354 // clang-format on
355 StreamRange<google::cloud::bigquery::biglake::v1::Catalog> ListCatalogs(
356 google::cloud::bigquery::biglake::v1::ListCatalogsRequest request,
357 Options opts = {});
358
359 // clang-format off
360 ///
361 /// Creates a new database.
362 ///
363 /// @param parent Required. The parent resource where this database will be created.
364 /// Format:
365 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}
366 /// @param database Required. The database to create.
367 /// The `name` field does not need to be provided.
368 /// @param database_id Required. The ID to use for the database, which will become the final
369 /// component of the database's resource name.
370 /// @param opts Optional. Override the class-level options, such as retry and
371 /// backoff policies.
372 /// @return the result of the RPC. The response message type
373 /// ([google.cloud.bigquery.biglake.v1.Database])
374 /// is mapped to a C++ class using the [Protobuf mapping rules].
375 /// If the request fails, the [`StatusOr`] contains the error details.
376 ///
377 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
378 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
379 /// [Long Running Operation]: https://google.aip.dev/151
380 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
381 /// [`future`]: @ref google::cloud::future
382 /// [`StatusOr`]: @ref google::cloud::StatusOr
383 /// [`Status`]: @ref google::cloud::Status
384 /// [google.cloud.bigquery.biglake.v1.CreateDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L413}
385 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
386 ///
387 // clang-format on
388 StatusOr<google::cloud::bigquery::biglake::v1::Database> CreateDatabase(
389 std::string const& parent,
390 google::cloud::bigquery::biglake::v1::Database const& database,
391 std::string const& database_id, Options opts = {});
392
393 // clang-format off
394 ///
395 /// Creates a new database.
396 ///
397 /// @param request Unary RPCs, such as the one wrapped by this
398 /// function, receive a single `request` proto message which includes all
399 /// the inputs for the RPC. In this case, the proto message is a
400 /// [google.cloud.bigquery.biglake.v1.CreateDatabaseRequest].
401 /// Proto messages are converted to C++ classes by Protobuf, using the
402 /// [Protobuf mapping rules].
403 /// @param opts Optional. Override the class-level options, such as retry and
404 /// backoff policies.
405 /// @return the result of the RPC. The response message type
406 /// ([google.cloud.bigquery.biglake.v1.Database])
407 /// is mapped to a C++ class using the [Protobuf mapping rules].
408 /// If the request fails, the [`StatusOr`] contains the error details.
409 ///
410 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
411 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
412 /// [Long Running Operation]: https://google.aip.dev/151
413 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
414 /// [`future`]: @ref google::cloud::future
415 /// [`StatusOr`]: @ref google::cloud::StatusOr
416 /// [`Status`]: @ref google::cloud::Status
417 /// [google.cloud.bigquery.biglake.v1.CreateDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L413}
418 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
419 ///
420 // clang-format on
421 StatusOr<google::cloud::bigquery::biglake::v1::Database> CreateDatabase(
422 google::cloud::bigquery::biglake::v1::CreateDatabaseRequest const&
423 request,
424 Options opts = {});
425
426 // clang-format off
427 ///
428 /// Deletes an existing database specified by the database ID.
429 ///
430 /// @param name Required. The name of the database to delete.
431 /// Format:
432 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}
433 /// @param opts Optional. Override the class-level options, such as retry and
434 /// backoff policies.
435 /// @return the result of the RPC. The response message type
436 /// ([google.cloud.bigquery.biglake.v1.Database])
437 /// is mapped to a C++ class using the [Protobuf mapping rules].
438 /// If the request fails, the [`StatusOr`] contains the error details.
439 ///
440 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
441 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
442 /// [Long Running Operation]: https://google.aip.dev/151
443 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
444 /// [`future`]: @ref google::cloud::future
445 /// [`StatusOr`]: @ref google::cloud::StatusOr
446 /// [`Status`]: @ref google::cloud::Status
447 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
448 /// [google.cloud.bigquery.biglake.v1.DeleteDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L432}
449 ///
450 // clang-format on
451 StatusOr<google::cloud::bigquery::biglake::v1::Database> DeleteDatabase(
452 std::string const& name, Options opts = {});
453
454 // clang-format off
455 ///
456 /// Deletes an existing database specified by the database ID.
457 ///
458 /// @param request Unary RPCs, such as the one wrapped by this
459 /// function, receive a single `request` proto message which includes all
460 /// the inputs for the RPC. In this case, the proto message is a
461 /// [google.cloud.bigquery.biglake.v1.DeleteDatabaseRequest].
462 /// Proto messages are converted to C++ classes by Protobuf, using the
463 /// [Protobuf mapping rules].
464 /// @param opts Optional. Override the class-level options, such as retry and
465 /// backoff policies.
466 /// @return the result of the RPC. The response message type
467 /// ([google.cloud.bigquery.biglake.v1.Database])
468 /// is mapped to a C++ class using the [Protobuf mapping rules].
469 /// If the request fails, the [`StatusOr`] contains the error details.
470 ///
471 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
472 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
473 /// [Long Running Operation]: https://google.aip.dev/151
474 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
475 /// [`future`]: @ref google::cloud::future
476 /// [`StatusOr`]: @ref google::cloud::StatusOr
477 /// [`Status`]: @ref google::cloud::Status
478 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
479 /// [google.cloud.bigquery.biglake.v1.DeleteDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L432}
480 ///
481 // clang-format on
482 StatusOr<google::cloud::bigquery::biglake::v1::Database> DeleteDatabase(
483 google::cloud::bigquery::biglake::v1::DeleteDatabaseRequest const&
484 request,
485 Options opts = {});
486
487 // clang-format off
488 ///
489 /// Updates an existing database specified by the database ID.
490 ///
491 /// @param database Required. The database to update.
492 /// @n
493 /// The database's `name` field is used to identify the database to update.
494 /// Format:
495 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}
496 /// @param update_mask The list of fields to update.
497 /// @n
498 /// For the `FieldMask` definition, see
499 /// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
500 /// If not set, defaults to all of the fields that are allowed to update.
501 /// @param opts Optional. Override the class-level options, such as retry and
502 /// backoff policies.
503 /// @return the result of the RPC. The response message type
504 /// ([google.cloud.bigquery.biglake.v1.Database])
505 /// is mapped to a C++ class using the [Protobuf mapping rules].
506 /// If the request fails, the [`StatusOr`] contains the error details.
507 ///
508 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
509 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
510 /// [Long Running Operation]: https://google.aip.dev/151
511 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
512 /// [`future`]: @ref google::cloud::future
513 /// [`StatusOr`]: @ref google::cloud::StatusOr
514 /// [`Status`]: @ref google::cloud::Status
515 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
516 /// [google.cloud.bigquery.biglake.v1.UpdateDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L445}
517 ///
518 // clang-format on
519 StatusOr<google::cloud::bigquery::biglake::v1::Database> UpdateDatabase(
520 google::cloud::bigquery::biglake::v1::Database const& database,
521 google::protobuf::FieldMask const& update_mask, Options opts = {});
522
523 // clang-format off
524 ///
525 /// Updates an existing database specified by the database ID.
526 ///
527 /// @param request Unary RPCs, such as the one wrapped by this
528 /// function, receive a single `request` proto message which includes all
529 /// the inputs for the RPC. In this case, the proto message is a
530 /// [google.cloud.bigquery.biglake.v1.UpdateDatabaseRequest].
531 /// Proto messages are converted to C++ classes by Protobuf, using the
532 /// [Protobuf mapping rules].
533 /// @param opts Optional. Override the class-level options, such as retry and
534 /// backoff policies.
535 /// @return the result of the RPC. The response message type
536 /// ([google.cloud.bigquery.biglake.v1.Database])
537 /// is mapped to a C++ class using the [Protobuf mapping rules].
538 /// If the request fails, the [`StatusOr`] contains the error details.
539 ///
540 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
541 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
542 /// [Long Running Operation]: https://google.aip.dev/151
543 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
544 /// [`future`]: @ref google::cloud::future
545 /// [`StatusOr`]: @ref google::cloud::StatusOr
546 /// [`Status`]: @ref google::cloud::Status
547 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
548 /// [google.cloud.bigquery.biglake.v1.UpdateDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L445}
549 ///
550 // clang-format on
551 StatusOr<google::cloud::bigquery::biglake::v1::Database> UpdateDatabase(
552 google::cloud::bigquery::biglake::v1::UpdateDatabaseRequest const&
553 request,
554 Options opts = {});
555
556 // clang-format off
557 ///
558 /// Gets the database specified by the resource name.
559 ///
560 /// @param name Required. The name of the database to retrieve.
561 /// Format:
562 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}
563 /// @param opts Optional. Override the class-level options, such as retry and
564 /// backoff policies.
565 /// @return the result of the RPC. The response message type
566 /// ([google.cloud.bigquery.biglake.v1.Database])
567 /// is mapped to a C++ class using the [Protobuf mapping rules].
568 /// If the request fails, the [`StatusOr`] contains the error details.
569 ///
570 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
571 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
572 /// [Long Running Operation]: https://google.aip.dev/151
573 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
574 /// [`future`]: @ref google::cloud::future
575 /// [`StatusOr`]: @ref google::cloud::StatusOr
576 /// [`Status`]: @ref google::cloud::Status
577 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
578 /// [google.cloud.bigquery.biglake.v1.GetDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L462}
579 ///
580 // clang-format on
581 StatusOr<google::cloud::bigquery::biglake::v1::Database> GetDatabase(
582 std::string const& name, Options opts = {});
583
584 // clang-format off
585 ///
586 /// Gets the database specified by the resource name.
587 ///
588 /// @param request Unary RPCs, such as the one wrapped by this
589 /// function, receive a single `request` proto message which includes all
590 /// the inputs for the RPC. In this case, the proto message is a
591 /// [google.cloud.bigquery.biglake.v1.GetDatabaseRequest].
592 /// Proto messages are converted to C++ classes by Protobuf, using the
593 /// [Protobuf mapping rules].
594 /// @param opts Optional. Override the class-level options, such as retry and
595 /// backoff policies.
596 /// @return the result of the RPC. The response message type
597 /// ([google.cloud.bigquery.biglake.v1.Database])
598 /// is mapped to a C++ class using the [Protobuf mapping rules].
599 /// If the request fails, the [`StatusOr`] contains the error details.
600 ///
601 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
602 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
603 /// [Long Running Operation]: https://google.aip.dev/151
604 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
605 /// [`future`]: @ref google::cloud::future
606 /// [`StatusOr`]: @ref google::cloud::StatusOr
607 /// [`Status`]: @ref google::cloud::Status
608 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
609 /// [google.cloud.bigquery.biglake.v1.GetDatabaseRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L462}
610 ///
611 // clang-format on
612 StatusOr<google::cloud::bigquery::biglake::v1::Database> GetDatabase(
613 google::cloud::bigquery::biglake::v1::GetDatabaseRequest const& request,
614 Options opts = {});
615
616 // clang-format off
617 ///
618 /// List all databases in a specified catalog.
619 ///
620 /// @param parent Required. The parent, which owns this collection of databases.
621 /// Format:
622 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}
623 /// @param opts Optional. Override the class-level options, such as retry and
624 /// backoff policies.
625 /// @return a [StreamRange](@ref google::cloud::StreamRange)
626 /// to iterate of the results. See the documentation of this type for
627 /// details. In brief, this class has `begin()` and `end()` member
628 /// functions returning a iterator class meeting the
629 /// [input iterator requirements]. The value type for this iterator is a
630 /// [`StatusOr`] as the iteration may fail even after some values are
631 /// retrieved successfully, for example, if there is a network disconnect.
632 /// An empty set of results does not indicate an error, it indicates
633 /// that there are no resources meeting the request criteria.
634 /// On a successful iteration the `StatusOr<T>` contains elements of type
635 /// [google.cloud.bigquery.biglake.v1.Database], or rather,
636 /// the C++ class generated by Protobuf from that type. Please consult the
637 /// Protobuf documentation for details on the [Protobuf mapping rules].
638 ///
639 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
640 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
641 /// [Long Running Operation]: https://google.aip.dev/151
642 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
643 /// [`future`]: @ref google::cloud::future
644 /// [`StatusOr`]: @ref google::cloud::StatusOr
645 /// [`Status`]: @ref google::cloud::Status
646 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
647 /// [google.cloud.bigquery.biglake.v1.ListDatabasesRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L475}
648 ///
649 // clang-format on
650 StreamRange<google::cloud::bigquery::biglake::v1::Database> ListDatabases(
651 std::string const& parent, Options opts = {});
652
653 // clang-format off
654 ///
655 /// List all databases in a specified catalog.
656 ///
657 /// @param request Unary RPCs, such as the one wrapped by this
658 /// function, receive a single `request` proto message which includes all
659 /// the inputs for the RPC. In this case, the proto message is a
660 /// [google.cloud.bigquery.biglake.v1.ListDatabasesRequest].
661 /// Proto messages are converted to C++ classes by Protobuf, using the
662 /// [Protobuf mapping rules].
663 /// @param opts Optional. Override the class-level options, such as retry and
664 /// backoff policies.
665 /// @return a [StreamRange](@ref google::cloud::StreamRange)
666 /// to iterate of the results. See the documentation of this type for
667 /// details. In brief, this class has `begin()` and `end()` member
668 /// functions returning a iterator class meeting the
669 /// [input iterator requirements]. The value type for this iterator is a
670 /// [`StatusOr`] as the iteration may fail even after some values are
671 /// retrieved successfully, for example, if there is a network disconnect.
672 /// An empty set of results does not indicate an error, it indicates
673 /// that there are no resources meeting the request criteria.
674 /// On a successful iteration the `StatusOr<T>` contains elements of type
675 /// [google.cloud.bigquery.biglake.v1.Database], or rather,
676 /// the C++ class generated by Protobuf from that type. Please consult the
677 /// Protobuf documentation for details on the [Protobuf mapping rules].
678 ///
679 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
680 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
681 /// [Long Running Operation]: https://google.aip.dev/151
682 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
683 /// [`future`]: @ref google::cloud::future
684 /// [`StatusOr`]: @ref google::cloud::StatusOr
685 /// [`Status`]: @ref google::cloud::Status
686 /// [google.cloud.bigquery.biglake.v1.Database]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L223}
687 /// [google.cloud.bigquery.biglake.v1.ListDatabasesRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L475}
688 ///
689 // clang-format on
690 StreamRange<google::cloud::bigquery::biglake::v1::Database> ListDatabases(
691 google::cloud::bigquery::biglake::v1::ListDatabasesRequest request,
692 Options opts = {});
693
694 // clang-format off
695 ///
696 /// Creates a new table.
697 ///
698 /// @param parent Required. The parent resource where this table will be created.
699 /// Format:
700 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}
701 /// @param table Required. The table to create. The `name` field does not need to be
702 /// provided for the table creation.
703 /// @param table_id Required. The ID to use for the table, which will become the final
704 /// component of the table's resource name.
705 /// @param opts Optional. Override the class-level options, such as retry and
706 /// backoff policies.
707 /// @return the result of the RPC. The response message type
708 /// ([google.cloud.bigquery.biglake.v1.Table])
709 /// is mapped to a C++ class using the [Protobuf mapping rules].
710 /// If the request fails, the [`StatusOr`] contains the error details.
711 ///
712 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
713 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
714 /// [Long Running Operation]: https://google.aip.dev/151
715 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
716 /// [`future`]: @ref google::cloud::future
717 /// [`StatusOr`]: @ref google::cloud::StatusOr
718 /// [`Status`]: @ref google::cloud::Status
719 /// [google.cloud.bigquery.biglake.v1.CreateTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L509}
720 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
721 ///
722 // clang-format on
723 StatusOr<google::cloud::bigquery::biglake::v1::Table> CreateTable(
724 std::string const& parent,
725 google::cloud::bigquery::biglake::v1::Table const& table,
726 std::string const& table_id, Options opts = {});
727
728 // clang-format off
729 ///
730 /// Creates a new table.
731 ///
732 /// @param request Unary RPCs, such as the one wrapped by this
733 /// function, receive a single `request` proto message which includes all
734 /// the inputs for the RPC. In this case, the proto message is a
735 /// [google.cloud.bigquery.biglake.v1.CreateTableRequest].
736 /// Proto messages are converted to C++ classes by Protobuf, using the
737 /// [Protobuf mapping rules].
738 /// @param opts Optional. Override the class-level options, such as retry and
739 /// backoff policies.
740 /// @return the result of the RPC. The response message type
741 /// ([google.cloud.bigquery.biglake.v1.Table])
742 /// is mapped to a C++ class using the [Protobuf mapping rules].
743 /// If the request fails, the [`StatusOr`] contains the error details.
744 ///
745 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
746 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
747 /// [Long Running Operation]: https://google.aip.dev/151
748 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
749 /// [`future`]: @ref google::cloud::future
750 /// [`StatusOr`]: @ref google::cloud::StatusOr
751 /// [`Status`]: @ref google::cloud::Status
752 /// [google.cloud.bigquery.biglake.v1.CreateTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L509}
753 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
754 ///
755 // clang-format on
756 StatusOr<google::cloud::bigquery::biglake::v1::Table> CreateTable(
757 google::cloud::bigquery::biglake::v1::CreateTableRequest const& request,
758 Options opts = {});
759
760 // clang-format off
761 ///
762 /// Deletes an existing table specified by the table ID.
763 ///
764 /// @param name Required. The name of the table to delete.
765 /// Format:
766 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}
767 /// @param opts Optional. Override the class-level options, such as retry and
768 /// backoff policies.
769 /// @return the result of the RPC. The response message type
770 /// ([google.cloud.bigquery.biglake.v1.Table])
771 /// is mapped to a C++ class using the [Protobuf mapping rules].
772 /// If the request fails, the [`StatusOr`] contains the error details.
773 ///
774 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
775 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
776 /// [Long Running Operation]: https://google.aip.dev/151
777 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
778 /// [`future`]: @ref google::cloud::future
779 /// [`StatusOr`]: @ref google::cloud::StatusOr
780 /// [`Status`]: @ref google::cloud::Status
781 /// [google.cloud.bigquery.biglake.v1.DeleteTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L530}
782 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
783 ///
784 // clang-format on
785 StatusOr<google::cloud::bigquery::biglake::v1::Table> DeleteTable(
786 std::string const& name, Options opts = {});
787
788 // clang-format off
789 ///
790 /// Deletes an existing table specified by the table ID.
791 ///
792 /// @param request Unary RPCs, such as the one wrapped by this
793 /// function, receive a single `request` proto message which includes all
794 /// the inputs for the RPC. In this case, the proto message is a
795 /// [google.cloud.bigquery.biglake.v1.DeleteTableRequest].
796 /// Proto messages are converted to C++ classes by Protobuf, using the
797 /// [Protobuf mapping rules].
798 /// @param opts Optional. Override the class-level options, such as retry and
799 /// backoff policies.
800 /// @return the result of the RPC. The response message type
801 /// ([google.cloud.bigquery.biglake.v1.Table])
802 /// is mapped to a C++ class using the [Protobuf mapping rules].
803 /// If the request fails, the [`StatusOr`] contains the error details.
804 ///
805 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
806 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
807 /// [Long Running Operation]: https://google.aip.dev/151
808 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
809 /// [`future`]: @ref google::cloud::future
810 /// [`StatusOr`]: @ref google::cloud::StatusOr
811 /// [`Status`]: @ref google::cloud::Status
812 /// [google.cloud.bigquery.biglake.v1.DeleteTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L530}
813 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
814 ///
815 // clang-format on
816 StatusOr<google::cloud::bigquery::biglake::v1::Table> DeleteTable(
817 google::cloud::bigquery::biglake::v1::DeleteTableRequest const& request,
818 Options opts = {});
819
820 // clang-format off
821 ///
822 /// Updates an existing table specified by the table ID.
823 ///
824 /// @param table Required. The table to update.
825 /// @n
826 /// The table's `name` field is used to identify the table to update.
827 /// Format:
828 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}
829 /// @param update_mask The list of fields to update.
830 /// @n
831 /// For the `FieldMask` definition, see
832 /// https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
833 /// If not set, defaults to all of the fields that are allowed to update.
834 /// @param opts Optional. Override the class-level options, such as retry and
835 /// backoff policies.
836 /// @return the result of the RPC. The response message type
837 /// ([google.cloud.bigquery.biglake.v1.Table])
838 /// is mapped to a C++ class using the [Protobuf mapping rules].
839 /// If the request fails, the [`StatusOr`] contains the error details.
840 ///
841 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
842 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
843 /// [Long Running Operation]: https://google.aip.dev/151
844 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
845 /// [`future`]: @ref google::cloud::future
846 /// [`StatusOr`]: @ref google::cloud::StatusOr
847 /// [`Status`]: @ref google::cloud::Status
848 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
849 /// [google.cloud.bigquery.biglake.v1.UpdateTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L541}
850 ///
851 // clang-format on
852 StatusOr<google::cloud::bigquery::biglake::v1::Table> UpdateTable(
853 google::cloud::bigquery::biglake::v1::Table const& table,
854 google::protobuf::FieldMask const& update_mask, Options opts = {});
855
856 // clang-format off
857 ///
858 /// Updates an existing table specified by the table ID.
859 ///
860 /// @param request Unary RPCs, such as the one wrapped by this
861 /// function, receive a single `request` proto message which includes all
862 /// the inputs for the RPC. In this case, the proto message is a
863 /// [google.cloud.bigquery.biglake.v1.UpdateTableRequest].
864 /// Proto messages are converted to C++ classes by Protobuf, using the
865 /// [Protobuf mapping rules].
866 /// @param opts Optional. Override the class-level options, such as retry and
867 /// backoff policies.
868 /// @return the result of the RPC. The response message type
869 /// ([google.cloud.bigquery.biglake.v1.Table])
870 /// is mapped to a C++ class using the [Protobuf mapping rules].
871 /// If the request fails, the [`StatusOr`] contains the error details.
872 ///
873 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
874 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
875 /// [Long Running Operation]: https://google.aip.dev/151
876 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
877 /// [`future`]: @ref google::cloud::future
878 /// [`StatusOr`]: @ref google::cloud::StatusOr
879 /// [`Status`]: @ref google::cloud::Status
880 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
881 /// [google.cloud.bigquery.biglake.v1.UpdateTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L541}
882 ///
883 // clang-format on
884 StatusOr<google::cloud::bigquery::biglake::v1::Table> UpdateTable(
885 google::cloud::bigquery::biglake::v1::UpdateTableRequest const& request,
886 Options opts = {});
887
888 // clang-format off
889 ///
890 /// Renames an existing table specified by the table ID.
891 ///
892 /// @param name Required. The table's `name` field is used to identify the table to rename.
893 /// Format:
894 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}
895 /// @param new_name Required. The new `name` for the specified table, must be in the same
896 /// database. Format:
897 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}
898 /// @param opts Optional. Override the class-level options, such as retry and
899 /// backoff policies.
900 /// @return the result of the RPC. The response message type
901 /// ([google.cloud.bigquery.biglake.v1.Table])
902 /// is mapped to a C++ class using the [Protobuf mapping rules].
903 /// If the request fails, the [`StatusOr`] contains the error details.
904 ///
905 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
906 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
907 /// [Long Running Operation]: https://google.aip.dev/151
908 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
909 /// [`future`]: @ref google::cloud::future
910 /// [`StatusOr`]: @ref google::cloud::StatusOr
911 /// [`Status`]: @ref google::cloud::Status
912 /// [google.cloud.bigquery.biglake.v1.RenameTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L558}
913 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
914 ///
915 // clang-format on
916 StatusOr<google::cloud::bigquery::biglake::v1::Table> RenameTable(
917 std::string const& name, std::string const& new_name, Options opts = {});
918
919 // clang-format off
920 ///
921 /// Renames an existing table specified by the table ID.
922 ///
923 /// @param request Unary RPCs, such as the one wrapped by this
924 /// function, receive a single `request` proto message which includes all
925 /// the inputs for the RPC. In this case, the proto message is a
926 /// [google.cloud.bigquery.biglake.v1.RenameTableRequest].
927 /// Proto messages are converted to C++ classes by Protobuf, using the
928 /// [Protobuf mapping rules].
929 /// @param opts Optional. Override the class-level options, such as retry and
930 /// backoff policies.
931 /// @return the result of the RPC. The response message type
932 /// ([google.cloud.bigquery.biglake.v1.Table])
933 /// is mapped to a C++ class using the [Protobuf mapping rules].
934 /// If the request fails, the [`StatusOr`] contains the error details.
935 ///
936 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
937 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
938 /// [Long Running Operation]: https://google.aip.dev/151
939 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
940 /// [`future`]: @ref google::cloud::future
941 /// [`StatusOr`]: @ref google::cloud::StatusOr
942 /// [`Status`]: @ref google::cloud::Status
943 /// [google.cloud.bigquery.biglake.v1.RenameTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L558}
944 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
945 ///
946 // clang-format on
947 StatusOr<google::cloud::bigquery::biglake::v1::Table> RenameTable(
948 google::cloud::bigquery::biglake::v1::RenameTableRequest const& request,
949 Options opts = {});
950
951 // clang-format off
952 ///
953 /// Gets the table specified by the resource name.
954 ///
955 /// @param name Required. The name of the table to retrieve.
956 /// Format:
957 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}/tables/{table_id}
958 /// @param opts Optional. Override the class-level options, such as retry and
959 /// backoff policies.
960 /// @return the result of the RPC. The response message type
961 /// ([google.cloud.bigquery.biglake.v1.Table])
962 /// is mapped to a C++ class using the [Protobuf mapping rules].
963 /// If the request fails, the [`StatusOr`] contains the error details.
964 ///
965 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
966 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
967 /// [Long Running Operation]: https://google.aip.dev/151
968 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
969 /// [`future`]: @ref google::cloud::future
970 /// [`StatusOr`]: @ref google::cloud::StatusOr
971 /// [`Status`]: @ref google::cloud::Status
972 /// [google.cloud.bigquery.biglake.v1.GetTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L577}
973 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
974 ///
975 // clang-format on
976 StatusOr<google::cloud::bigquery::biglake::v1::Table> GetTable(
977 std::string const& name, Options opts = {});
978
979 // clang-format off
980 ///
981 /// Gets the table specified by the resource name.
982 ///
983 /// @param request Unary RPCs, such as the one wrapped by this
984 /// function, receive a single `request` proto message which includes all
985 /// the inputs for the RPC. In this case, the proto message is a
986 /// [google.cloud.bigquery.biglake.v1.GetTableRequest].
987 /// Proto messages are converted to C++ classes by Protobuf, using the
988 /// [Protobuf mapping rules].
989 /// @param opts Optional. Override the class-level options, such as retry and
990 /// backoff policies.
991 /// @return the result of the RPC. The response message type
992 /// ([google.cloud.bigquery.biglake.v1.Table])
993 /// is mapped to a C++ class using the [Protobuf mapping rules].
994 /// If the request fails, the [`StatusOr`] contains the error details.
995 ///
996 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
997 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
998 /// [Long Running Operation]: https://google.aip.dev/151
999 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
1000 /// [`future`]: @ref google::cloud::future
1001 /// [`StatusOr`]: @ref google::cloud::StatusOr
1002 /// [`Status`]: @ref google::cloud::Status
1003 /// [google.cloud.bigquery.biglake.v1.GetTableRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L577}
1004 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
1005 ///
1006 // clang-format on
1007 StatusOr<google::cloud::bigquery::biglake::v1::Table> GetTable(
1008 google::cloud::bigquery::biglake::v1::GetTableRequest const& request,
1009 Options opts = {});
1010
1011 // clang-format off
1012 ///
1013 /// List all tables in a specified database.
1014 ///
1015 /// @param parent Required. The parent, which owns this collection of tables.
1016 /// Format:
1017 /// projects/{project_id_or_number}/locations/{location_id}/catalogs/{catalog_id}/databases/{database_id}
1018 /// @param opts Optional. Override the class-level options, such as retry and
1019 /// backoff policies.
1020 /// @return a [StreamRange](@ref google::cloud::StreamRange)
1021 /// to iterate of the results. See the documentation of this type for
1022 /// details. In brief, this class has `begin()` and `end()` member
1023 /// functions returning a iterator class meeting the
1024 /// [input iterator requirements]. The value type for this iterator is a
1025 /// [`StatusOr`] as the iteration may fail even after some values are
1026 /// retrieved successfully, for example, if there is a network disconnect.
1027 /// An empty set of results does not indicate an error, it indicates
1028 /// that there are no resources meeting the request criteria.
1029 /// On a successful iteration the `StatusOr<T>` contains elements of type
1030 /// [google.cloud.bigquery.biglake.v1.Table], or rather,
1031 /// the C++ class generated by Protobuf from that type. Please consult the
1032 /// Protobuf documentation for details on the [Protobuf mapping rules].
1033 ///
1034 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
1035 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
1036 /// [Long Running Operation]: https://google.aip.dev/151
1037 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
1038 /// [`future`]: @ref google::cloud::future
1039 /// [`StatusOr`]: @ref google::cloud::StatusOr
1040 /// [`Status`]: @ref google::cloud::Status
1041 /// [google.cloud.bigquery.biglake.v1.ListTablesRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L588}
1042 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
1043 ///
1044 // clang-format on
1045 StreamRange<google::cloud::bigquery::biglake::v1::Table> ListTables(
1046 std::string const& parent, Options opts = {});
1047
1048 // clang-format off
1049 ///
1050 /// List all tables in a specified database.
1051 ///
1052 /// @param request Unary RPCs, such as the one wrapped by this
1053 /// function, receive a single `request` proto message which includes all
1054 /// the inputs for the RPC. In this case, the proto message is a
1055 /// [google.cloud.bigquery.biglake.v1.ListTablesRequest].
1056 /// Proto messages are converted to C++ classes by Protobuf, using the
1057 /// [Protobuf mapping rules].
1058 /// @param opts Optional. Override the class-level options, such as retry and
1059 /// backoff policies.
1060 /// @return a [StreamRange](@ref google::cloud::StreamRange)
1061 /// to iterate of the results. See the documentation of this type for
1062 /// details. In brief, this class has `begin()` and `end()` member
1063 /// functions returning a iterator class meeting the
1064 /// [input iterator requirements]. The value type for this iterator is a
1065 /// [`StatusOr`] as the iteration may fail even after some values are
1066 /// retrieved successfully, for example, if there is a network disconnect.
1067 /// An empty set of results does not indicate an error, it indicates
1068 /// that there are no resources meeting the request criteria.
1069 /// On a successful iteration the `StatusOr<T>` contains elements of type
1070 /// [google.cloud.bigquery.biglake.v1.Table], or rather,
1071 /// the C++ class generated by Protobuf from that type. Please consult the
1072 /// Protobuf documentation for details on the [Protobuf mapping rules].
1073 ///
1074 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
1075 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
1076 /// [Long Running Operation]: https://google.aip.dev/151
1077 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
1078 /// [`future`]: @ref google::cloud::future
1079 /// [`StatusOr`]: @ref google::cloud::StatusOr
1080 /// [`Status`]: @ref google::cloud::Status
1081 /// [google.cloud.bigquery.biglake.v1.ListTablesRequest]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L588}
1082 /// [google.cloud.bigquery.biglake.v1.Table]: @googleapis_reference_link{google/cloud/bigquery/biglake/v1/metastore.proto#L278}
1083 ///
1084 // clang-format on
1085 StreamRange<google::cloud::bigquery::biglake::v1::Table> ListTables(
1086 google::cloud::bigquery::biglake::v1::ListTablesRequest request,
1087 Options opts = {});
1088
1089 private:
1090 std::shared_ptr<MetastoreServiceConnection> connection_;
1091 Options options_;
1092};
1093
1094GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END
1095} // namespace bigquery_biglake_v1
1096} // namespace cloud
1097} // namespace google
1098
1099#endif // GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_BIGQUERY_BIGLAKE_V1_METASTORE_CLIENT_H
BigLake Metastore is a serverless, highly available, multi-tenant runtime metastore for Google Cloud ...
Definition: metastore_client.h:70
StatusOr< google::cloud::bigquery::biglake::v1::Database > UpdateDatabase(google::cloud::bigquery::biglake::v1::Database const &database, google::protobuf::FieldMask const &update_mask, Options opts={})
Updates an existing database specified by the database ID.
StatusOr< google::cloud::bigquery::biglake::v1::Table > DeleteTable(google::cloud::bigquery::biglake::v1::DeleteTableRequest const &request, Options opts={})
Deletes an existing table specified by the table ID.
StatusOr< google::cloud::bigquery::biglake::v1::Database > DeleteDatabase(std::string const &name, Options opts={})
Deletes an existing database specified by the database ID.
StatusOr< google::cloud::bigquery::biglake::v1::Catalog > GetCatalog(std::string const &name, Options opts={})
Gets the catalog specified by the resource name.
StatusOr< google::cloud::bigquery::biglake::v1::Table > DeleteTable(std::string const &name, Options opts={})
Deletes an existing table specified by the table ID.
MetastoreServiceClient(MetastoreServiceClient const &)=default
StreamRange< google::cloud::bigquery::biglake::v1::Table > ListTables(std::string const &parent, Options opts={})
List all tables in a specified database.
StatusOr< google::cloud::bigquery::biglake::v1::Catalog > CreateCatalog(google::cloud::bigquery::biglake::v1::CreateCatalogRequest const &request, Options opts={})
Creates a new catalog.
MetastoreServiceClient(MetastoreServiceClient &&)=default
StreamRange< google::cloud::bigquery::biglake::v1::Database > ListDatabases(google::cloud::bigquery::biglake::v1::ListDatabasesRequest request, Options opts={})
List all databases in a specified catalog.
StatusOr< google::cloud::bigquery::biglake::v1::Catalog > GetCatalog(google::cloud::bigquery::biglake::v1::GetCatalogRequest const &request, Options opts={})
Gets the catalog specified by the resource name.
StreamRange< google::cloud::bigquery::biglake::v1::Catalog > ListCatalogs(std::string const &parent, Options opts={})
List all catalogs in a specified project.
StatusOr< google::cloud::bigquery::biglake::v1::Table > RenameTable(google::cloud::bigquery::biglake::v1::RenameTableRequest const &request, Options opts={})
Renames an existing table specified by the table ID.
StatusOr< google::cloud::bigquery::biglake::v1::Database > CreateDatabase(google::cloud::bigquery::biglake::v1::CreateDatabaseRequest const &request, Options opts={})
Creates a new database.
StatusOr< google::cloud::bigquery::biglake::v1::Catalog > DeleteCatalog(google::cloud::bigquery::biglake::v1::DeleteCatalogRequest const &request, Options opts={})
Deletes an existing catalog specified by the catalog ID.
StatusOr< google::cloud::bigquery::biglake::v1::Table > CreateTable(google::cloud::bigquery::biglake::v1::CreateTableRequest const &request, Options opts={})
Creates a new table.
StatusOr< google::cloud::bigquery::biglake::v1::Database > DeleteDatabase(google::cloud::bigquery::biglake::v1::DeleteDatabaseRequest const &request, Options opts={})
Deletes an existing database specified by the database ID.
StatusOr< google::cloud::bigquery::biglake::v1::Catalog > DeleteCatalog(std::string const &name, Options opts={})
Deletes an existing catalog specified by the catalog ID.
StatusOr< google::cloud::bigquery::biglake::v1::Database > CreateDatabase(std::string const &parent, google::cloud::bigquery::biglake::v1::Database const &database, std::string const &database_id, Options opts={})
Creates a new database.
MetastoreServiceClient & operator=(MetastoreServiceClient &&)=default
StatusOr< google::cloud::bigquery::biglake::v1::Catalog > CreateCatalog(std::string const &parent, google::cloud::bigquery::biglake::v1::Catalog const &catalog, std::string const &catalog_id, Options opts={})
Creates a new catalog.
StreamRange< google::cloud::bigquery::biglake::v1::Catalog > ListCatalogs(google::cloud::bigquery::biglake::v1::ListCatalogsRequest request, Options opts={})
List all catalogs in a specified project.
StatusOr< google::cloud::bigquery::biglake::v1::Table > UpdateTable(google::cloud::bigquery::biglake::v1::UpdateTableRequest const &request, Options opts={})
Updates an existing table specified by the table ID.
StatusOr< google::cloud::bigquery::biglake::v1::Table > UpdateTable(google::cloud::bigquery::biglake::v1::Table const &table, google::protobuf::FieldMask const &update_mask, Options opts={})
Updates an existing table specified by the table ID.
StatusOr< google::cloud::bigquery::biglake::v1::Database > UpdateDatabase(google::cloud::bigquery::biglake::v1::UpdateDatabaseRequest const &request, Options opts={})
Updates an existing database specified by the database ID.
StatusOr< google::cloud::bigquery::biglake::v1::Table > GetTable(std::string const &name, Options opts={})
Gets the table specified by the resource name.
friend bool operator!=(MetastoreServiceClient const &a, MetastoreServiceClient const &b)
Definition: metastore_client.h:91
StatusOr< google::cloud::bigquery::biglake::v1::Table > GetTable(google::cloud::bigquery::biglake::v1::GetTableRequest const &request, Options opts={})
Gets the table specified by the resource name.
MetastoreServiceClient(std::shared_ptr< MetastoreServiceConnection > connection, Options opts={})
StatusOr< google::cloud::bigquery::biglake::v1::Table > RenameTable(std::string const &name, std::string const &new_name, Options opts={})
Renames an existing table specified by the table ID.
StreamRange< google::cloud::bigquery::biglake::v1::Table > ListTables(google::cloud::bigquery::biglake::v1::ListTablesRequest request, Options opts={})
List all tables in a specified database.
StreamRange< google::cloud::bigquery::biglake::v1::Database > ListDatabases(std::string const &parent, Options opts={})
List all databases in a specified catalog.
StatusOr< google::cloud::bigquery::biglake::v1::Database > GetDatabase(google::cloud::bigquery::biglake::v1::GetDatabaseRequest const &request, Options opts={})
Gets the database specified by the resource name.
MetastoreServiceClient & operator=(MetastoreServiceClient const &)=default
StatusOr< google::cloud::bigquery::biglake::v1::Table > CreateTable(std::string const &parent, google::cloud::bigquery::biglake::v1::Table const &table, std::string const &table_id, Options opts={})
Creates a new table.
friend bool operator==(MetastoreServiceClient const &a, MetastoreServiceClient const &b)
Definition: metastore_client.h:87
StatusOr< google::cloud::bigquery::biglake::v1::Database > GetDatabase(std::string const &name, Options opts={})
Gets the database specified by the resource name.
The MetastoreServiceConnection object for MetastoreServiceClient.
Definition: metastore_connection.h:61
Definition: metastore_client.h:32
Definition: analytics_hub_client.h:30