google-cloud-bigquery-reservation-v1 1.8.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1389,7 +1389,7 @@ module Google
1389
1389
  # @param options [::Gapic::CallOptions, ::Hash]
1390
1390
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1391
1391
  #
1392
- # @overload merge_capacity_commitments(parent: nil, capacity_commitment_ids: nil)
1392
+ # @overload merge_capacity_commitments(parent: nil, capacity_commitment_ids: nil, capacity_commitment_id: nil)
1393
1393
  # Pass arguments to `merge_capacity_commitments` via keyword arguments. Note that at
1394
1394
  # least one keyword argument is required. To specify no parameters, or to keep all
1395
1395
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -1403,6 +1403,11 @@ module Google
1403
1403
  # specified in the parent.
1404
1404
  # ID is the last portion of capacity commitment name e.g., 'abc' for
1405
1405
  # projects/myproject/locations/US/capacityCommitments/abc
1406
+ # @param capacity_commitment_id [::String]
1407
+ # Optional. The optional resulting capacity commitment ID. Capacity
1408
+ # commitment name will be generated automatically if this field is empty.
1409
+ # This field must only contain lower case alphanumeric characters or dashes.
1410
+ # The first and last character cannot be a dash. Max length is 64 characters.
1406
1411
  #
1407
1412
  # @yield [response, operation] Access the result along with the RPC operation
1408
1413
  # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::CapacityCommitment]
@@ -2438,6 +2443,674 @@ module Google
2438
2443
  raise ::Google::Cloud::Error.from_error(e)
2439
2444
  end
2440
2445
 
