Google Cloud BigQuery C++ Client 2.11.0
A C++ Client Library for Google Cloud BigQuery
Loading...
Searching...
No Matches
analytics_hub_client.h
1// Copyright 2022 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/analyticshub/v1/analyticshub.proto
18
19#ifndef GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_BIGQUERY_ANALYTICSHUB_V1_ANALYTICS_HUB_CLIENT_H
20#define GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_BIGQUERY_ANALYTICSHUB_V1_ANALYTICS_HUB_CLIENT_H
21
22#include "google/cloud/bigquery/analyticshub/v1/analytics_hub_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 {
33GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_BEGIN
34
35///
36/// The `AnalyticsHubService` API facilitates data sharing within and across
37/// organizations. It allows data providers to publish listings that reference
38/// shared datasets. With Analytics Hub, users can discover and search for
39/// listings that they have access to. Subscribers can view and subscribe to
40/// listings. When you subscribe to a listing, Analytics Hub creates a linked
41/// dataset in your project.
42///
43/// @par Equality
44///
45/// Instances of this class created via copy-construction or copy-assignment
46/// always compare equal. Instances created with equal
47/// `std::shared_ptr<*Connection>` objects compare equal. Objects that compare
48/// equal share the same underlying resources.
49///
50/// @par Performance
51///
52/// Creating a new instance of this class is a relatively expensive operation,
53/// new objects establish new connections to the service. In contrast,
54/// copy-construction, move-construction, and the corresponding assignment
55/// operations are relatively efficient as the copies share all underlying
56/// resources.
57///
58/// @par Thread Safety
59///
60/// Concurrent access to different instances of this class, even if they compare
61/// equal, is guaranteed to work. Two or more threads operating on the same
62/// instance of this class is not guaranteed to work. Since copy-construction
63/// and move-construction is a relatively efficient operation, consider using
64/// such a copy when using this class from multiple threads.
65///
67 public:
69 std::shared_ptr<AnalyticsHubServiceConnection> connection,
70 Options opts = {});
72
73 ///@{
74 /// @name Copy and move support
77 default;
80 ///@}
81
82 ///@{
83 /// @name Equality
84 friend bool operator==(AnalyticsHubServiceClient const& a,
86 return a.connection_ == b.connection_;
87 }
88 friend bool operator!=(AnalyticsHubServiceClient const& a,
90 return !(a == b);
91 }
92 ///@}
93
94 // clang-format off
95 ///
96 /// Lists all data exchanges in a given project and location.
97 ///
98 /// @param parent Required. The parent resource path of the data exchanges.
99 /// e.g. `projects/myproject/locations/US`.
100 /// @param opts Optional. Override the class-level options, such as retry and
101 /// backoff policies.
102 /// @return a [StreamRange](@ref google::cloud::StreamRange)
103 /// to iterate of the results. See the documentation of this type for
104 /// details. In brief, this class has `begin()` and `end()` member
105 /// functions returning a iterator class meeting the
106 /// [input iterator requirements]. The value type for this iterator is a
107 /// [`StatusOr`] as the iteration may fail even after some values are
108 /// retrieved successfully, for example, if there is a network disconnect.
109 /// An empty set of results does not indicate an error, it indicates
110 /// that there are no resources meeting the request criteria.
111 /// On a successful iteration the `StatusOr<T>` contains elements of type
112 /// [google.cloud.bigquery.analyticshub.v1.DataExchange], or rather,
113 /// the C++ class generated by Protobuf from that type. Please consult the
114 /// Protobuf documentation for details on the [Protobuf mapping rules].
115 ///
116 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
117 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
118 /// [Long Running Operation]: https://google.aip.dev/151
119 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
120 /// [`future`]: @ref google::cloud::future
121 /// [`StatusOr`]: @ref google::cloud::StatusOr
122 /// [`Status`]: @ref google::cloud::Status
123 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
124 /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L433}
125 ///
126 // clang-format on
127 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
128 ListDataExchanges(std::string const& parent, Options opts = {});
129
130 // clang-format off
131 ///
132 /// Lists all data exchanges in a given project and location.
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.analyticshub.v1.ListDataExchangesRequest].
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 a [StreamRange](@ref google::cloud::StreamRange)
143 /// to iterate of the results. See the documentation of this type for
144 /// details. In brief, this class has `begin()` and `end()` member
145 /// functions returning a iterator class meeting the
146 /// [input iterator requirements]. The value type for this iterator is a
147 /// [`StatusOr`] as the iteration may fail even after some values are
148 /// retrieved successfully, for example, if there is a network disconnect.
149 /// An empty set of results does not indicate an error, it indicates
150 /// that there are no resources meeting the request criteria.
151 /// On a successful iteration the `StatusOr<T>` contains elements of type
152 /// [google.cloud.bigquery.analyticshub.v1.DataExchange], or rather,
153 /// the C++ class generated by Protobuf from that type. Please consult the
154 /// Protobuf documentation for details on the [Protobuf mapping rules].
155 ///
156 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
157 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
158 /// [Long Running Operation]: https://google.aip.dev/151
159 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
160 /// [`future`]: @ref google::cloud::future
161 /// [`StatusOr`]: @ref google::cloud::StatusOr
162 /// [`Status`]: @ref google::cloud::Status
163 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
164 /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L433}
165 ///
166 // clang-format on
167 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
169 google::cloud::bigquery::analyticshub::v1::ListDataExchangesRequest
170 request,
171 Options opts = {});
172
173 // clang-format off
174 ///
175 /// Lists all data exchanges from projects in a given organization and
176 /// location.
177 ///
178 /// @param organization Required. The organization resource path of the projects containing DataExchanges.
179 /// e.g. `organizations/myorg/locations/US`.
180 /// @param opts Optional. Override the class-level options, such as retry and
181 /// backoff policies.
182 /// @return a [StreamRange](@ref google::cloud::StreamRange)
183 /// to iterate of the results. See the documentation of this type for
184 /// details. In brief, this class has `begin()` and `end()` member
185 /// functions returning a iterator class meeting the
186 /// [input iterator requirements]. The value type for this iterator is a
187 /// [`StatusOr`] as the iteration may fail even after some values are
188 /// retrieved successfully, for example, if there is a network disconnect.
189 /// An empty set of results does not indicate an error, it indicates
190 /// that there are no resources meeting the request criteria.
191 /// On a successful iteration the `StatusOr<T>` contains elements of type
192 /// [google.cloud.bigquery.analyticshub.v1.DataExchange], or rather,
193 /// the C++ class generated by Protobuf from that type. Please consult the
194 /// Protobuf documentation for details on the [Protobuf mapping rules].
195 ///
196 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
197 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
198 /// [Long Running Operation]: https://google.aip.dev/151
199 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
200 /// [`future`]: @ref google::cloud::future
201 /// [`StatusOr`]: @ref google::cloud::StatusOr
202 /// [`Status`]: @ref google::cloud::Status
203 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
204 /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L463}
205 ///
206 // clang-format on
207 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
208 ListOrgDataExchanges(std::string const& organization, Options opts = {});
209
210 // clang-format off
211 ///
212 /// Lists all data exchanges from projects in a given organization and
213 /// location.
214 ///
215 /// @param request Unary RPCs, such as the one wrapped by this
216 /// function, receive a single `request` proto message which includes all
217 /// the inputs for the RPC. In this case, the proto message is a
218 /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest].
219 /// Proto messages are converted to C++ classes by Protobuf, using the
220 /// [Protobuf mapping rules].
221 /// @param opts Optional. Override the class-level options, such as retry and
222 /// backoff policies.
223 /// @return a [StreamRange](@ref google::cloud::StreamRange)
224 /// to iterate of the results. See the documentation of this type for
225 /// details. In brief, this class has `begin()` and `end()` member
226 /// functions returning a iterator class meeting the
227 /// [input iterator requirements]. The value type for this iterator is a
228 /// [`StatusOr`] as the iteration may fail even after some values are
229 /// retrieved successfully, for example, if there is a network disconnect.
230 /// An empty set of results does not indicate an error, it indicates
231 /// that there are no resources meeting the request criteria.
232 /// On a successful iteration the `StatusOr<T>` contains elements of type
233 /// [google.cloud.bigquery.analyticshub.v1.DataExchange], or rather,
234 /// the C++ class generated by Protobuf from that type. Please consult the
235 /// Protobuf documentation for details on the [Protobuf mapping rules].
236 ///
237 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
238 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
239 /// [Long Running Operation]: https://google.aip.dev/151
240 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
241 /// [`future`]: @ref google::cloud::future
242 /// [`StatusOr`]: @ref google::cloud::StatusOr
243 /// [`Status`]: @ref google::cloud::Status
244 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
245 /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L463}
246 ///
247 // clang-format on
248 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
250 google::cloud::bigquery::analyticshub::v1::ListOrgDataExchangesRequest
251 request,
252 Options opts = {});
253
254 // clang-format off
255 ///
256 /// Gets the details of a data exchange.
257 ///
258 /// @param name Required. The resource name of the data exchange.
259 /// e.g. `projects/myproject/locations/US/dataExchanges/123`.
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.analyticshub.v1.DataExchange])
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.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
275 /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L488}
276 ///
277 // clang-format on
278 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
279 GetDataExchange(std::string const& name, Options opts = {});
280
281 // clang-format off
282 ///
283 /// Gets the details of a data exchange.
284 ///
285 /// @param request Unary RPCs, such as the one wrapped by this
286 /// function, receive a single `request` proto message which includes all
287 /// the inputs for the RPC. In this case, the proto message is a
288 /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest].
289 /// Proto messages are converted to C++ classes by Protobuf, using the
290 /// [Protobuf mapping rules].
291 /// @param opts Optional. Override the class-level options, such as retry and
292 /// backoff policies.
293 /// @return the result of the RPC. The response message type
294 /// ([google.cloud.bigquery.analyticshub.v1.DataExchange])
295 /// is mapped to a C++ class using the [Protobuf mapping rules].
296 /// If the request fails, the [`StatusOr`] contains the error details.
297 ///
298 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
299 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
300 /// [Long Running Operation]: https://google.aip.dev/151
301 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
302 /// [`future`]: @ref google::cloud::future
303 /// [`StatusOr`]: @ref google::cloud::StatusOr
304 /// [`Status`]: @ref google::cloud::Status
305 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
306 /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L488}
307 ///
308 // clang-format on
309 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
311 google::cloud::bigquery::analyticshub::v1::GetDataExchangeRequest const&
312 request,
313 Options opts = {});
314
315 // clang-format off
316 ///
317 /// Creates a new data exchange.
318 ///
319 /// @param parent Required. The parent resource path of the data exchange.
320 /// e.g. `projects/myproject/locations/US`.
321 /// @param data_exchange Required. The data exchange to create.
322 /// @param opts Optional. Override the class-level options, such as retry and
323 /// backoff policies.
324 /// @return the result of the RPC. The response message type
325 /// ([google.cloud.bigquery.analyticshub.v1.DataExchange])
326 /// is mapped to a C++ class using the [Protobuf mapping rules].
327 /// If the request fails, the [`StatusOr`] contains the error details.
328 ///
329 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
330 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
331 /// [Long Running Operation]: https://google.aip.dev/151
332 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
333 /// [`future`]: @ref google::cloud::future
334 /// [`StatusOr`]: @ref google::cloud::StatusOr
335 /// [`Status`]: @ref google::cloud::Status
336 /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L500}
337 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
338 ///
339 // clang-format on
340 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
342 std::string const& parent,
343 google::cloud::bigquery::analyticshub::v1::DataExchange const&
344 data_exchange,
345 Options opts = {});
346
347 // clang-format off
348 ///
349 /// Creates a new data exchange.
350 ///
351 /// @param request Unary RPCs, such as the one wrapped by this
352 /// function, receive a single `request` proto message which includes all
353 /// the inputs for the RPC. In this case, the proto message is a
354 /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest].
355 /// Proto messages are converted to C++ classes by Protobuf, using the
356 /// [Protobuf mapping rules].
357 /// @param opts Optional. Override the class-level options, such as retry and
358 /// backoff policies.
359 /// @return the result of the RPC. The response message type
360 /// ([google.cloud.bigquery.analyticshub.v1.DataExchange])
361 /// is mapped to a C++ class using the [Protobuf mapping rules].
362 /// If the request fails, the [`StatusOr`] contains the error details.
363 ///
364 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
365 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
366 /// [Long Running Operation]: https://google.aip.dev/151
367 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
368 /// [`future`]: @ref google::cloud::future
369 /// [`StatusOr`]: @ref google::cloud::StatusOr
370 /// [`Status`]: @ref google::cloud::Status
371 /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L500}
372 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
373 ///
374 // clang-format on
375 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
376 CreateDataExchange(google::cloud::bigquery::analyticshub::v1::
377 CreateDataExchangeRequest const& request,
378 Options opts = {});
379
380 // clang-format off
381 ///
382 /// Updates an existing data exchange.
383 ///
384 /// @param data_exchange Required. The data exchange to update.
385 /// @param update_mask Required. Field mask specifies the fields to update in the data exchange
386 /// resource. The fields specified in the
387 /// `updateMask` are relative to the resource and are not a full request.
388 /// @param opts Optional. Override the class-level options, such as retry and
389 /// backoff policies.
390 /// @return the result of the RPC. The response message type
391 /// ([google.cloud.bigquery.analyticshub.v1.DataExchange])
392 /// is mapped to a C++ class using the [Protobuf mapping rules].
393 /// If the request fails, the [`StatusOr`] contains the error details.
394 ///
395 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
396 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
397 /// [Long Running Operation]: https://google.aip.dev/151
398 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
399 /// [`future`]: @ref google::cloud::future
400 /// [`StatusOr`]: @ref google::cloud::StatusOr
401 /// [`Status`]: @ref google::cloud::Status
402 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
403 /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L522}
404 ///
405 // clang-format on
406 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
408 google::cloud::bigquery::analyticshub::v1::DataExchange const&
409 data_exchange,
410 google::protobuf::FieldMask const& update_mask, Options opts = {});
411
412 // clang-format off
413 ///
414 /// Updates an existing data exchange.
415 ///
416 /// @param request Unary RPCs, such as the one wrapped by this
417 /// function, receive a single `request` proto message which includes all
418 /// the inputs for the RPC. In this case, the proto message is a
419 /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest].
420 /// Proto messages are converted to C++ classes by Protobuf, using the
421 /// [Protobuf mapping rules].
422 /// @param opts Optional. Override the class-level options, such as retry and
423 /// backoff policies.
424 /// @return the result of the RPC. The response message type
425 /// ([google.cloud.bigquery.analyticshub.v1.DataExchange])
426 /// is mapped to a C++ class using the [Protobuf mapping rules].
427 /// If the request fails, the [`StatusOr`] contains the error details.
428 ///
429 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
430 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
431 /// [Long Running Operation]: https://google.aip.dev/151
432 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
433 /// [`future`]: @ref google::cloud::future
434 /// [`StatusOr`]: @ref google::cloud::StatusOr
435 /// [`Status`]: @ref google::cloud::Status
436 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
437 /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L522}
438 ///
439 // clang-format on
440 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
441 UpdateDataExchange(google::cloud::bigquery::analyticshub::v1::
442 UpdateDataExchangeRequest const& request,
443 Options opts = {});
444
445 // clang-format off
446 ///
447 /// Deletes an existing data exchange.
448 ///
449 /// @param name Required. The full name of the data exchange resource that you want to delete.
450 /// For example, `projects/myproject/locations/US/dataExchanges/123`.
451 /// @param opts Optional. Override the class-level options, such as retry and
452 /// backoff policies.
453 /// @return a [`Status`] object. If the request failed, the
454 /// status contains the details of the failure.
455 ///
456 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
457 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
458 /// [Long Running Operation]: https://google.aip.dev/151
459 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
460 /// [`future`]: @ref google::cloud::future
461 /// [`StatusOr`]: @ref google::cloud::StatusOr
462 /// [`Status`]: @ref google::cloud::Status
463 /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L533}
464 ///
465 // clang-format on
466 Status DeleteDataExchange(std::string const& name, Options opts = {});
467
468 // clang-format off
469 ///
470 /// Deletes an existing data exchange.
471 ///
472 /// @param request Unary RPCs, such as the one wrapped by this
473 /// function, receive a single `request` proto message which includes all
474 /// the inputs for the RPC. In this case, the proto message is a
475 /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest].
476 /// Proto messages are converted to C++ classes by Protobuf, using the
477 /// [Protobuf mapping rules].
478 /// @param opts Optional. Override the class-level options, such as retry and
479 /// backoff policies.
480 /// @return a [`Status`] object. If the request failed, the
481 /// status contains the details of the failure.
482 ///
483 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
484 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
485 /// [Long Running Operation]: https://google.aip.dev/151
486 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
487 /// [`future`]: @ref google::cloud::future
488 /// [`StatusOr`]: @ref google::cloud::StatusOr
489 /// [`Status`]: @ref google::cloud::Status
490 /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L533}
491 ///
492 // clang-format on
493 Status DeleteDataExchange(google::cloud::bigquery::analyticshub::v1::
494 DeleteDataExchangeRequest const& request,
495 Options opts = {});
496
497 // clang-format off
498 ///
499 /// Lists all listings in a given project and location.
500 ///
501 /// @param parent Required. The parent resource path of the listing.
502 /// e.g. `projects/myproject/locations/US/dataExchanges/123`.
503 /// @param opts Optional. Override the class-level options, such as retry and
504 /// backoff policies.
505 /// @return a [StreamRange](@ref google::cloud::StreamRange)
506 /// to iterate of the results. See the documentation of this type for
507 /// details. In brief, this class has `begin()` and `end()` member
508 /// functions returning a iterator class meeting the
509 /// [input iterator requirements]. The value type for this iterator is a
510 /// [`StatusOr`] as the iteration may fail even after some values are
511 /// retrieved successfully, for example, if there is a network disconnect.
512 /// An empty set of results does not indicate an error, it indicates
513 /// that there are no resources meeting the request criteria.
514 /// On a successful iteration the `StatusOr<T>` contains elements of type
515 /// [google.cloud.bigquery.analyticshub.v1.Listing], or rather,
516 /// the C++ class generated by Protobuf from that type. Please consult the
517 /// Protobuf documentation for details on the [Protobuf mapping rules].
518 ///
519 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
520 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
521 /// [Long Running Operation]: https://google.aip.dev/151
522 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
523 /// [`future`]: @ref google::cloud::future
524 /// [`StatusOr`]: @ref google::cloud::StatusOr
525 /// [`Status`]: @ref google::cloud::Status
526 /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L545}
527 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
528 ///
529 // clang-format on
530 StreamRange<google::cloud::bigquery::analyticshub::v1::Listing> ListListings(
531 std::string const& parent, Options opts = {});
532
533 // clang-format off
534 ///
535 /// Lists all listings in a given project and location.
536 ///
537 /// @param request Unary RPCs, such as the one wrapped by this
538 /// function, receive a single `request` proto message which includes all
539 /// the inputs for the RPC. In this case, the proto message is a
540 /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest].
541 /// Proto messages are converted to C++ classes by Protobuf, using the
542 /// [Protobuf mapping rules].
543 /// @param opts Optional. Override the class-level options, such as retry and
544 /// backoff policies.
545 /// @return a [StreamRange](@ref google::cloud::StreamRange)
546 /// to iterate of the results. See the documentation of this type for
547 /// details. In brief, this class has `begin()` and `end()` member
548 /// functions returning a iterator class meeting the
549 /// [input iterator requirements]. The value type for this iterator is a
550 /// [`StatusOr`] as the iteration may fail even after some values are
551 /// retrieved successfully, for example, if there is a network disconnect.
552 /// An empty set of results does not indicate an error, it indicates
553 /// that there are no resources meeting the request criteria.
554 /// On a successful iteration the `StatusOr<T>` contains elements of type
555 /// [google.cloud.bigquery.analyticshub.v1.Listing], or rather,
556 /// the C++ class generated by Protobuf from that type. Please consult the
557 /// Protobuf documentation for details on the [Protobuf mapping rules].
558 ///
559 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
560 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
561 /// [Long Running Operation]: https://google.aip.dev/151
562 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
563 /// [`future`]: @ref google::cloud::future
564 /// [`StatusOr`]: @ref google::cloud::StatusOr
565 /// [`Status`]: @ref google::cloud::Status
566 /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L545}
567 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
568 ///
569 // clang-format on
570 StreamRange<google::cloud::bigquery::analyticshub::v1::Listing> ListListings(
571 google::cloud::bigquery::analyticshub::v1::ListListingsRequest request,
572 Options opts = {});
573
574 // clang-format off
575 ///
576 /// Gets the details of a listing.
577 ///
578 /// @param name Required. The resource name of the listing.
579 /// e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
580 /// @param opts Optional. Override the class-level options, such as retry and
581 /// backoff policies.
582 /// @return the result of the RPC. The response message type
583 /// ([google.cloud.bigquery.analyticshub.v1.Listing])
584 /// is mapped to a C++ class using the [Protobuf mapping rules].
585 /// If the request fails, the [`StatusOr`] contains the error details.
586 ///
587 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
588 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
589 /// [Long Running Operation]: https://google.aip.dev/151
590 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
591 /// [`future`]: @ref google::cloud::future
592 /// [`StatusOr`]: @ref google::cloud::StatusOr
593 /// [`Status`]: @ref google::cloud::Status
594 /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L574}
595 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
596 ///
597 // clang-format on
598 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> GetListing(
599 std::string const& name, Options opts = {});
600
601 // clang-format off
602 ///
603 /// Gets the details of a listing.
604 ///
605 /// @param request Unary RPCs, such as the one wrapped by this
606 /// function, receive a single `request` proto message which includes all
607 /// the inputs for the RPC. In this case, the proto message is a
608 /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest].
609 /// Proto messages are converted to C++ classes by Protobuf, using the
610 /// [Protobuf mapping rules].
611 /// @param opts Optional. Override the class-level options, such as retry and
612 /// backoff policies.
613 /// @return the result of the RPC. The response message type
614 /// ([google.cloud.bigquery.analyticshub.v1.Listing])
615 /// is mapped to a C++ class using the [Protobuf mapping rules].
616 /// If the request fails, the [`StatusOr`] contains the error details.
617 ///
618 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
619 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
620 /// [Long Running Operation]: https://google.aip.dev/151
621 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
622 /// [`future`]: @ref google::cloud::future
623 /// [`StatusOr`]: @ref google::cloud::StatusOr
624 /// [`Status`]: @ref google::cloud::Status
625 /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L574}
626 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
627 ///
628 // clang-format on
629 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> GetListing(
630 google::cloud::bigquery::analyticshub::v1::GetListingRequest const&
631 request,
632 Options opts = {});
633
634 // clang-format off
635 ///
636 /// Creates a new listing.
637 ///
638 /// @param parent Required. The parent resource path of the listing.
639 /// e.g. `projects/myproject/locations/US/dataExchanges/123`.
640 /// @param listing Required. The listing to create.
641 /// @param opts Optional. Override the class-level options, such as retry and
642 /// backoff policies.
643 /// @return the result of the RPC. The response message type
644 /// ([google.cloud.bigquery.analyticshub.v1.Listing])
645 /// is mapped to a C++ class using the [Protobuf mapping rules].
646 /// If the request fails, the [`StatusOr`] contains the error details.
647 ///
648 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
649 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
650 /// [Long Running Operation]: https://google.aip.dev/151
651 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
652 /// [`future`]: @ref google::cloud::future
653 /// [`StatusOr`]: @ref google::cloud::StatusOr
654 /// [`Status`]: @ref google::cloud::Status
655 /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L586}
656 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
657 ///
658 // clang-format on
659 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> CreateListing(
660 std::string const& parent,
661 google::cloud::bigquery::analyticshub::v1::Listing const& listing,
662 Options opts = {});
663
664 // clang-format off
665 ///
666 /// Creates a new listing.
667 ///
668 /// @param request Unary RPCs, such as the one wrapped by this
669 /// function, receive a single `request` proto message which includes all
670 /// the inputs for the RPC. In this case, the proto message is a
671 /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest].
672 /// Proto messages are converted to C++ classes by Protobuf, using the
673 /// [Protobuf mapping rules].
674 /// @param opts Optional. Override the class-level options, such as retry and
675 /// backoff policies.
676 /// @return the result of the RPC. The response message type
677 /// ([google.cloud.bigquery.analyticshub.v1.Listing])
678 /// is mapped to a C++ class using the [Protobuf mapping rules].
679 /// If the request fails, the [`StatusOr`] contains the error details.
680 ///
681 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
682 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
683 /// [Long Running Operation]: https://google.aip.dev/151
684 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
685 /// [`future`]: @ref google::cloud::future
686 /// [`StatusOr`]: @ref google::cloud::StatusOr
687 /// [`Status`]: @ref google::cloud::Status
688 /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L586}
689 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
690 ///
691 // clang-format on
692 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> CreateListing(
693 google::cloud::bigquery::analyticshub::v1::CreateListingRequest const&
694 request,
695 Options opts = {});
696
697 // clang-format off
698 ///
699 /// Updates an existing listing.
700 ///
701 /// @param listing Required. The listing to update.
702 /// @param update_mask Required. Field mask specifies the fields to update in the listing resource. The
703 /// fields specified in the `updateMask` are relative to the resource and are
704 /// not a full request.
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.analyticshub.v1.Listing])
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.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
720 /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L608}
721 ///
722 // clang-format on
723 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> UpdateListing(
724 google::cloud::bigquery::analyticshub::v1::Listing const& listing,
725 google::protobuf::FieldMask const& update_mask, Options opts = {});
726
727 // clang-format off
728 ///
729 /// Updates an existing listing.
730 ///
731 /// @param request Unary RPCs, such as the one wrapped by this
732 /// function, receive a single `request` proto message which includes all
733 /// the inputs for the RPC. In this case, the proto message is a
734 /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest].
735 /// Proto messages are converted to C++ classes by Protobuf, using the
736 /// [Protobuf mapping rules].
737 /// @param opts Optional. Override the class-level options, such as retry and
738 /// backoff policies.
739 /// @return the result of the RPC. The response message type
740 /// ([google.cloud.bigquery.analyticshub.v1.Listing])
741 /// is mapped to a C++ class using the [Protobuf mapping rules].
742 /// If the request fails, the [`StatusOr`] contains the error details.
743 ///
744 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
745 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
746 /// [Long Running Operation]: https://google.aip.dev/151
747 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
748 /// [`future`]: @ref google::cloud::future
749 /// [`StatusOr`]: @ref google::cloud::StatusOr
750 /// [`Status`]: @ref google::cloud::Status
751 /// [google.cloud.bigquery.analyticshub.v1.Listing]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
752 /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L608}
753 ///
754 // clang-format on
755 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> UpdateListing(
756 google::cloud::bigquery::analyticshub::v1::UpdateListingRequest const&
757 request,
758 Options opts = {});
759
760 // clang-format off
761 ///
762 /// Deletes a listing.
763 ///
764 /// @param name Required. Resource name of the listing to delete.
765 /// e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
766 /// @param opts Optional. Override the class-level options, such as retry and
767 /// backoff policies.
768 /// @return a [`Status`] object. If the request failed, the
769 /// status contains the details of the failure.
770 ///
771 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
772 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
773 /// [Long Running Operation]: https://google.aip.dev/151
774 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
775 /// [`future`]: @ref google::cloud::future
776 /// [`StatusOr`]: @ref google::cloud::StatusOr
777 /// [`Status`]: @ref google::cloud::Status
778 /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L619}
779 ///
780 // clang-format on
781 Status DeleteListing(std::string const& name, Options opts = {});
782
783 // clang-format off
784 ///
785 /// Deletes a listing.
786 ///
787 /// @param request Unary RPCs, such as the one wrapped by this
788 /// function, receive a single `request` proto message which includes all
789 /// the inputs for the RPC. In this case, the proto message is a
790 /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest].
791 /// Proto messages are converted to C++ classes by Protobuf, using the
792 /// [Protobuf mapping rules].
793 /// @param opts Optional. Override the class-level options, such as retry and
794 /// backoff policies.
795 /// @return a [`Status`] object. If the request failed, the
796 /// status contains the details of the failure.
797 ///
798 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
799 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
800 /// [Long Running Operation]: https://google.aip.dev/151
801 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
802 /// [`future`]: @ref google::cloud::future
803 /// [`StatusOr`]: @ref google::cloud::StatusOr
804 /// [`Status`]: @ref google::cloud::Status
805 /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L619}
806 ///
807 // clang-format on
809 google::cloud::bigquery::analyticshub::v1::DeleteListingRequest const&
810 request,
811 Options opts = {});
812
813 // clang-format off
814 ///
815 /// Subscribes to a listing.
816 ///
817 /// Currently, with Analytics Hub, you can create listings that
818 /// reference only BigQuery datasets.
819 /// Upon subscription to a listing for a BigQuery dataset, Analytics Hub
820 /// creates a linked dataset in the subscriber's project.
821 ///
822 /// @param name Required. Resource name of the listing that you want to subscribe to.
823 /// e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
824 /// @param opts Optional. Override the class-level options, such as retry and
825 /// backoff policies.
826 /// @return the result of the RPC. The response message type
827 /// ([google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse])
828 /// is mapped to a C++ class using the [Protobuf mapping rules].
829 /// If the request fails, the [`StatusOr`] contains the error details.
830 ///
831 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
832 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
833 /// [Long Running Operation]: https://google.aip.dev/151
834 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
835 /// [`future`]: @ref google::cloud::future
836 /// [`StatusOr`]: @ref google::cloud::StatusOr
837 /// [`Status`]: @ref google::cloud::Status
838 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L631}
839 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L649}
840 ///
841 // clang-format on
842 StatusOr<google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse>
843 SubscribeListing(std::string const& name, Options opts = {});
844
845 // clang-format off
846 ///
847 /// Subscribes to a listing.
848 ///
849 /// Currently, with Analytics Hub, you can create listings that
850 /// reference only BigQuery datasets.
851 /// Upon subscription to a listing for a BigQuery dataset, Analytics Hub
852 /// creates a linked dataset in the subscriber's project.
853 ///
854 /// @param request Unary RPCs, such as the one wrapped by this
855 /// function, receive a single `request` proto message which includes all
856 /// the inputs for the RPC. In this case, the proto message is a
857 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest].
858 /// Proto messages are converted to C++ classes by Protobuf, using the
859 /// [Protobuf mapping rules].
860 /// @param opts Optional. Override the class-level options, such as retry and
861 /// backoff policies.
862 /// @return the result of the RPC. The response message type
863 /// ([google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse])
864 /// is mapped to a C++ class using the [Protobuf mapping rules].
865 /// If the request fails, the [`StatusOr`] contains the error details.
866 ///
867 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
868 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
869 /// [Long Running Operation]: https://google.aip.dev/151
870 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
871 /// [`future`]: @ref google::cloud::future
872 /// [`StatusOr`]: @ref google::cloud::StatusOr
873 /// [`Status`]: @ref google::cloud::Status
874 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L631}
875 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]: @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L649}
876 ///
877 // clang-format on
878 StatusOr<google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse>
880 google::cloud::bigquery::analyticshub::v1::SubscribeListingRequest const&
881 request,
882 Options opts = {});
883
884 // clang-format off
885 ///
886 /// Gets the IAM policy.
887 ///
888 /// @param request Unary RPCs, such as the one wrapped by this
889 /// function, receive a single `request` proto message which includes all
890 /// the inputs for the RPC. In this case, the proto message is a
891 /// [google.iam.v1.GetIamPolicyRequest].
892 /// Proto messages are converted to C++ classes by Protobuf, using the
893 /// [Protobuf mapping rules].
894 /// @param opts Optional. Override the class-level options, such as retry and
895 /// backoff policies.
896 /// @return the result of the RPC. The response message type
897 /// ([google.iam.v1.Policy])
898 /// is mapped to a C++ class using the [Protobuf mapping rules].
899 /// If the request fails, the [`StatusOr`] contains the error details.
900 ///
901 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
902 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
903 /// [Long Running Operation]: https://google.aip.dev/151
904 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
905 /// [`future`]: @ref google::cloud::future
906 /// [`StatusOr`]: @ref google::cloud::StatusOr
907 /// [`Status`]: @ref google::cloud::Status
908 /// [google.iam.v1.GetIamPolicyRequest]: @googleapis_reference_link{google/iam/v1/iam_policy.proto#L123}
909 /// [google.iam.v1.Policy]: @googleapis_reference_link{google/iam/v1/policy.proto#L98}
910 ///
911 // clang-format on
912 StatusOr<google::iam::v1::Policy> GetIamPolicy(
913 google::iam::v1::GetIamPolicyRequest const& request, Options opts = {});
914
915 // clang-format off
916 ///
917 /// Sets the IAM policy.
918 ///
919 /// @param request Unary RPCs, such as the one wrapped by this
920 /// function, receive a single `request` proto message which includes all
921 /// the inputs for the RPC. In this case, the proto message is a
922 /// [google.iam.v1.SetIamPolicyRequest].
923 /// Proto messages are converted to C++ classes by Protobuf, using the
924 /// [Protobuf mapping rules].
925 /// @param opts Optional. Override the class-level options, such as retry and
926 /// backoff policies.
927 /// @return the result of the RPC. The response message type
928 /// ([google.iam.v1.Policy])
929 /// is mapped to a C++ class using the [Protobuf mapping rules].
930 /// If the request fails, the [`StatusOr`] contains the error details.
931 ///
932 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
933 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
934 /// [Long Running Operation]: https://google.aip.dev/151
935 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
936 /// [`future`]: @ref google::cloud::future
937 /// [`StatusOr`]: @ref google::cloud::StatusOr
938 /// [`Status`]: @ref google::cloud::Status
939 /// [google.iam.v1.Policy]: @googleapis_reference_link{google/iam/v1/policy.proto#L98}
940 /// [google.iam.v1.SetIamPolicyRequest]: @googleapis_reference_link{google/iam/v1/iam_policy.proto#L101}
941 ///
942 // clang-format on
943 StatusOr<google::iam::v1::Policy> SetIamPolicy(
944 google::iam::v1::SetIamPolicyRequest const& request, Options opts = {});
945
946 // clang-format off
947 ///
948 /// Returns the permissions that a caller has.
949 ///
950 /// @param request Unary RPCs, such as the one wrapped by this
951 /// function, receive a single `request` proto message which includes all
952 /// the inputs for the RPC. In this case, the proto message is a
953 /// [google.iam.v1.TestIamPermissionsRequest].
954 /// Proto messages are converted to C++ classes by Protobuf, using the
955 /// [Protobuf mapping rules].
956 /// @param opts Optional. Override the class-level options, such as retry and
957 /// backoff policies.
958 /// @return the result of the RPC. The response message type
959 /// ([google.iam.v1.TestIamPermissionsResponse])
960 /// is mapped to a C++ class using the [Protobuf mapping rules].
961 /// If the request fails, the [`StatusOr`] contains the error details.
962 ///
963 /// [Protobuf mapping rules]: https://protobuf.dev/reference/cpp/cpp-generated/
964 /// [input iterator requirements]: https://en.cppreference.com/w/cpp/named_req/InputIterator
965 /// [Long Running Operation]: https://google.aip.dev/151
966 /// [`std::string`]: https://en.cppreference.com/w/cpp/string/basic_string
967 /// [`future`]: @ref google::cloud::future
968 /// [`StatusOr`]: @ref google::cloud::StatusOr
969 /// [`Status`]: @ref google::cloud::Status
970 /// [google.iam.v1.TestIamPermissionsRequest]: @googleapis_reference_link{google/iam/v1/iam_policy.proto#L136}
971 /// [google.iam.v1.TestIamPermissionsResponse]: @googleapis_reference_link{google/iam/v1/iam_policy.proto#L151}
972 ///
973 // clang-format on
974 StatusOr<google::iam::v1::TestIamPermissionsResponse> TestIamPermissions(
975 google::iam::v1::TestIamPermissionsRequest const& request,
976 Options opts = {});
977
978 private:
979 std::shared_ptr<AnalyticsHubServiceConnection> connection_;
980 Options options_;
981};
982
983GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END
984} // namespace bigquery_analyticshub_v1
985} // namespace cloud
986} // namespace google
987
988#endif // GOOGLE_CLOUD_CPP_GOOGLE_CLOUD_BIGQUERY_ANALYTICSHUB_V1_ANALYTICS_HUB_CLIENT_H
The AnalyticsHubService API facilitates data sharing within and across organizations.
Definition: analytics_hub_client.h:66
StatusOr< google::cloud::bigquery::analyticshub::v1::DataExchange > GetDataExchange(std::string const &name, Options opts={})
Gets the details of a data exchange.
StatusOr< google::iam::v1::Policy > SetIamPolicy(google::iam::v1::SetIamPolicyRequest const &request, Options opts={})
Sets the IAM policy.
AnalyticsHubServiceClient & operator=(AnalyticsHubServiceClient const &)=default
StatusOr< google::cloud::bigquery::analyticshub::v1::Listing > UpdateListing(google::cloud::bigquery::analyticshub::v1::UpdateListingRequest const &request, Options opts={})
Updates an existing listing.
Status DeleteListing(google::cloud::bigquery::analyticshub::v1::DeleteListingRequest const &request, Options opts={})
Deletes a listing.
AnalyticsHubServiceClient(AnalyticsHubServiceClient &&)=default
friend bool operator!=(AnalyticsHubServiceClient const &a, AnalyticsHubServiceClient const &b)
Definition: analytics_hub_client.h:88
StatusOr< google::cloud::bigquery::analyticshub::v1::Listing > GetListing(google::cloud::bigquery::analyticshub::v1::GetListingRequest const &request, Options opts={})
Gets the details of a listing.
StreamRange< google::cloud::bigquery::analyticshub::v1::Listing > ListListings(google::cloud::bigquery::analyticshub::v1::ListListingsRequest request, Options opts={})
Lists all listings in a given project and location.
Status DeleteDataExchange(google::cloud::bigquery::analyticshub::v1::DeleteDataExchangeRequest const &request, Options opts={})
Deletes an existing data exchange.
Status DeleteListing(std::string const &name, Options opts={})
Deletes a listing.
StatusOr< google::iam::v1::TestIamPermissionsResponse > TestIamPermissions(google::iam::v1::TestIamPermissionsRequest const &request, Options opts={})
Returns the permissions that a caller has.
StatusOr< google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse > SubscribeListing(std::string const &name, Options opts={})
Subscribes to a listing.
StatusOr< google::cloud::bigquery::analyticshub::v1::Listing > CreateListing(std::string const &parent, google::cloud::bigquery::analyticshub::v1::Listing const &listing, Options opts={})
Creates a new listing.
StatusOr< google::cloud::bigquery::analyticshub::v1::Listing > UpdateListing(google::cloud::bigquery::analyticshub::v1::Listing const &listing, google::protobuf::FieldMask const &update_mask, Options opts={})
Updates an existing listing.
StreamRange< google::cloud::bigquery::analyticshub::v1::Listing > ListListings(std::string const &parent, Options opts={})
Lists all listings in a given project and location.
Status DeleteDataExchange(std::string const &name, Options opts={})
Deletes an existing data exchange.
StatusOr< google::cloud::bigquery::analyticshub::v1::Listing > GetListing(std::string const &name, Options opts={})
Gets the details of a listing.
AnalyticsHubServiceClient(AnalyticsHubServiceClient const &)=default
StatusOr< google::cloud::bigquery::analyticshub::v1::Listing > CreateListing(google::cloud::bigquery::analyticshub::v1::CreateListingRequest const &request, Options opts={})
Creates a new listing.
StreamRange< google::cloud::bigquery::analyticshub::v1::DataExchange > ListOrgDataExchanges(google::cloud::bigquery::analyticshub::v1::ListOrgDataExchangesRequest request, Options opts={})
Lists all data exchanges from projects in a given organization and location.
StreamRange< google::cloud::bigquery::analyticshub::v1::DataExchange > ListOrgDataExchanges(std::string const &organization, Options opts={})
Lists all data exchanges from projects in a given organization and location.
StatusOr< google::cloud::bigquery::analyticshub::v1::DataExchange > UpdateDataExchange(google::cloud::bigquery::analyticshub::v1::DataExchange const &data_exchange, google::protobuf::FieldMask const &update_mask, Options opts={})
Updates an existing data exchange.
StreamRange< google::cloud::bigquery::analyticshub::v1::DataExchange > ListDataExchanges(google::cloud::bigquery::analyticshub::v1::ListDataExchangesRequest request, Options opts={})
Lists all data exchanges in a given project and location.
StatusOr< google::cloud::bigquery::analyticshub::v1::DataExchange > UpdateDataExchange(google::cloud::bigquery::analyticshub::v1::UpdateDataExchangeRequest const &request, Options opts={})
Updates an existing data exchange.
StatusOr< google::cloud::bigquery::analyticshub::v1::DataExchange > CreateDataExchange(std::string const &parent, google::cloud::bigquery::analyticshub::v1::DataExchange const &data_exchange, Options opts={})
Creates a new data exchange.
StatusOr< google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse > SubscribeListing(google::cloud::bigquery::analyticshub::v1::SubscribeListingRequest const &request, Options opts={})
Subscribes to a listing.
friend bool operator==(AnalyticsHubServiceClient const &a, AnalyticsHubServiceClient const &b)
Definition: analytics_hub_client.h:84
StatusOr< google::cloud::bigquery::analyticshub::v1::DataExchange > CreateDataExchange(google::cloud::bigquery::analyticshub::v1::CreateDataExchangeRequest const &request, Options opts={})
Creates a new data exchange.
StreamRange< google::cloud::bigquery::analyticshub::v1::DataExchange > ListDataExchanges(std::string const &parent, Options opts={})
Lists all data exchanges in a given project and location.
AnalyticsHubServiceClient(std::shared_ptr< AnalyticsHubServiceConnection > connection, Options opts={})
StatusOr< google::cloud::bigquery::analyticshub::v1::DataExchange > GetDataExchange(google::cloud::bigquery::analyticshub::v1::GetDataExchangeRequest const &request, Options opts={})
Gets the details of a data exchange.
StatusOr< google::iam::v1::Policy > GetIamPolicy(google::iam::v1::GetIamPolicyRequest const &request, Options opts={})
Gets the IAM policy.
AnalyticsHubServiceClient & operator=(AnalyticsHubServiceClient &&)=default
The AnalyticsHubServiceConnection object for AnalyticsHubServiceClient.
Definition: analytics_hub_connection.h:62
Definition: analytics_hub_client.h:32
Definition: analytics_hub_client.h:30