lib/google/cloud/compute/v1/license_codes/rest/service_stub.rb in google-cloud-compute-v1-1.4.0 vs lib/google/cloud/compute/v1/license_codes/rest/service_stub.rb in google-cloud-compute-v1-1.5.0

- old
+ new

@@ -53,37 +53,31 @@ # @return [::Google::Cloud::Compute::V1::LicenseCode] # A result object deserialized from the server's reply def get request_pb, options = nil raise ::ArgumentError, "request must be provided" if request_pb.nil? - uri, _body, _query_string_params = transcode_get_request request_pb - response = @client_stub.make_get_request( + verb, uri, query_string_params, body = transcode_get_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split("=", 2) } + else + {} + end + + response = @client_stub.make_http_request( + verb, uri: uri, + body: body || "", + params: query_string_params, options: options ) result = ::Google::Cloud::Compute::V1::LicenseCode.decode_json response.body, ignore_unknown_fields: true yield result, response if block_given? result end ## - # GRPC transcoding helper method for the get REST call - # - # @param request_pb [::Google::Cloud::Compute::V1::GetLicenseCodeRequest] - # A request object representing the call parameters. Required. - # @return [Array(String, [String, nil], Hash{String => String})] - # Uri, Body, Query string parameters - def transcode_get_request request_pb - uri = "/compute/v1/projects/#{request_pb.project}/global/licenseCodes/#{request_pb.license_code}" - body = nil - query_string_params = {} - - [uri, body, query_string_params] - end - - ## # Baseline implementation for the test_iam_permissions REST call # # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsLicenseCodeRequest] # A request object representing the call parameters. Required. # @param options [::Gapic::CallOptions] @@ -96,34 +90,75 @@ # @return [::Google::Cloud::Compute::V1::TestPermissionsResponse] # A result object deserialized from the server's reply def test_iam_permissions request_pb, options = nil raise ::ArgumentError, "request must be provided" if request_pb.nil? - uri, body, _query_string_params = transcode_test_iam_permissions_request request_pb - response = @client_stub.make_post_request( + verb, uri, query_string_params, body = transcode_test_iam_permissions_request request_pb + query_string_params = if query_string_params.any? + query_string_params.to_h { |p| p.split("=", 2) } + else + {} + end + + response = @client_stub.make_http_request( + verb, uri: uri, - body: body, + body: body || "", + params: query_string_params, options: options ) result = ::Google::Cloud::Compute::V1::TestPermissionsResponse.decode_json response.body, ignore_unknown_fields: true yield result, response if block_given? result end + + private + ## + # @private + # + # GRPC transcoding helper method for the get REST call + # + # @param request_pb [::Google::Cloud::Compute::V1::GetLicenseCodeRequest] + # A request object representing the call parameters. Required. + # @return [Array(String, [String, nil], Hash{String => String})] + # Uri, Body, Query string parameters + def transcode_get_request request_pb + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :get, + uri_template: "/compute/v1/projects/{project}/global/licenseCodes/{license_code}", + matches: [ + ["project", %r{[^/]+}, false], + ["license_code", %r{[^/]+}, false] + ] + ) + transcoder.transcode request_pb + end + + ## + # @private + # # GRPC transcoding helper method for the test_iam_permissions REST call # # @param request_pb [::Google::Cloud::Compute::V1::TestIamPermissionsLicenseCodeRequest] # A request object representing the call parameters. Required. # @return [Array(String, [String, nil], Hash{String => String})] # Uri, Body, Query string parameters def transcode_test_iam_permissions_request request_pb - uri = "/compute/v1/projects/#{request_pb.project}/global/licenseCodes/#{request_pb.resource}/testIamPermissions" - body = request_pb.test_permissions_request_resource.to_json - query_string_params = {} - - [uri, body, query_string_params] + transcoder = Gapic::Rest::GrpcTranscoder.new + .with_bindings( + uri_method: :post, + uri_template: "/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions", + body: "test_permissions_request_resource", + matches: [ + ["project", %r{[^/]+}, false], + ["resource", %r{[^/]+}, false] + ] + ) + transcoder.transcode request_pb end end end end end