2446
+ ##
2447
+ # Gets the access control policy for a resource.
2448
+ # May return:
2449
+ #
2450
+ # * A`NOT_FOUND` error if the resource doesn't exist or you don't have the
2451
+ # permission to view it.
2452
+ # * An empty policy if the resource exists but doesn't have a set policy.
2453
+ #
2454
+ # Supported resources are:
2455
+ # - Reservations
2456
+ # - ReservationAssignments
2457
+ #
2458
+ # To call this method, you must have the following Google IAM permissions:
2459
+ #
2460
+ # - `bigqueryreservation.reservations.getIamPolicy` to get policies on
2461
+ # reservations.
2462
+ #
2463
+ # @overload get_iam_policy(request, options = nil)
2464
+ # Pass arguments to `get_iam_policy` via a request object, either of type
2465
+ # {::Google::Iam::V1::GetIamPolicyRequest} or an equivalent Hash.
2466
+ #
2467
+ # @param request [::Google::Iam::V1::GetIamPolicyRequest, ::Hash]
2468
+ # A request object representing the call parameters. Required. To specify no
2469
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2470
+ # @param options [::Gapic::CallOptions, ::Hash]
2471
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2472
+ #
2473
+ # @overload get_iam_policy(resource: nil, options: nil)
2474
+ # Pass arguments to `get_iam_policy` via keyword arguments. Note that at
2475
+ # least one keyword argument is required. To specify no parameters, or to keep all
2476
+ # the default parameter values, pass an empty Hash as a request object (see above).
2477
+ #
2478
+ # @param resource [::String]
2479
+ # REQUIRED: The resource for which the policy is being requested.
2480
+ # See the operation documentation for the appropriate value for this field.
2481
+ # @param options [::Google::Iam::V1::GetPolicyOptions, ::Hash]
2482
+ # OPTIONAL: A `GetPolicyOptions` object for specifying options to
2483
+ # `GetIamPolicy`.
2484
+ #
2485
+ # @yield [response, operation] Access the result along with the RPC operation
2486
+ # @yieldparam response [::Google::Iam::V1::Policy]
2487
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2488
+ #
2489
+ # @return [::Google::Iam::V1::Policy]
2490
+ #
2491
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2492
+ #
2493
+ # @example Basic example
2494
+ # require "google/cloud/bigquery/reservation/v1"
2495
+ #
2496
+ # # Create a client object. The client can be reused for multiple calls.
2497
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
2498
+ #
2499
+ # # Create a request. To set request fields, pass in keyword arguments.
2500
+ # request = Google::Iam::V1::GetIamPolicyRequest.new
2501
+ #
2502
+ # # Call the get_iam_policy method.
2503
+ # result = client.get_iam_policy request
2504
+ #
2505
+ # # The returned object is of type Google::Iam::V1::Policy.
2506
+ # p result
2507
+ #
2508
+ def get_iam_policy request, options = nil
2509
+ raise ::ArgumentError, "request must be provided" if request.nil?
2510
+
2511
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::GetIamPolicyRequest
2512
+
2513
+ # Converts hash and nil to an options object
2514
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2515
+
2516
+ # Customize the options with defaults
2517
+ metadata = @config.rpcs.get_iam_policy.metadata.to_h
2518
+
2519
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
2520
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2521
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2522
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
2523
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
2524
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2525
+
2526
+ header_params = {}
2527
+ if request.resource
2528
+ header_params["resource"] = request.resource
2529
+ end
2530
+
2531
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2532
+ metadata[:"x-goog-request-params"] ||= request_params_header
2533
+
2534
+ options.apply_defaults timeout: @config.rpcs.get_iam_policy.timeout,
2535
+ metadata: metadata,
2536
+ retry_policy: @config.rpcs.get_iam_policy.retry_policy
2537
+
2538
+ options.apply_defaults timeout: @config.timeout,
2539
+ metadata: @config.metadata,
2540
+ retry_policy: @config.retry_policy
2541
+
2542
+ @reservation_service_stub.call_rpc :get_iam_policy, request, options: options do |response, operation|
2543
+ yield response, operation if block_given?
2544
+ end
2545
+ rescue ::GRPC::BadStatus => e
2546
+ raise ::Google::Cloud::Error.from_error(e)
2547
+ end
2548
+
2549
+ ##
2550
+ # Sets an access control policy for a resource. Replaces any existing
2551
+ # policy.
2552
+ #
2553
+ # Supported resources are:
2554
+ # - Reservations
2555
+ #
2556
+ # To call this method, you must have the following Google IAM permissions:
2557
+ #
2558
+ # - `bigqueryreservation.reservations.setIamPolicy` to set policies on
2559
+ # reservations.
2560
+ #
2561
+ # @overload set_iam_policy(request, options = nil)
2562
+ # Pass arguments to `set_iam_policy` via a request object, either of type
2563
+ # {::Google::Iam::V1::SetIamPolicyRequest} or an equivalent Hash.
2564
+ #
2565
+ # @param request [::Google::Iam::V1::SetIamPolicyRequest, ::Hash]
2566
+ # A request object representing the call parameters. Required. To specify no
2567
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2568
+ # @param options [::Gapic::CallOptions, ::Hash]
2569
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2570
+ #
2571
+ # @overload set_iam_policy(resource: nil, policy: nil, update_mask: nil)
2572
+ # Pass arguments to `set_iam_policy` via keyword arguments. Note that at
2573
+ # least one keyword argument is required. To specify no parameters, or to keep all
2574
+ # the default parameter values, pass an empty Hash as a request object (see above).
2575
+ #
2576
+ # @param resource [::String]
2577
+ # REQUIRED: The resource for which the policy is being specified.
2578
+ # See the operation documentation for the appropriate value for this field.
2579
+ # @param policy [::Google::Iam::V1::Policy, ::Hash]
2580
+ # REQUIRED: The complete policy to be applied to the `resource`. The size of
2581
+ # the policy is limited to a few 10s of KB. An empty policy is a
2582
+ # valid policy but certain Cloud Platform services (such as Projects)
2583
+ # might reject them.
2584
+ # @param update_mask [::Google::Protobuf::FieldMask, ::Hash]
2585
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
2586
+ # the fields in the mask will be modified. If no mask is provided, the
2587
+ # following default mask is used:
2588
+ #
2589
+ # `paths: "bindings, etag"`
2590
+ #
2591
+ # @yield [response, operation] Access the result along with the RPC operation
2592
+ # @yieldparam response [::Google::Iam::V1::Policy]
2593
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2594
+ #
2595
+ # @return [::Google::Iam::V1::Policy]
2596
+ #
2597
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2598
+ #
2599
+ # @example Basic example
2600
+ # require "google/cloud/bigquery/reservation/v1"
2601
+ #
2602
+ # # Create a client object. The client can be reused for multiple calls.
2603
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
2604
+ #
2605
+ # # Create a request. To set request fields, pass in keyword arguments.
2606
+ # request = Google::Iam::V1::SetIamPolicyRequest.new
2607
+ #
2608
+ # # Call the set_iam_policy method.
2609
+ # result = client.set_iam_policy request
2610
+ #
2611
+ # # The returned object is of type Google::Iam::V1::Policy.
2612
+ # p result
2613
+ #
2614
+ def set_iam_policy request, options = nil
2615
+ raise ::ArgumentError, "request must be provided" if request.nil?
2616
+
2617
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::SetIamPolicyRequest
2618
+
2619
+ # Converts hash and nil to an options object
2620
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2621
+
2622
+ # Customize the options with defaults
2623
+ metadata = @config.rpcs.set_iam_policy.metadata.to_h
2624
+
2625
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
2626
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2627
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2628
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
2629
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
2630
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2631
+
2632
+ header_params = {}
2633
+ if request.resource
2634
+ header_params["resource"] = request.resource
2635
+ end
2636
+
2637
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2638
+ metadata[:"x-goog-request-params"] ||= request_params_header
2639
+
2640
+ options.apply_defaults timeout: @config.rpcs.set_iam_policy.timeout,
2641
+ metadata: metadata,
2642
+ retry_policy: @config.rpcs.set_iam_policy.retry_policy
2643
+
2644
+ options.apply_defaults timeout: @config.timeout,
2645
+ metadata: @config.metadata,
2646
+ retry_policy: @config.retry_policy
2647
+
2648
+ @reservation_service_stub.call_rpc :set_iam_policy, request, options: options do |response, operation|
2649
+ yield response, operation if block_given?
2650
+ end
2651
+ rescue ::GRPC::BadStatus => e
2652
+ raise ::Google::Cloud::Error.from_error(e)
2653
+ end
2654
+
2655
+ ##
2656
+ # Gets your permissions on a resource. Returns an empty set of permissions if
2657
+ # the resource doesn't exist.
2658
+ #
2659
+ # Supported resources are:
2660
+ # - Reservations
2661
+ #
2662
+ # No Google IAM permissions are required to call this method.
2663
+ #
2664
+ # @overload test_iam_permissions(request, options = nil)
2665
+ # Pass arguments to `test_iam_permissions` via a request object, either of type
2666
+ # {::Google::Iam::V1::TestIamPermissionsRequest} or an equivalent Hash.
2667
+ #
2668
+ # @param request [::Google::Iam::V1::TestIamPermissionsRequest, ::Hash]
2669
+ # A request object representing the call parameters. Required. To specify no
2670
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2671
+ # @param options [::Gapic::CallOptions, ::Hash]
2672
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2673
+ #
2674
+ # @overload test_iam_permissions(resource: nil, permissions: nil)
2675
+ # Pass arguments to `test_iam_permissions` via keyword arguments. Note that at
2676
+ # least one keyword argument is required. To specify no parameters, or to keep all
2677
+ # the default parameter values, pass an empty Hash as a request object (see above).
2678
+ #
2679
+ # @param resource [::String]
2680
+ # REQUIRED: The resource for which the policy detail is being requested.
2681
+ # See the operation documentation for the appropriate value for this field.
2682
+ # @param permissions [::Array<::String>]
2683
+ # The set of permissions to check for the `resource`. Permissions with
2684
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
2685
+ # information see
2686
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
2687
+ #
2688
+ # @yield [response, operation] Access the result along with the RPC operation
2689
+ # @yieldparam response [::Google::Iam::V1::TestIamPermissionsResponse]
2690
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2691
+ #
2692
+ # @return [::Google::Iam::V1::TestIamPermissionsResponse]
2693
+ #
2694
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2695
+ #
2696
+ # @example Basic example
2697
+ # require "google/cloud/bigquery/reservation/v1"
2698
+ #
2699
+ # # Create a client object. The client can be reused for multiple calls.
2700
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
2701
+ #
2702
+ # # Create a request. To set request fields, pass in keyword arguments.
2703
+ # request = Google::Iam::V1::TestIamPermissionsRequest.new
2704
+ #
2705
+ # # Call the test_iam_permissions method.
2706
+ # result = client.test_iam_permissions request
2707
+ #
2708
+ # # The returned object is of type Google::Iam::V1::TestIamPermissionsResponse.
2709
+ # p result
2710
+ #
2711
+ def test_iam_permissions request, options = nil
2712
+ raise ::ArgumentError, "request must be provided" if request.nil?
2713
+
2714
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::TestIamPermissionsRequest
2715
+
2716
+ # Converts hash and nil to an options object
2717
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2718
+
2719
+ # Customize the options with defaults
2720
+ metadata = @config.rpcs.test_iam_permissions.metadata.to_h
2721
+
2722
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
2723
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2724
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2725
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
2726
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
2727
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2728
+
2729
+ header_params = {}
2730
+ if request.resource
2731
+ header_params["resource"] = request.resource
2732
+ end
2733
+
2734
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2735
+ metadata[:"x-goog-request-params"] ||= request_params_header
2736
+
2737
+ options.apply_defaults timeout: @config.rpcs.test_iam_permissions.timeout,
2738
+ metadata: metadata,
2739
+ retry_policy: @config.rpcs.test_iam_permissions.retry_policy
2740
+
2741
+ options.apply_defaults timeout: @config.timeout,
2742
+ metadata: @config.metadata,
2743
+ retry_policy: @config.retry_policy
2744
+
2745
+ @reservation_service_stub.call_rpc :test_iam_permissions, request, options: options do |response, operation|
2746
+ yield response, operation if block_given?
2747
+ end
2748
+ rescue ::GRPC::BadStatus => e
2749
+ raise ::Google::Cloud::Error.from_error(e)
2750
+ end
2751
+
2752
+ ##
2753
+ # Creates a new reservation group.
2754
+ #
2755
+ # @overload create_reservation_group(request, options = nil)
2756
+ # Pass arguments to `create_reservation_group` via a request object, either of type
2757
+ # {::Google::Cloud::Bigquery::Reservation::V1::CreateReservationGroupRequest} or an equivalent Hash.
2758
+ #
2759
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::CreateReservationGroupRequest, ::Hash]
2760
+ # A request object representing the call parameters. Required. To specify no
2761
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2762
+ # @param options [::Gapic::CallOptions, ::Hash]
2763
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2764
+ #
2765
+ # @overload create_reservation_group(parent: nil, reservation_group_id: nil, reservation_group: nil)
2766
+ # Pass arguments to `create_reservation_group` via keyword arguments. Note that at
2767
+ # least one keyword argument is required. To specify no parameters, or to keep all
2768
+ # the default parameter values, pass an empty Hash as a request object (see above).
2769
+ #
2770
+ # @param parent [::String]
2771
+ # Required. Project, location. E.g.,
2772
+ # `projects/myproject/locations/US`
2773
+ # @param reservation_group_id [::String]
2774
+ # Required. The reservation group ID. It must only contain lower case
2775
+ # alphanumeric characters or dashes. It must start with a letter and must not
2776
+ # end with a dash. Its maximum length is 64 characters.
2777
+ # @param reservation_group [::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup, ::Hash]
2778
+ # Required. New Reservation Group to create.
2779
+ #
2780
+ # @yield [response, operation] Access the result along with the RPC operation
2781
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup]
2782
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2783
+ #
2784
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup]
2785
+ #
2786
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2787
+ #
2788
+ # @example Basic example
2789
+ # require "google/cloud/bigquery/reservation/v1"
2790
+ #
2791
+ # # Create a client object. The client can be reused for multiple calls.
2792
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
2793
+ #
2794
+ # # Create a request. To set request fields, pass in keyword arguments.
2795
+ # request = Google::Cloud::Bigquery::Reservation::V1::CreateReservationGroupRequest.new
2796
+ #
2797
+ # # Call the create_reservation_group method.
2798
+ # result = client.create_reservation_group request
2799
+ #
2800
+ # # The returned object is of type Google::Cloud::Bigquery::Reservation::V1::ReservationGroup.
2801
+ # p result
2802
+ #
2803
+ def create_reservation_group request, options = nil
2804
+ raise ::ArgumentError, "request must be provided" if request.nil?
2805
+
2806
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::CreateReservationGroupRequest
2807
+
2808
+ # Converts hash and nil to an options object
2809
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2810
+
2811
+ # Customize the options with defaults
2812
+ metadata = @config.rpcs.create_reservation_group.metadata.to_h
2813
+
2814
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
2815
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2816
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2817
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
2818
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
2819
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2820
+
2821
+ header_params = {}
2822
+ if request.parent
2823
+ header_params["parent"] = request.parent
2824
+ end
2825
+
2826
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2827
+ metadata[:"x-goog-request-params"] ||= request_params_header
2828
+
2829
+ options.apply_defaults timeout: @config.rpcs.create_reservation_group.timeout,
2830
+ metadata: metadata,
2831
+ retry_policy: @config.rpcs.create_reservation_group.retry_policy
2832
+
2833
+ options.apply_defaults timeout: @config.timeout,
2834
+ metadata: @config.metadata,
2835
+ retry_policy: @config.retry_policy
2836
+
2837
+ @reservation_service_stub.call_rpc :create_reservation_group, request, options: options do |response, operation|
2838
+ yield response, operation if block_given?
2839
+ end
2840
+ rescue ::GRPC::BadStatus => e
2841
+ raise ::Google::Cloud::Error.from_error(e)
2842
+ end
2843
+
2844
+ ##
2845
+ # Returns information about the reservation group.
2846
+ #
2847
+ # @overload get_reservation_group(request, options = nil)
2848
+ # Pass arguments to `get_reservation_group` via a request object, either of type
2849
+ # {::Google::Cloud::Bigquery::Reservation::V1::GetReservationGroupRequest} or an equivalent Hash.
2850
+ #
2851
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::GetReservationGroupRequest, ::Hash]
2852
+ # A request object representing the call parameters. Required. To specify no
2853
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2854
+ # @param options [::Gapic::CallOptions, ::Hash]
2855
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2856
+ #
2857
+ # @overload get_reservation_group(name: nil)
2858
+ # Pass arguments to `get_reservation_group` via keyword arguments. Note that at
2859
+ # least one keyword argument is required. To specify no parameters, or to keep all
2860
+ # the default parameter values, pass an empty Hash as a request object (see above).
2861
+ #
2862
+ # @param name [::String]
2863
+ # Required. Resource name of the reservation group to retrieve. E.g.,
2864
+ # `projects/myproject/locations/US/reservationGroups/team1-prod`
2865
+ #
2866
+ # @yield [response, operation] Access the result along with the RPC operation
2867
+ # @yieldparam response [::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup]
2868
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2869
+ #
2870
+ # @return [::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup]
2871
+ #
2872
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2873
+ #
2874
+ # @example Basic example
2875
+ # require "google/cloud/bigquery/reservation/v1"
2876
+ #
2877
+ # # Create a client object. The client can be reused for multiple calls.
2878
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
2879
+ #
2880
+ # # Create a request. To set request fields, pass in keyword arguments.
2881
+ # request = Google::Cloud::Bigquery::Reservation::V1::GetReservationGroupRequest.new
2882
+ #
2883
+ # # Call the get_reservation_group method.
2884
+ # result = client.get_reservation_group request
2885
+ #
2886
+ # # The returned object is of type Google::Cloud::Bigquery::Reservation::V1::ReservationGroup.
2887
+ # p result
2888
+ #
2889
+ def get_reservation_group request, options = nil
2890
+ raise ::ArgumentError, "request must be provided" if request.nil?
2891
+
2892
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::GetReservationGroupRequest
2893
+
2894
+ # Converts hash and nil to an options object
2895
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2896
+
2897
+ # Customize the options with defaults
2898
+ metadata = @config.rpcs.get_reservation_group.metadata.to_h
2899
+
2900
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
2901
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2902
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2903
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
2904
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
2905
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2906
+
2907
+ header_params = {}
2908
+ if request.name
2909
+ header_params["name"] = request.name
2910
+ end
2911
+
2912
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
2913
+ metadata[:"x-goog-request-params"] ||= request_params_header
2914
+
2915
+ options.apply_defaults timeout: @config.rpcs.get_reservation_group.timeout,
2916
+ metadata: metadata,
2917
+ retry_policy: @config.rpcs.get_reservation_group.retry_policy
2918
+
2919
+ options.apply_defaults timeout: @config.timeout,
2920
+ metadata: @config.metadata,
2921
+ retry_policy: @config.retry_policy
2922
+
2923
+ @reservation_service_stub.call_rpc :get_reservation_group, request, options: options do |response, operation|
2924
+ yield response, operation if block_given?
2925
+ end
2926
+ rescue ::GRPC::BadStatus => e
2927
+ raise ::Google::Cloud::Error.from_error(e)
2928
+ end
2929
+
2930
+ ##
2931
+ # Deletes a reservation.
2932
+ # Returns `google.rpc.Code.FAILED_PRECONDITION` when reservation has
2933
+ # assignments.
2934
+ #
2935
+ # @overload delete_reservation_group(request, options = nil)
2936
+ # Pass arguments to `delete_reservation_group` via a request object, either of type
2937
+ # {::Google::Cloud::Bigquery::Reservation::V1::DeleteReservationGroupRequest} or an equivalent Hash.
2938
+ #
2939
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::DeleteReservationGroupRequest, ::Hash]
2940
+ # A request object representing the call parameters. Required. To specify no
2941
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
2942
+ # @param options [::Gapic::CallOptions, ::Hash]
2943
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
2944
+ #
2945
+ # @overload delete_reservation_group(name: nil)
2946
+ # Pass arguments to `delete_reservation_group` via keyword arguments. Note that at
2947
+ # least one keyword argument is required. To specify no parameters, or to keep all
2948
+ # the default parameter values, pass an empty Hash as a request object (see above).
2949
+ #
2950
+ # @param name [::String]
2951
+ # Required. Resource name of the reservation group to retrieve. E.g.,
2952
+ # `projects/myproject/locations/US/reservationGroups/team1-prod`
2953
+ #
2954
+ # @yield [response, operation] Access the result along with the RPC operation
2955
+ # @yieldparam response [::Google::Protobuf::Empty]
2956
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
2957
+ #
2958
+ # @return [::Google::Protobuf::Empty]
2959
+ #
2960
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
2961
+ #
2962
+ # @example Basic example
2963
+ # require "google/cloud/bigquery/reservation/v1"
2964
+ #
2965
+ # # Create a client object. The client can be reused for multiple calls.
2966
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
2967
+ #
2968
+ # # Create a request. To set request fields, pass in keyword arguments.
2969
+ # request = Google::Cloud::Bigquery::Reservation::V1::DeleteReservationGroupRequest.new
2970
+ #
2971
+ # # Call the delete_reservation_group method.
2972
+ # result = client.delete_reservation_group request
2973
+ #
2974
+ # # The returned object is of type Google::Protobuf::Empty.
2975
+ # p result
2976
+ #
2977
+ def delete_reservation_group request, options = nil
2978
+ raise ::ArgumentError, "request must be provided" if request.nil?
2979
+
2980
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::DeleteReservationGroupRequest
2981
+
2982
+ # Converts hash and nil to an options object
2983
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
2984
+
2985
+ # Customize the options with defaults
2986
+ metadata = @config.rpcs.delete_reservation_group.metadata.to_h
2987
+
2988
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
2989
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
2990
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
2991
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
2992
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
2993
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
2994
+
2995
+ header_params = {}
2996
+ if request.name
2997
+ header_params["name"] = request.name
2998
+ end
2999
+
3000
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3001
+ metadata[:"x-goog-request-params"] ||= request_params_header
3002
+
3003
+ options.apply_defaults timeout: @config.rpcs.delete_reservation_group.timeout,
3004
+ metadata: metadata,
3005
+ retry_policy: @config.rpcs.delete_reservation_group.retry_policy
3006
+
3007
+ options.apply_defaults timeout: @config.timeout,
3008
+ metadata: @config.metadata,
3009
+ retry_policy: @config.retry_policy
3010
+
3011
+ @reservation_service_stub.call_rpc :delete_reservation_group, request, options: options do |response, operation|
3012
+ yield response, operation if block_given?
3013
+ end
3014
+ rescue ::GRPC::BadStatus => e
3015
+ raise ::Google::Cloud::Error.from_error(e)
3016
+ end
3017
+
3018
+ ##
3019
+ # Lists all the reservation groups for the project in the specified location.
3020
+ #
3021
+ # @overload list_reservation_groups(request, options = nil)
3022
+ # Pass arguments to `list_reservation_groups` via a request object, either of type
3023
+ # {::Google::Cloud::Bigquery::Reservation::V1::ListReservationGroupsRequest} or an equivalent Hash.
3024
+ #
3025
+ # @param request [::Google::Cloud::Bigquery::Reservation::V1::ListReservationGroupsRequest, ::Hash]
3026
+ # A request object representing the call parameters. Required. To specify no
3027
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
3028
+ # @param options [::Gapic::CallOptions, ::Hash]
3029
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
3030
+ #
3031
+ # @overload list_reservation_groups(parent: nil, page_size: nil, page_token: nil)
3032
+ # Pass arguments to `list_reservation_groups` via keyword arguments. Note that at
3033
+ # least one keyword argument is required. To specify no parameters, or to keep all
3034
+ # the default parameter values, pass an empty Hash as a request object (see above).
3035
+ #
3036
+ # @param parent [::String]
3037
+ # Required. The parent resource name containing project and location, e.g.:
3038
+ # `projects/myproject/locations/US`
3039
+ # @param page_size [::Integer]
3040
+ # The maximum number of items to return per page.
3041
+ # @param page_token [::String]
3042
+ # The next_page_token value returned from a previous List request, if any.
3043
+ #
3044
+ # @yield [response, operation] Access the result along with the RPC operation
3045
+ # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup>]
3046
+ # @yieldparam operation [::GRPC::ActiveCall::Operation]
3047
+ #
3048
+ # @return [::Gapic::PagedEnumerable<::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup>]
3049
+ #
3050
+ # @raise [::Google::Cloud::Error] if the RPC is aborted.
3051
+ #
3052
+ # @example Basic example
3053
+ # require "google/cloud/bigquery/reservation/v1"
3054
+ #
3055
+ # # Create a client object. The client can be reused for multiple calls.
3056
+ # client = Google::Cloud::Bigquery::Reservation::V1::ReservationService::Client.new
3057
+ #
3058
+ # # Create a request. To set request fields, pass in keyword arguments.
3059
+ # request = Google::Cloud::Bigquery::Reservation::V1::ListReservationGroupsRequest.new
3060
+ #
3061
+ # # Call the list_reservation_groups method.
3062
+ # result = client.list_reservation_groups request
3063
+ #
3064
+ # # The returned object is of type Gapic::PagedEnumerable. You can iterate
3065
+ # # over elements, and API calls will be issued to fetch pages as needed.
3066
+ # result.each do |item|
3067
+ # # Each element is of type ::Google::Cloud::Bigquery::Reservation::V1::ReservationGroup.
3068
+ # p item
3069
+ # end
3070
+ #
3071
+ def list_reservation_groups request, options = nil
3072
+ raise ::ArgumentError, "request must be provided" if request.nil?
3073
+
3074
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Bigquery::Reservation::V1::ListReservationGroupsRequest
3075
+
3076
+ # Converts hash and nil to an options object
3077
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
3078
+
3079
+ # Customize the options with defaults
3080
+ metadata = @config.rpcs.list_reservation_groups.metadata.to_h
3081
+
3082
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
3083
+ metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
3084
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
3085
+ gapic_version: ::Google::Cloud::Bigquery::Reservation::V1::VERSION
3086
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
3087
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
3088
+
3089
+ header_params = {}
3090
+ if request.parent
3091
+ header_params["parent"] = request.parent
3092
+ end
3093
+
3094
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
3095
+ metadata[:"x-goog-request-params"] ||= request_params_header
3096
+
3097
+ options.apply_defaults timeout: @config.rpcs.list_reservation_groups.timeout,
3098
+ metadata: metadata,
3099
+ retry_policy: @config.rpcs.list_reservation_groups.retry_policy
3100
+
3101
+ options.apply_defaults timeout: @config.timeout,
3102
+ metadata: @config.metadata,
3103
+ retry_policy: @config.retry_policy
3104
+
3105
+ @reservation_service_stub.call_rpc :list_reservation_groups, request, options: options do |response, operation|
3106
+ response = ::Gapic::PagedEnumerable.new @reservation_service_stub, :list_reservation_groups, request, response, operation, options
3107
+ yield response, operation if block_given?
3108
+ throw :response, response
3109
+ end
3110
+ rescue ::GRPC::BadStatus => e
3111
+ raise ::Google::Cloud::Error.from_error(e)
3112
+ end
3113
+
2441
3114
  ##
