Google Cloud BigQuery C++ Client 2.10.1
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 ///
95 /// Lists all data exchanges in a given project and location.
96 ///
97 /// @param parent Required. The parent resource path of the data exchanges.
98 /// e.g. `projects/myproject/locations/US`.
99 /// @param opts Optional. Override the class-level options, such as retry and
100 /// backoff policies.
101 /// @return
102 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
103 ///
104 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
105 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
106 /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]:
107 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L433}
108 ///
109 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
110 ListDataExchanges(std::string const& parent, Options opts = {});
111
112 ///
113 /// Lists all data exchanges in a given project and location.
114 ///
115 /// @param request
116 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::ListDataExchangesRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L433}
117 /// @param opts Optional. Override the class-level options, such as retry and
118 /// backoff policies.
119 /// @return
120 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
121 ///
122 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
123 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
124 /// [google.cloud.bigquery.analyticshub.v1.ListDataExchangesRequest]:
125 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L433}
126 ///
127 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
129 google::cloud::bigquery::analyticshub::v1::ListDataExchangesRequest
130 request,
131 Options opts = {});
132
133 ///
134 /// Lists all data exchanges from projects in a given organization and
135 /// location.
136 ///
137 /// @param organization Required. The organization resource path of the
138 /// projects containing DataExchanges.
139 /// e.g. `organizations/myorg/locations/US`.
140 /// @param opts Optional. Override the class-level options, such as retry and
141 /// backoff policies.
142 /// @return
143 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
144 ///
145 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
146 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
147 /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]:
148 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L463}
149 ///
150 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
151 ListOrgDataExchanges(std::string const& organization, Options opts = {});
152
153 ///
154 /// Lists all data exchanges from projects in a given organization and
155 /// location.
156 ///
157 /// @param request
158 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::ListOrgDataExchangesRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L463}
159 /// @param opts Optional. Override the class-level options, such as retry and
160 /// backoff policies.
161 /// @return
162 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
163 ///
164 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
165 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
166 /// [google.cloud.bigquery.analyticshub.v1.ListOrgDataExchangesRequest]:
167 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L463}
168 ///
169 StreamRange<google::cloud::bigquery::analyticshub::v1::DataExchange>
171 google::cloud::bigquery::analyticshub::v1::ListOrgDataExchangesRequest
172 request,
173 Options opts = {});
174
175 ///
176 /// Gets the details of a data exchange.
177 ///
178 /// @param name Required. The resource name of the data exchange.
179 /// e.g. `projects/myproject/locations/US/dataExchanges/123`.
180 /// @param opts Optional. Override the class-level options, such as retry and
181 /// backoff policies.
182 /// @return
183 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
184 ///
185 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
186 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
187 /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]:
188 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L488}
189 ///
190 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
191 GetDataExchange(std::string const& name, Options opts = {});
192
193 ///
194 /// Gets the details of a data exchange.
195 ///
196 /// @param request
197 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::GetDataExchangeRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L488}
198 /// @param opts Optional. Override the class-level options, such as retry and
199 /// backoff policies.
200 /// @return
201 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
202 ///
203 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
204 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
205 /// [google.cloud.bigquery.analyticshub.v1.GetDataExchangeRequest]:
206 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L488}
207 ///
208 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
210 google::cloud::bigquery::analyticshub::v1::GetDataExchangeRequest const&
211 request,
212 Options opts = {});
213
214 ///
215 /// Creates a new data exchange.
216 ///
217 /// @param parent Required. The parent resource path of the data exchange.
218 /// e.g. `projects/myproject/locations/US`.
219 /// @param data_exchange Required. The data exchange to create.
220 /// @param opts Optional. Override the class-level options, such as retry and
221 /// backoff policies.
222 /// @return
223 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
224 ///
225 /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]:
226 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L500}
227 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
228 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
229 ///
230 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
232 std::string const& parent,
233 google::cloud::bigquery::analyticshub::v1::DataExchange const&
234 data_exchange,
235 Options opts = {});
236
237 ///
238 /// Creates a new data exchange.
239 ///
240 /// @param request
241 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::CreateDataExchangeRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L500}
242 /// @param opts Optional. Override the class-level options, such as retry and
243 /// backoff policies.
244 /// @return
245 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
246 ///
247 /// [google.cloud.bigquery.analyticshub.v1.CreateDataExchangeRequest]:
248 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L500}
249 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
250 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
251 ///
252 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
253 CreateDataExchange(google::cloud::bigquery::analyticshub::v1::
254 CreateDataExchangeRequest const& request,
255 Options opts = {});
256
257 ///
258 /// Updates an existing data exchange.
259 ///
260 /// @param data_exchange Required. The data exchange to update.
261 /// @param update_mask Required. Field mask specifies the fields to update in
262 /// the data exchange
263 /// resource. The fields specified in the
264 /// `updateMask` are relative to the resource and are not a full request.
265 /// @param opts Optional. Override the class-level options, such as retry and
266 /// backoff policies.
267 /// @return
268 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
269 ///
270 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
271 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
272 /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]:
273 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L522}
274 ///
275 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
277 google::cloud::bigquery::analyticshub::v1::DataExchange const&
278 data_exchange,
279 google::protobuf::FieldMask const& update_mask, Options opts = {});
280
281 ///
282 /// Updates an existing data exchange.
283 ///
284 /// @param request
285 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::UpdateDataExchangeRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L522}
286 /// @param opts Optional. Override the class-level options, such as retry and
287 /// backoff policies.
288 /// @return
289 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DataExchange,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
290 ///
291 /// [google.cloud.bigquery.analyticshub.v1.DataExchange]:
292 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L200}
293 /// [google.cloud.bigquery.analyticshub.v1.UpdateDataExchangeRequest]:
294 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L522}
295 ///
296 StatusOr<google::cloud::bigquery::analyticshub::v1::DataExchange>
297 UpdateDataExchange(google::cloud::bigquery::analyticshub::v1::
298 UpdateDataExchangeRequest const& request,
299 Options opts = {});
300
301 ///
302 /// Deletes an existing data exchange.
303 ///
304 /// @param name Required. The full name of the data exchange resource that
305 /// you want to delete.
306 /// For example, `projects/myproject/locations/US/dataExchanges/123`.
307 /// @param opts Optional. Override the class-level options, such as retry and
308 /// backoff policies.
309 ///
310 /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]:
311 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L533}
312 ///
313 Status DeleteDataExchange(std::string const& name, Options opts = {});
314
315 ///
316 /// Deletes an existing data exchange.
317 ///
318 /// @param request
319 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DeleteDataExchangeRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L533}
320 /// @param opts Optional. Override the class-level options, such as retry and
321 /// backoff policies.
322 ///
323 /// [google.cloud.bigquery.analyticshub.v1.DeleteDataExchangeRequest]:
324 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L533}
325 ///
326 Status DeleteDataExchange(google::cloud::bigquery::analyticshub::v1::
327 DeleteDataExchangeRequest const& request,
328 Options opts = {});
329
330 ///
331 /// Lists all listings in a given project and location.
332 ///
333 /// @param parent Required. The parent resource path of the listing.
334 /// e.g. `projects/myproject/locations/US/dataExchanges/123`.
335 /// @param opts Optional. Override the class-level options, such as retry and
336 /// backoff policies.
337 /// @return
338 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
339 ///
340 /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]:
341 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L545}
342 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
343 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
344 ///
345 StreamRange<google::cloud::bigquery::analyticshub::v1::Listing> ListListings(
346 std::string const& parent, Options opts = {});
347
348 ///
349 /// Lists all listings in a given project and location.
350 ///
351 /// @param request
352 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::ListListingsRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L545}
353 /// @param opts Optional. Override the class-level options, such as retry and
354 /// backoff policies.
355 /// @return
356 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
357 ///
358 /// [google.cloud.bigquery.analyticshub.v1.ListListingsRequest]:
359 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L545}
360 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
361 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
362 ///
363 StreamRange<google::cloud::bigquery::analyticshub::v1::Listing> ListListings(
364 google::cloud::bigquery::analyticshub::v1::ListListingsRequest request,
365 Options opts = {});
366
367 ///
368 /// Gets the details of a listing.
369 ///
370 /// @param name Required. The resource name of the listing.
371 /// e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
372 /// @param opts Optional. Override the class-level options, such as retry and
373 /// backoff policies.
374 /// @return
375 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
376 ///
377 /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]:
378 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L574}
379 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
380 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
381 ///
382 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> GetListing(
383 std::string const& name, Options opts = {});
384
385 ///
386 /// Gets the details of a listing.
387 ///
388 /// @param request
389 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::GetListingRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L574}
390 /// @param opts Optional. Override the class-level options, such as retry and
391 /// backoff policies.
392 /// @return
393 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
394 ///
395 /// [google.cloud.bigquery.analyticshub.v1.GetListingRequest]:
396 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L574}
397 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
398 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
399 ///
400 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> GetListing(
401 google::cloud::bigquery::analyticshub::v1::GetListingRequest const&
402 request,
403 Options opts = {});
404
405 ///
406 /// Creates a new listing.
407 ///
408 /// @param parent Required. The parent resource path of the listing.
409 /// e.g. `projects/myproject/locations/US/dataExchanges/123`.
410 /// @param listing Required. The listing to create.
411 /// @param opts Optional. Override the class-level options, such as retry and
412 /// backoff policies.
413 /// @return
414 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
415 ///
416 /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]:
417 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L586}
418 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
419 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
420 ///
421 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> CreateListing(
422 std::string const& parent,
423 google::cloud::bigquery::analyticshub::v1::Listing const& listing,
424 Options opts = {});
425
426 ///
427 /// Creates a new listing.
428 ///
429 /// @param request
430 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::CreateListingRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L586}
431 /// @param opts Optional. Override the class-level options, such as retry and
432 /// backoff policies.
433 /// @return
434 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
435 ///
436 /// [google.cloud.bigquery.analyticshub.v1.CreateListingRequest]:
437 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L586}
438 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
439 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
440 ///
441 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> CreateListing(
442 google::cloud::bigquery::analyticshub::v1::CreateListingRequest const&
443 request,
444 Options opts = {});
445
446 ///
447 /// Updates an existing listing.
448 ///
449 /// @param listing Required. The listing to update.
450 /// @param update_mask Required. Field mask specifies the fields to update in
451 /// the listing resource. The
452 /// fields specified in the `updateMask` are relative to the resource and are
453 /// not a full request.
454 /// @param opts Optional. Override the class-level options, such as retry and
455 /// backoff policies.
456 /// @return
457 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
458 ///
459 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
460 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
461 /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]:
462 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L608}
463 ///
464 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> UpdateListing(
465 google::cloud::bigquery::analyticshub::v1::Listing const& listing,
466 google::protobuf::FieldMask const& update_mask, Options opts = {});
467
468 ///
469 /// Updates an existing listing.
470 ///
471 /// @param request
472 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::UpdateListingRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L608}
473 /// @param opts Optional. Override the class-level options, such as retry and
474 /// backoff policies.
475 /// @return
476 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::Listing,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
477 ///
478 /// [google.cloud.bigquery.analyticshub.v1.Listing]:
479 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L301}
480 /// [google.cloud.bigquery.analyticshub.v1.UpdateListingRequest]:
481 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L608}
482 ///
483 StatusOr<google::cloud::bigquery::analyticshub::v1::Listing> UpdateListing(
484 google::cloud::bigquery::analyticshub::v1::UpdateListingRequest const&
485 request,
486 Options opts = {});
487
488 ///
489 /// Deletes a listing.
490 ///
491 /// @param name Required. Resource name of the listing to delete.
492 /// e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
493 /// @param opts Optional. Override the class-level options, such as retry and
494 /// backoff policies.
495 ///
496 /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]:
497 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L619}
498 ///
499 Status DeleteListing(std::string const& name, Options opts = {});
500
501 ///
502 /// Deletes a listing.
503 ///
504 /// @param request
505 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::DeleteListingRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L619}
506 /// @param opts Optional. Override the class-level options, such as retry and
507 /// backoff policies.
508 ///
509 /// [google.cloud.bigquery.analyticshub.v1.DeleteListingRequest]:
510 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L619}
511 ///
513 google::cloud::bigquery::analyticshub::v1::DeleteListingRequest const&
514 request,
515 Options opts = {});
516
517 ///
518 /// Subscribes to a listing.
519 ///
520 /// Currently, with Analytics Hub, you can create listings that
521 /// reference only BigQuery datasets.
522 /// Upon subscription to a listing for a BigQuery dataset, Analytics Hub
523 /// creates a linked dataset in the subscriber's project.
524 ///
525 /// @param name Required. Resource name of the listing that you want to
526 /// subscribe to.
527 /// e.g. `projects/myproject/locations/US/dataExchanges/123/listings/456`.
528 /// @param opts Optional. Override the class-level options, such as retry and
529 /// backoff policies.
530 /// @return
531 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L649}
532 ///
533 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]:
534 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L631}
535 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]:
536 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L649}
537 ///
538 StatusOr<google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse>
539 SubscribeListing(std::string const& name, Options opts = {});
540
541 ///
542 /// Subscribes to a listing.
543 ///
544 /// Currently, with Analytics Hub, you can create listings that
545 /// reference only BigQuery datasets.
546 /// Upon subscription to a listing for a BigQuery dataset, Analytics Hub
547 /// creates a linked dataset in the subscriber's project.
548 ///
549 /// @param request
550 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::SubscribeListingRequest,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L631}
551 /// @param opts Optional. Override the class-level options, such as retry and
552 /// backoff policies.
553 /// @return
554 /// @googleapis_link{google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse,google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L649}
555 ///
556 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingRequest]:
557 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L631}
558 /// [google.cloud.bigquery.analyticshub.v1.SubscribeListingResponse]:
559 /// @googleapis_reference_link{google/cloud/bigquery/analyticshub/v1/analyticshub.proto#L649}
560 ///
561 StatusOr<google::cloud::bigquery::analyticshub::v1::SubscribeListingResponse>
563 google::cloud::bigquery::analyticshub::v1::SubscribeListingRequest const&
564 request,
565 Options opts = {});
566
567 ///
568 /// Gets the IAM policy.
569 ///
570 /// @param request
571 /// @googleapis_link{google::iam::v1::GetIamPolicyRequest,google/iam/v1/iam_policy.proto#L123}
572 /// @param opts Optional. Override the class-level options, such as retry and
573 /// backoff policies.
574 /// @return
575 /// @googleapis_link{google::iam::v1::Policy,google/iam/v1/policy.proto#L98}
576 ///
577 /// [google.iam.v1.GetIamPolicyRequest]:
578 /// @googleapis_reference_link{google/iam/v1/iam_policy.proto#L123}
579 /// [google.iam.v1.Policy]:
580 /// @googleapis_reference_link{google/iam/v1/policy.proto#L98}
581 ///
582 StatusOr<google::iam::v1::Policy> GetIamPolicy(
583 google::iam::v1::GetIamPolicyRequest const& request, Options opts = {});
584
585 ///
586 /// Sets the IAM policy.
587 ///
588 /// @param request
589 /// @googleapis_link{google::iam::v1::SetIamPolicyRequest,google/iam/v1/iam_policy.proto#L101}
590 /// @param opts Optional. Override the class-level options, such as retry and
591 /// backoff policies.
592 /// @return
593 /// @googleapis_link{google::iam::v1::Policy,google/iam/v1/policy.proto#L98}
594 ///
595 /// [google.iam.v1.Policy]:
596 /// @googleapis_reference_link{google/iam/v1/policy.proto#L98}
597 /// [google.iam.v1.SetIamPolicyRequest]:
598 /// @googleapis_reference_link{google/iam/v1/iam_policy.proto#L101}
599 ///
600 StatusOr<google::iam::v1::Policy> SetIamPolicy(
601 google::iam::v1::SetIamPolicyRequest const& request, Options opts = {});
602
603 ///
604 /// Returns the permissions that a caller has.
605 ///
606 /// @param request
607 /// @googleapis_link{google::iam::v1::TestIamPermissionsRequest,google/iam/v1/iam_policy.proto#L136}
608 /// @param opts Optional. Override the class-level options, such as retry and
609 /// backoff policies.
610 /// @return
611 /// @googleapis_link{google::iam::v1::TestIamPermissionsResponse,google/iam/v1/iam_policy.proto#L151}
612 ///
613 /// [google.iam.v1.TestIamPermissionsRequest]:
614 /// @googleapis_reference_link{google/iam/v1/iam_policy.proto#L136}
615 /// [google.iam.v1.TestIamPermissionsResponse]:
616 /// @googleapis_reference_link{google/iam/v1/iam_policy.proto#L151}
617 ///
618 StatusOr<google::iam::v1::TestIamPermissionsResponse> TestIamPermissions(
619 google::iam::v1::TestIamPermissionsRequest const& request,
620 Options opts = {});
621
622 private:
623 std::shared_ptr<AnalyticsHubServiceConnection> connection_;
624 Options options_;
625};
626
627GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END
628} // namespace bigquery_analyticshub_v1
629} // namespace cloud
630} // namespace google
631
632#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