/// <summary>
        /// Pauses a transfer operation.
        /// Documentation https://developers.google.com/storagetransfer/v1/reference/transferOperations/pause
        /// Generation Note: This does not always build corectly.  Google needs to standardise things I need to figuer out which ones are wrong.
        /// </summary>
        /// <param name="service">Authenticated Storagetransfer service.</param>
        /// <param name="name">The name of the transfer operation.Required.</param>
        /// <param name="body">A valid Storagetransfer v1 body.</param>
        /// <returns>EmptyResponse</returns>
        public static Empty Pause(StoragetransferService service, string name, PauseTransferOperationRequest body)
        {
            try
            {
                // Initial validation.
                if (service == null)
                {
                    throw new ArgumentNullException("service");
                }
                if (body == null)
                {
                    throw new ArgumentNullException("body");
                }
                if (name == null)
                {
                    throw new ArgumentNullException(name);
                }

                // Make the request.
                return(service.TransferOperations.Pause(body, name).Execute());
            }
            catch (Exception ex)
            {
                throw new Exception("Request TransferOperations.Pause failed.", ex);
            }
        }
        /// <summary>Snippet for PauseTransferOperation</summary>
        public void PauseTransferOperationRequestObject()
        {
            // Snippet: PauseTransferOperation(PauseTransferOperationRequest, CallSettings)
            // Create client
            StorageTransferServiceClient storageTransferServiceClient = StorageTransferServiceClient.Create();
            // Initialize request argument(s)
            PauseTransferOperationRequest request = new PauseTransferOperationRequest {
                Name = "",
            };

            // Make the request
            storageTransferServiceClient.PauseTransferOperation(request);
            // End snippet
        }
        /// <summary>Snippet for PauseTransferOperationAsync</summary>
        public async Task PauseTransferOperationRequestObjectAsync()
        {
            // Snippet: PauseTransferOperationAsync(PauseTransferOperationRequest, CallSettings)
            // Additional: PauseTransferOperationAsync(PauseTransferOperationRequest, CancellationToken)
            // Create client
            StorageTransferServiceClient storageTransferServiceClient = await StorageTransferServiceClient.CreateAsync();

            // Initialize request argument(s)
            PauseTransferOperationRequest request = new PauseTransferOperationRequest {
                Name = "",
            };
            // Make the request
            await storageTransferServiceClient.PauseTransferOperationAsync(request);

            // End snippet
        }
        public void PauseTransferOperationRequestObject()
        {
            moq::Mock <StorageTransferService.StorageTransferServiceClient> mockGrpcClient = new moq::Mock <StorageTransferService.StorageTransferServiceClient>(moq::MockBehavior.Strict);

            mockGrpcClient.Setup(x => x.CreateOperationsClient()).Returns(new moq::Mock <lro::Operations.OperationsClient>().Object);
            PauseTransferOperationRequest request = new PauseTransferOperationRequest
            {
                Name = "name1c9368b0",
            };
            wkt::Empty expectedResponse = new wkt::Empty {
            };

            mockGrpcClient.Setup(x => x.PauseTransferOperation(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            StorageTransferServiceClient client = new StorageTransferServiceClientImpl(mockGrpcClient.Object, null);

            client.PauseTransferOperation(request);
            mockGrpcClient.VerifyAll();
        }
        public async stt::Task PauseTransferOperationRequestObjectAsync()
        {
            moq::Mock <StorageTransferService.StorageTransferServiceClient> mockGrpcClient = new moq::Mock <StorageTransferService.StorageTransferServiceClient>(moq::MockBehavior.Strict);

            mockGrpcClient.Setup(x => x.CreateOperationsClient()).Returns(new moq::Mock <lro::Operations.OperationsClient>().Object);
            PauseTransferOperationRequest request = new PauseTransferOperationRequest
            {
                Name = "name1c9368b0",
            };
            wkt::Empty expectedResponse = new wkt::Empty {
            };

            mockGrpcClient.Setup(x => x.PauseTransferOperationAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <wkt::Empty>(stt::Task.FromResult(expectedResponse), null, null, null, null));
            StorageTransferServiceClient client = new StorageTransferServiceClientImpl(mockGrpcClient.Object, null);
            await client.PauseTransferOperationAsync(request, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

            await client.PauseTransferOperationAsync(request, st::CancellationToken.None);

            mockGrpcClient.VerifyAll();
        }