2442
3115
  # Configuration class for the ReservationService API.
2443
3116
  #
@@ -2714,6 +3387,41 @@ module Google
2714
3387
  # @return [::Gapic::Config::Method]
2715
3388
  #
2716
3389
  attr_reader :update_bi_reservation
3390
+ ##
3391
+ # RPC-specific configuration for `get_iam_policy`
3392
+ # @return [::Gapic::Config::Method]
3393
+ #
3394
+ attr_reader :get_iam_policy
3395
+ ##
3396
+ # RPC-specific configuration for `set_iam_policy`
3397
+ # @return [::Gapic::Config::Method]
3398
+ #
3399
+ attr_reader :set_iam_policy
3400
+ ##
3401
+ # RPC-specific configuration for `test_iam_permissions`
3402
+ # @return [::Gapic::Config::Method]
3403
+ #
3404
+ attr_reader :test_iam_permissions
3405
+ ##
3406
+ # RPC-specific configuration for `create_reservation_group`
3407
+ # @return [::Gapic::Config::Method]
3408
+ #
3409
+ attr_reader :create_reservation_group
3410
+ ##
3411
+ # RPC-specific configuration for `get_reservation_group`
3412
+ # @return [::Gapic::Config::Method]
3413
+ #
3414
+ attr_reader :get_reservation_group
3415
+ ##
3416
+ # RPC-specific configuration for `delete_reservation_group`
3417
+ # @return [::Gapic::Config::Method]
3418
+ #
3419
+ attr_reader :delete_reservation_group
3420
+ ##
3421
+ # RPC-specific configuration for `list_reservation_groups`
3422
+ # @return [::Gapic::Config::Method]
3423
+ #
3424
+ attr_reader :list_reservation_groups
2717
3425
 
