/*
* 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
}
}