/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the backup-gateway-2021-01-01.normal.json service model. */ using System; using System.Runtime.ExceptionServices; using System.Threading; using System.Threading.Tasks; using System.Collections.Generic; using System.Net; using Amazon.BackupGateway.Model; using Amazon.BackupGateway.Model.Internal.MarshallTransformations; using Amazon.BackupGateway.Internal; using Amazon.Runtime; using Amazon.Runtime.Internal; using Amazon.Runtime.Internal.Auth; using Amazon.Runtime.Internal.Transform; namespace Amazon.BackupGateway { /// /// Implementation for accessing BackupGateway /// /// Backup gateway /// /// Backup gateway connects Backup to your hypervisor, so you can create, store, and restore /// backups of your virtual machines (VMs) anywhere, whether on-premises or in the VMware /// Cloud (VMC) on Amazon Web Services. /// /// /// /// Add on-premises resources by connecting to a hypervisor through a gateway. Backup /// will automatically discover the resources in your hypervisor. /// /// /// /// Use Backup to assign virtual or on-premises resources to a backup plan, or run on-demand /// backups. Once you have backed up your resources, you can view them and restore them /// like any resource supported by Backup. /// /// /// /// To download the Amazon Web Services software to get started, navigate to the Backup /// console, choose Gateways, then choose Create gateway. /// /// /// /// public partial class AmazonBackupGatewayClient : AmazonServiceClient, IAmazonBackupGateway { private static IServiceMetadata serviceMetadata = new AmazonBackupGatewayMetadata(); #region Constructors /// /// Constructs AmazonBackupGatewayClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// public AmazonBackupGatewayClient() : base(FallbackCredentialsFactory.GetCredentials(), new AmazonBackupGatewayConfig()) { } /// /// Constructs AmazonBackupGatewayClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The region to connect. public AmazonBackupGatewayClient(RegionEndpoint region) : base(FallbackCredentialsFactory.GetCredentials(), new AmazonBackupGatewayConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonBackupGatewayClient with the credentials loaded from the application's /// default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. /// /// Example App.config with credentials set. /// /// <?xml version="1.0" encoding="utf-8" ?> /// <configuration> /// <appSettings> /// <add key="AWSProfileName" value="AWS Default"/> /// </appSettings> /// </configuration> /// /// /// /// The AmazonBackupGatewayClient Configuration Object public AmazonBackupGatewayClient(AmazonBackupGatewayConfig config) : base(FallbackCredentialsFactory.GetCredentials(config), config){} /// /// Constructs AmazonBackupGatewayClient with AWS Credentials /// /// AWS Credentials public AmazonBackupGatewayClient(AWSCredentials credentials) : this(credentials, new AmazonBackupGatewayConfig()) { } /// /// Constructs AmazonBackupGatewayClient with AWS Credentials /// /// AWS Credentials /// The region to connect. public AmazonBackupGatewayClient(AWSCredentials credentials, RegionEndpoint region) : this(credentials, new AmazonBackupGatewayConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonBackupGatewayClient with AWS Credentials and an /// AmazonBackupGatewayClient Configuration object. /// /// AWS Credentials /// The AmazonBackupGatewayClient Configuration Object public AmazonBackupGatewayClient(AWSCredentials credentials, AmazonBackupGatewayConfig clientConfig) : base(credentials, clientConfig) { } /// /// Constructs AmazonBackupGatewayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key public AmazonBackupGatewayClient(string awsAccessKeyId, string awsSecretAccessKey) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonBackupGatewayConfig()) { } /// /// Constructs AmazonBackupGatewayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// The region to connect. public AmazonBackupGatewayClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, new AmazonBackupGatewayConfig() {RegionEndpoint=region}) { } /// /// Constructs AmazonBackupGatewayClient with AWS Access Key ID, AWS Secret Key and an /// AmazonBackupGatewayClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// The AmazonBackupGatewayClient Configuration Object public AmazonBackupGatewayClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonBackupGatewayConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, clientConfig) { } /// /// Constructs AmazonBackupGatewayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token public AmazonBackupGatewayClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonBackupGatewayConfig()) { } /// /// Constructs AmazonBackupGatewayClient with AWS Access Key ID and AWS Secret Key /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The region to connect. public AmazonBackupGatewayClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region) : this(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, new AmazonBackupGatewayConfig{RegionEndpoint = region}) { } /// /// Constructs AmazonBackupGatewayClient with AWS Access Key ID, AWS Secret Key and an /// AmazonBackupGatewayClient Configuration object. /// /// AWS Access Key ID /// AWS Secret Access Key /// AWS Session Token /// The AmazonBackupGatewayClient Configuration Object public AmazonBackupGatewayClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonBackupGatewayConfig clientConfig) : base(awsAccessKeyId, awsSecretAccessKey, awsSessionToken, clientConfig) { } #endregion #if AWS_ASYNC_ENUMERABLES_API private IBackupGatewayPaginatorFactory _paginators; /// /// Paginators for the service /// public IBackupGatewayPaginatorFactory Paginators { get { if (this._paginators == null) { this._paginators = new BackupGatewayPaginatorFactory(this); } return this._paginators; } } #endif #region Overrides /// /// Creates the signer for the service. /// protected override AbstractAWSSigner CreateSigner() { return new AWS4Signer(); } /// /// Customizes the runtime pipeline. /// /// Runtime pipeline for the current client. protected override void CustomizeRuntimePipeline(RuntimePipeline pipeline) { pipeline.RemoveHandler(); pipeline.AddHandlerAfter(new AmazonBackupGatewayEndpointResolver()); } /// /// Capture metadata for the service. /// protected override IServiceMetadata ServiceMetadata { get { return serviceMetadata; } } #endregion #region Dispose /// /// Disposes the service client. /// protected override void Dispose(bool disposing) { base.Dispose(disposing); } #endregion #region AssociateGatewayToServer internal virtual AssociateGatewayToServerResponse AssociateGatewayToServer(AssociateGatewayToServerRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateGatewayToServerRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateGatewayToServerResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Associates a backup gateway with your server. After you complete the association process, /// you can back up and restore your VMs through the gateway. /// /// Container for the necessary parameters to execute the AssociateGatewayToServer service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the AssociateGatewayToServer service method, as returned by BackupGateway. /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for AssociateGatewayToServer Operation public virtual Task AssociateGatewayToServerAsync(AssociateGatewayToServerRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = AssociateGatewayToServerRequestMarshaller.Instance; options.ResponseUnmarshaller = AssociateGatewayToServerResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region CreateGateway internal virtual CreateGatewayResponse CreateGateway(CreateGatewayRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = CreateGatewayRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateGatewayResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Creates a backup gateway. After you create a gateway, you can associate it with a /// server using the AssociateGatewayToServer operation. /// /// Container for the necessary parameters to execute the CreateGateway service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the CreateGateway service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for CreateGateway Operation public virtual Task CreateGatewayAsync(CreateGatewayRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = CreateGatewayRequestMarshaller.Instance; options.ResponseUnmarshaller = CreateGatewayResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteGateway internal virtual DeleteGatewayResponse DeleteGateway(DeleteGatewayRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteGatewayRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteGatewayResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes a backup gateway. /// /// Container for the necessary parameters to execute the DeleteGateway service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteGateway service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for DeleteGateway Operation public virtual Task DeleteGatewayAsync(DeleteGatewayRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteGatewayRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteGatewayResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DeleteHypervisor internal virtual DeleteHypervisorResponse DeleteHypervisor(DeleteHypervisorRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteHypervisorRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteHypervisorResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Deletes a hypervisor. /// /// Container for the necessary parameters to execute the DeleteHypervisor service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DeleteHypervisor service method, as returned by BackupGateway. /// /// The operation cannot proceed because you have insufficient permissions. /// /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for DeleteHypervisor Operation public virtual Task DeleteHypervisorAsync(DeleteHypervisorRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DeleteHypervisorRequestMarshaller.Instance; options.ResponseUnmarshaller = DeleteHypervisorResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region DisassociateGatewayFromServer internal virtual DisassociateGatewayFromServerResponse DisassociateGatewayFromServer(DisassociateGatewayFromServerRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateGatewayFromServerRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateGatewayFromServerResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Disassociates a backup gateway from the specified server. After the disassociation /// process finishes, the gateway can no longer access the virtual machines on the server. /// /// Container for the necessary parameters to execute the DisassociateGatewayFromServer service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the DisassociateGatewayFromServer service method, as returned by BackupGateway. /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for DisassociateGatewayFromServer Operation public virtual Task DisassociateGatewayFromServerAsync(DisassociateGatewayFromServerRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = DisassociateGatewayFromServerRequestMarshaller.Instance; options.ResponseUnmarshaller = DisassociateGatewayFromServerResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetBandwidthRateLimitSchedule internal virtual GetBandwidthRateLimitScheduleResponse GetBandwidthRateLimitSchedule(GetBandwidthRateLimitScheduleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetBandwidthRateLimitScheduleRequestMarshaller.Instance; options.ResponseUnmarshaller = GetBandwidthRateLimitScheduleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Retrieves the bandwidth rate limit schedule for a specified gateway. By default, gateways /// do not have bandwidth rate limit schedules, which means no bandwidth rate limiting /// is in effect. Use this to get a gateway's bandwidth rate limit schedule. /// /// Container for the necessary parameters to execute the GetBandwidthRateLimitSchedule service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetBandwidthRateLimitSchedule service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for GetBandwidthRateLimitSchedule Operation public virtual Task GetBandwidthRateLimitScheduleAsync(GetBandwidthRateLimitScheduleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetBandwidthRateLimitScheduleRequestMarshaller.Instance; options.ResponseUnmarshaller = GetBandwidthRateLimitScheduleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetGateway internal virtual GetGatewayResponse GetGateway(GetGatewayRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetGatewayRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGatewayResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// By providing the ARN (Amazon Resource Name), this API returns the gateway. /// /// Container for the necessary parameters to execute the GetGateway service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetGateway service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for GetGateway Operation public virtual Task GetGatewayAsync(GetGatewayRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetGatewayRequestMarshaller.Instance; options.ResponseUnmarshaller = GetGatewayResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetHypervisor internal virtual GetHypervisorResponse GetHypervisor(GetHypervisorRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetHypervisorRequestMarshaller.Instance; options.ResponseUnmarshaller = GetHypervisorResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// This action requests information about the specified hypervisor to which the gateway /// will connect. A hypervisor is hardware, software, or firmware that creates and manages /// virtual machines, and allocates resources to them. /// /// Container for the necessary parameters to execute the GetHypervisor service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetHypervisor service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for GetHypervisor Operation public virtual Task GetHypervisorAsync(GetHypervisorRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetHypervisorRequestMarshaller.Instance; options.ResponseUnmarshaller = GetHypervisorResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetHypervisorPropertyMappings internal virtual GetHypervisorPropertyMappingsResponse GetHypervisorPropertyMappings(GetHypervisorPropertyMappingsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetHypervisorPropertyMappingsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetHypervisorPropertyMappingsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// This action retrieves the property mappings for the specified hypervisor. A hypervisor /// property mapping displays the relationship of entity properties available from the /// on-premises hypervisor to the properties available in Amazon Web Services. /// /// Container for the necessary parameters to execute the GetHypervisorPropertyMappings service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetHypervisorPropertyMappings service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for GetHypervisorPropertyMappings Operation public virtual Task GetHypervisorPropertyMappingsAsync(GetHypervisorPropertyMappingsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetHypervisorPropertyMappingsRequestMarshaller.Instance; options.ResponseUnmarshaller = GetHypervisorPropertyMappingsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region GetVirtualMachine internal virtual GetVirtualMachineResponse GetVirtualMachine(GetVirtualMachineRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = GetVirtualMachineRequestMarshaller.Instance; options.ResponseUnmarshaller = GetVirtualMachineResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// By providing the ARN (Amazon Resource Name), this API returns the virtual machine. /// /// Container for the necessary parameters to execute the GetVirtualMachine service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the GetVirtualMachine service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for GetVirtualMachine Operation public virtual Task GetVirtualMachineAsync(GetVirtualMachineRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = GetVirtualMachineRequestMarshaller.Instance; options.ResponseUnmarshaller = GetVirtualMachineResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ImportHypervisorConfiguration internal virtual ImportHypervisorConfigurationResponse ImportHypervisorConfiguration(ImportHypervisorConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ImportHypervisorConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = ImportHypervisorConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Connect to a hypervisor by importing its configuration. /// /// Container for the necessary parameters to execute the ImportHypervisorConfiguration service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ImportHypervisorConfiguration service method, as returned by BackupGateway. /// /// The operation cannot proceed because you have insufficient permissions. /// /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for ImportHypervisorConfiguration Operation public virtual Task ImportHypervisorConfigurationAsync(ImportHypervisorConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ImportHypervisorConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = ImportHypervisorConfigurationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListGateways internal virtual ListGatewaysResponse ListGateways(ListGatewaysRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListGatewaysRequestMarshaller.Instance; options.ResponseUnmarshaller = ListGatewaysResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists backup gateways owned by an Amazon Web Services account in an Amazon Web Services /// Region. The returned list is ordered by gateway Amazon Resource Name (ARN). /// /// Container for the necessary parameters to execute the ListGateways service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListGateways service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for ListGateways Operation public virtual Task ListGatewaysAsync(ListGatewaysRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListGatewaysRequestMarshaller.Instance; options.ResponseUnmarshaller = ListGatewaysResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListHypervisors internal virtual ListHypervisorsResponse ListHypervisors(ListHypervisorsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListHypervisorsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListHypervisorsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists your hypervisors. /// /// Container for the necessary parameters to execute the ListHypervisors service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListHypervisors service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for ListHypervisors Operation public virtual Task ListHypervisorsAsync(ListHypervisorsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListHypervisorsRequestMarshaller.Instance; options.ResponseUnmarshaller = ListHypervisorsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListTagsForResource internal virtual ListTagsForResourceResponse ListTagsForResource(ListTagsForResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists the tags applied to the resource identified by its Amazon Resource Name (ARN). /// /// Container for the necessary parameters to execute the ListTagsForResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListTagsForResource service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for ListTagsForResource Operation public virtual Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListTagsForResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = ListTagsForResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region ListVirtualMachines internal virtual ListVirtualMachinesResponse ListVirtualMachines(ListVirtualMachinesRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = ListVirtualMachinesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListVirtualMachinesResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Lists your virtual machines. /// /// Container for the necessary parameters to execute the ListVirtualMachines service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the ListVirtualMachines service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for ListVirtualMachines Operation public virtual Task ListVirtualMachinesAsync(ListVirtualMachinesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = ListVirtualMachinesRequestMarshaller.Instance; options.ResponseUnmarshaller = ListVirtualMachinesResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutBandwidthRateLimitSchedule internal virtual PutBandwidthRateLimitScheduleResponse PutBandwidthRateLimitSchedule(PutBandwidthRateLimitScheduleRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutBandwidthRateLimitScheduleRequestMarshaller.Instance; options.ResponseUnmarshaller = PutBandwidthRateLimitScheduleResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// This action sets the bandwidth rate limit schedule for a specified gateway. By default, /// gateways do not have a bandwidth rate limit schedule, which means no bandwidth rate /// limiting is in effect. Use this to initiate a gateway's bandwidth rate limit schedule. /// /// Container for the necessary parameters to execute the PutBandwidthRateLimitSchedule service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutBandwidthRateLimitSchedule service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for PutBandwidthRateLimitSchedule Operation public virtual Task PutBandwidthRateLimitScheduleAsync(PutBandwidthRateLimitScheduleRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutBandwidthRateLimitScheduleRequestMarshaller.Instance; options.ResponseUnmarshaller = PutBandwidthRateLimitScheduleResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutHypervisorPropertyMappings internal virtual PutHypervisorPropertyMappingsResponse PutHypervisorPropertyMappings(PutHypervisorPropertyMappingsRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutHypervisorPropertyMappingsRequestMarshaller.Instance; options.ResponseUnmarshaller = PutHypervisorPropertyMappingsResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// This action sets the property mappings for the specified hypervisor. A hypervisor /// property mapping displays the relationship of entity properties available from the /// on-premises hypervisor to the properties available in Amazon Web Services. /// /// Container for the necessary parameters to execute the PutHypervisorPropertyMappings service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutHypervisorPropertyMappings service method, as returned by BackupGateway. /// /// The operation cannot proceed because you have insufficient permissions. /// /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for PutHypervisorPropertyMappings Operation public virtual Task PutHypervisorPropertyMappingsAsync(PutHypervisorPropertyMappingsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutHypervisorPropertyMappingsRequestMarshaller.Instance; options.ResponseUnmarshaller = PutHypervisorPropertyMappingsResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region PutMaintenanceStartTime internal virtual PutMaintenanceStartTimeResponse PutMaintenanceStartTime(PutMaintenanceStartTimeRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = PutMaintenanceStartTimeRequestMarshaller.Instance; options.ResponseUnmarshaller = PutMaintenanceStartTimeResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Set the maintenance start time for a gateway. /// /// Container for the necessary parameters to execute the PutMaintenanceStartTime service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the PutMaintenanceStartTime service method, as returned by BackupGateway. /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for PutMaintenanceStartTime Operation public virtual Task PutMaintenanceStartTimeAsync(PutMaintenanceStartTimeRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = PutMaintenanceStartTimeRequestMarshaller.Instance; options.ResponseUnmarshaller = PutMaintenanceStartTimeResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region StartVirtualMachinesMetadataSync internal virtual StartVirtualMachinesMetadataSyncResponse StartVirtualMachinesMetadataSync(StartVirtualMachinesMetadataSyncRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = StartVirtualMachinesMetadataSyncRequestMarshaller.Instance; options.ResponseUnmarshaller = StartVirtualMachinesMetadataSyncResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// This action sends a request to sync metadata across the specified virtual machines. /// /// Container for the necessary parameters to execute the StartVirtualMachinesMetadataSync service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the StartVirtualMachinesMetadataSync service method, as returned by BackupGateway. /// /// The operation cannot proceed because you have insufficient permissions. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for StartVirtualMachinesMetadataSync Operation public virtual Task StartVirtualMachinesMetadataSyncAsync(StartVirtualMachinesMetadataSyncRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = StartVirtualMachinesMetadataSyncRequestMarshaller.Instance; options.ResponseUnmarshaller = StartVirtualMachinesMetadataSyncResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region TagResource internal virtual TagResourceResponse TagResource(TagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Tag the resource. /// /// Container for the necessary parameters to execute the TagResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the TagResource service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for TagResource Operation public virtual Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = TagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = TagResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region TestHypervisorConfiguration internal virtual TestHypervisorConfigurationResponse TestHypervisorConfiguration(TestHypervisorConfigurationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = TestHypervisorConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = TestHypervisorConfigurationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Tests your hypervisor configuration to validate that backup gateway can connect with /// the hypervisor and its resources. /// /// Container for the necessary parameters to execute the TestHypervisorConfiguration service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the TestHypervisorConfiguration service method, as returned by BackupGateway. /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for TestHypervisorConfiguration Operation public virtual Task TestHypervisorConfigurationAsync(TestHypervisorConfigurationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = TestHypervisorConfigurationRequestMarshaller.Instance; options.ResponseUnmarshaller = TestHypervisorConfigurationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UntagResource internal virtual UntagResourceResponse UntagResource(UntagResourceRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Removes tags from the resource. /// /// Container for the necessary parameters to execute the UntagResource service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UntagResource service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for UntagResource Operation public virtual Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UntagResourceRequestMarshaller.Instance; options.ResponseUnmarshaller = UntagResourceResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateGatewayInformation internal virtual UpdateGatewayInformationResponse UpdateGatewayInformation(UpdateGatewayInformationRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGatewayInformationRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGatewayInformationResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates a gateway's name. Specify which gateway to update using the Amazon Resource /// Name (ARN) of the gateway in your request. /// /// Container for the necessary parameters to execute the UpdateGatewayInformation service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateGatewayInformation service method, as returned by BackupGateway. /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for UpdateGatewayInformation Operation public virtual Task UpdateGatewayInformationAsync(UpdateGatewayInformationRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGatewayInformationRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGatewayInformationResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateGatewaySoftwareNow internal virtual UpdateGatewaySoftwareNowResponse UpdateGatewaySoftwareNow(UpdateGatewaySoftwareNowRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGatewaySoftwareNowRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGatewaySoftwareNowResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates the gateway virtual machine (VM) software. The request immediately triggers /// the software update. /// /// /// /// When you make this request, you get a 200 OK success response immediately. /// However, it might take some time for the update to complete. /// /// /// /// Container for the necessary parameters to execute the UpdateGatewaySoftwareNow service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateGatewaySoftwareNow service method, as returned by BackupGateway. /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for UpdateGatewaySoftwareNow Operation public virtual Task UpdateGatewaySoftwareNowAsync(UpdateGatewaySoftwareNowRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateGatewaySoftwareNowRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateGatewaySoftwareNowResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion #region UpdateHypervisor internal virtual UpdateHypervisorResponse UpdateHypervisor(UpdateHypervisorRequest request) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateHypervisorRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateHypervisorResponseUnmarshaller.Instance; return Invoke(request, options); } /// /// Updates a hypervisor metadata, including its host, username, and password. Specify /// which hypervisor to update using the Amazon Resource Name (ARN) of the hypervisor /// in your request. /// /// Container for the necessary parameters to execute the UpdateHypervisor service method. /// /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// /// /// The response from the UpdateHypervisor service method, as returned by BackupGateway. /// /// The operation cannot proceed because you have insufficient permissions. /// /// /// The operation cannot proceed because it is not supported. /// /// /// The operation did not succeed because an internal error occurred. Try again later. /// /// /// A resource that is required for the action wasn't found. /// /// /// TPS has been limited to protect against intentional or unintentional high request /// volumes. /// /// /// The operation did not succeed because a validation error occurred. /// /// REST API Reference for UpdateHypervisor Operation public virtual Task UpdateHypervisorAsync(UpdateHypervisorRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var options = new InvokeOptions(); options.RequestMarshaller = UpdateHypervisorRequestMarshaller.Instance; options.ResponseUnmarshaller = UpdateHypervisorResponseUnmarshaller.Instance; return InvokeAsync(request, options, cancellationToken); } #endregion } }