2718
3426
  # @private
2719
3427
  def initialize parent_rpcs = nil
@@ -2761,6 +3469,20 @@ module Google
2761
3469
  @get_bi_reservation = ::Gapic::Config::Method.new get_bi_reservation_config
2762
3470
  update_bi_reservation_config = parent_rpcs.update_bi_reservation if parent_rpcs.respond_to? :update_bi_reservation
2763
3471
  @update_bi_reservation = ::Gapic::Config::Method.new update_bi_reservation_config
3472
+ get_iam_policy_config = parent_rpcs.get_iam_policy if parent_rpcs.respond_to? :get_iam_policy
3473
+ @get_iam_policy = ::Gapic::Config::Method.new get_iam_policy_config
3474
+ set_iam_policy_config = parent_rpcs.set_iam_policy if parent_rpcs.respond_to? :set_iam_policy
3475
+ @set_iam_policy = ::Gapic::Config::Method.new set_iam_policy_config
3476
+ test_iam_permissions_config = parent_rpcs.test_iam_permissions if parent_rpcs.respond_to? :test_iam_permissions
3477
+ @test_iam_permissions = ::Gapic::Config::Method.new test_iam_permissions_config
3478
+ create_reservation_group_config = parent_rpcs.create_reservation_group if parent_rpcs.respond_to? :create_reservation_group
3479
+ @create_reservation_group = ::Gapic::Config::Method.new create_reservation_group_config
3480
+ get_reservation_group_config = parent_rpcs.get_reservation_group if parent_rpcs.respond_to? :get_reservation_group
3481
+ @get_reservation_group = ::Gapic::Config::Method.new get_reservation_group_config
3482
+ delete_reservation_group_config = parent_rpcs.delete_reservation_group if parent_rpcs.respond_to? :delete_reservation_group
3483
+ @delete_reservation_group = ::Gapic::Config::Method.new delete_reservation_group_config
3484
+ list_reservation_groups_config = parent_rpcs.list_reservation_groups if parent_rpcs.respond_to? :list_reservation_groups
3485
+ @list_reservation_groups = ::Gapic::Config::Method.new list_reservation_groups_config
2764
3486
 
2765
3487
  yield self if block_given?
2766
3488
  end