/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace mgn
{
/**
* The Application Migration Service service.
*/
class AWS_MGN_API MgnClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
static const char* SERVICE_NAME;
static const char* ALLOCATION_TAG;
typedef MgnClientConfiguration ClientConfigurationType;
typedef MgnEndpointProvider EndpointProviderType;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
MgnClient(const Aws::mgn::MgnClientConfiguration& clientConfiguration = Aws::mgn::MgnClientConfiguration(),
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG));
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
MgnClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::mgn::MgnClientConfiguration& clientConfiguration = Aws::mgn::MgnClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
MgnClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::mgn::MgnClientConfiguration& clientConfiguration = Aws::mgn::MgnClientConfiguration());
/* Legacy constructors due deprecation */
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
MgnClient(const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
MgnClient(const Aws::Auth::AWSCredentials& credentials,
const Aws::Client::ClientConfiguration& clientConfiguration);
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
MgnClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~MgnClient();
/**
* Archive application.
See Also:
AWS
* API Reference
*/
virtual Model::ArchiveApplicationOutcome ArchiveApplication(const Model::ArchiveApplicationRequest& request) const;
/**
* A Callable wrapper for ArchiveApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ArchiveApplicationOutcomeCallable ArchiveApplicationCallable(const ArchiveApplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::ArchiveApplication, request);
}
/**
* An Async wrapper for ArchiveApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ArchiveApplicationAsync(const ArchiveApplicationRequestT& request, const ArchiveApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ArchiveApplication, request, handler, context);
}
/**
* Archive wave.
See Also:
AWS API
* Reference
*/
virtual Model::ArchiveWaveOutcome ArchiveWave(const Model::ArchiveWaveRequest& request) const;
/**
* A Callable wrapper for ArchiveWave that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ArchiveWaveOutcomeCallable ArchiveWaveCallable(const ArchiveWaveRequestT& request) const
{
return SubmitCallable(&MgnClient::ArchiveWave, request);
}
/**
* An Async wrapper for ArchiveWave that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ArchiveWaveAsync(const ArchiveWaveRequestT& request, const ArchiveWaveResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ArchiveWave, request, handler, context);
}
/**
* Associate applications to wave.
See Also:
AWS
* API Reference
*/
virtual Model::AssociateApplicationsOutcome AssociateApplications(const Model::AssociateApplicationsRequest& request) const;
/**
* A Callable wrapper for AssociateApplications that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::AssociateApplicationsOutcomeCallable AssociateApplicationsCallable(const AssociateApplicationsRequestT& request) const
{
return SubmitCallable(&MgnClient::AssociateApplications, request);
}
/**
* An Async wrapper for AssociateApplications that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void AssociateApplicationsAsync(const AssociateApplicationsRequestT& request, const AssociateApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::AssociateApplications, request, handler, context);
}
/**
* Associate source servers to application.
See Also:
AWS
* API Reference
*/
virtual Model::AssociateSourceServersOutcome AssociateSourceServers(const Model::AssociateSourceServersRequest& request) const;
/**
* A Callable wrapper for AssociateSourceServers that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::AssociateSourceServersOutcomeCallable AssociateSourceServersCallable(const AssociateSourceServersRequestT& request) const
{
return SubmitCallable(&MgnClient::AssociateSourceServers, request);
}
/**
* An Async wrapper for AssociateSourceServers that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void AssociateSourceServersAsync(const AssociateSourceServersRequestT& request, const AssociateSourceServersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::AssociateSourceServers, request, handler, context);
}
/**
* Allows the user to set the SourceServer.LifeCycle.state property for specific
* Source Server IDs to one of the following: READY_FOR_TEST or READY_FOR_CUTOVER.
* This command only works if the Source Server is already launchable
* (dataReplicationInfo.lagDuration is not null.)
See Also:
AWS
* API Reference
*/
virtual Model::ChangeServerLifeCycleStateOutcome ChangeServerLifeCycleState(const Model::ChangeServerLifeCycleStateRequest& request) const;
/**
* A Callable wrapper for ChangeServerLifeCycleState that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ChangeServerLifeCycleStateOutcomeCallable ChangeServerLifeCycleStateCallable(const ChangeServerLifeCycleStateRequestT& request) const
{
return SubmitCallable(&MgnClient::ChangeServerLifeCycleState, request);
}
/**
* An Async wrapper for ChangeServerLifeCycleState that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ChangeServerLifeCycleStateAsync(const ChangeServerLifeCycleStateRequestT& request, const ChangeServerLifeCycleStateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ChangeServerLifeCycleState, request, handler, context);
}
/**
* Create application.
See Also:
AWS
* API Reference
*/
virtual Model::CreateApplicationOutcome CreateApplication(const Model::CreateApplicationRequest& request) const;
/**
* A Callable wrapper for CreateApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateApplicationOutcomeCallable CreateApplicationCallable(const CreateApplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::CreateApplication, request);
}
/**
* An Async wrapper for CreateApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateApplicationAsync(const CreateApplicationRequestT& request, const CreateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::CreateApplication, request, handler, context);
}
/**
* Creates a new Launch Configuration Template.
See Also:
AWS
* API Reference
*/
virtual Model::CreateLaunchConfigurationTemplateOutcome CreateLaunchConfigurationTemplate(const Model::CreateLaunchConfigurationTemplateRequest& request) const;
/**
* A Callable wrapper for CreateLaunchConfigurationTemplate that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateLaunchConfigurationTemplateOutcomeCallable CreateLaunchConfigurationTemplateCallable(const CreateLaunchConfigurationTemplateRequestT& request) const
{
return SubmitCallable(&MgnClient::CreateLaunchConfigurationTemplate, request);
}
/**
* An Async wrapper for CreateLaunchConfigurationTemplate that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateLaunchConfigurationTemplateAsync(const CreateLaunchConfigurationTemplateRequestT& request, const CreateLaunchConfigurationTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::CreateLaunchConfigurationTemplate, request, handler, context);
}
/**
* Creates a new ReplicationConfigurationTemplate.
See Also:
AWS
* API Reference
*/
virtual Model::CreateReplicationConfigurationTemplateOutcome CreateReplicationConfigurationTemplate(const Model::CreateReplicationConfigurationTemplateRequest& request) const;
/**
* A Callable wrapper for CreateReplicationConfigurationTemplate that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateReplicationConfigurationTemplateOutcomeCallable CreateReplicationConfigurationTemplateCallable(const CreateReplicationConfigurationTemplateRequestT& request) const
{
return SubmitCallable(&MgnClient::CreateReplicationConfigurationTemplate, request);
}
/**
* An Async wrapper for CreateReplicationConfigurationTemplate that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateReplicationConfigurationTemplateAsync(const CreateReplicationConfigurationTemplateRequestT& request, const CreateReplicationConfigurationTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::CreateReplicationConfigurationTemplate, request, handler, context);
}
/**
* Create wave.
See Also:
AWS API
* Reference
*/
virtual Model::CreateWaveOutcome CreateWave(const Model::CreateWaveRequest& request) const;
/**
* A Callable wrapper for CreateWave that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateWaveOutcomeCallable CreateWaveCallable(const CreateWaveRequestT& request) const
{
return SubmitCallable(&MgnClient::CreateWave, request);
}
/**
* An Async wrapper for CreateWave that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateWaveAsync(const CreateWaveRequestT& request, const CreateWaveResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::CreateWave, request, handler, context);
}
/**
* Delete application.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteApplicationOutcome DeleteApplication(const Model::DeleteApplicationRequest& request) const;
/**
* A Callable wrapper for DeleteApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteApplicationOutcomeCallable DeleteApplicationCallable(const DeleteApplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteApplication, request);
}
/**
* An Async wrapper for DeleteApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteApplicationAsync(const DeleteApplicationRequestT& request, const DeleteApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteApplication, request, handler, context);
}
/**
* Deletes a single Job by ID.
See Also:
AWS API
* Reference
*/
virtual Model::DeleteJobOutcome DeleteJob(const Model::DeleteJobRequest& request) const;
/**
* A Callable wrapper for DeleteJob that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteJobOutcomeCallable DeleteJobCallable(const DeleteJobRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteJob, request);
}
/**
* An Async wrapper for DeleteJob that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteJobAsync(const DeleteJobRequestT& request, const DeleteJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteJob, request, handler, context);
}
/**
* Deletes a single Launch Configuration Template by ID.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteLaunchConfigurationTemplateOutcome DeleteLaunchConfigurationTemplate(const Model::DeleteLaunchConfigurationTemplateRequest& request) const;
/**
* A Callable wrapper for DeleteLaunchConfigurationTemplate that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteLaunchConfigurationTemplateOutcomeCallable DeleteLaunchConfigurationTemplateCallable(const DeleteLaunchConfigurationTemplateRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteLaunchConfigurationTemplate, request);
}
/**
* An Async wrapper for DeleteLaunchConfigurationTemplate that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteLaunchConfigurationTemplateAsync(const DeleteLaunchConfigurationTemplateRequestT& request, const DeleteLaunchConfigurationTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteLaunchConfigurationTemplate, request, handler, context);
}
/**
* Deletes a single Replication Configuration Template by ID
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteReplicationConfigurationTemplateOutcome DeleteReplicationConfigurationTemplate(const Model::DeleteReplicationConfigurationTemplateRequest& request) const;
/**
* A Callable wrapper for DeleteReplicationConfigurationTemplate that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteReplicationConfigurationTemplateOutcomeCallable DeleteReplicationConfigurationTemplateCallable(const DeleteReplicationConfigurationTemplateRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteReplicationConfigurationTemplate, request);
}
/**
* An Async wrapper for DeleteReplicationConfigurationTemplate that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteReplicationConfigurationTemplateAsync(const DeleteReplicationConfigurationTemplateRequestT& request, const DeleteReplicationConfigurationTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteReplicationConfigurationTemplate, request, handler, context);
}
/**
* Deletes a single source server by ID.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteSourceServerOutcome DeleteSourceServer(const Model::DeleteSourceServerRequest& request) const;
/**
* A Callable wrapper for DeleteSourceServer that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteSourceServerOutcomeCallable DeleteSourceServerCallable(const DeleteSourceServerRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteSourceServer, request);
}
/**
* An Async wrapper for DeleteSourceServer that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteSourceServerAsync(const DeleteSourceServerRequestT& request, const DeleteSourceServerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteSourceServer, request, handler, context);
}
/**
* Deletes a given vCenter client by ID.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteVcenterClientOutcome DeleteVcenterClient(const Model::DeleteVcenterClientRequest& request) const;
/**
* A Callable wrapper for DeleteVcenterClient that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteVcenterClientOutcomeCallable DeleteVcenterClientCallable(const DeleteVcenterClientRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteVcenterClient, request);
}
/**
* An Async wrapper for DeleteVcenterClient that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteVcenterClientAsync(const DeleteVcenterClientRequestT& request, const DeleteVcenterClientResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteVcenterClient, request, handler, context);
}
/**
* Delete wave.
See Also:
AWS API
* Reference
*/
virtual Model::DeleteWaveOutcome DeleteWave(const Model::DeleteWaveRequest& request) const;
/**
* A Callable wrapper for DeleteWave that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteWaveOutcomeCallable DeleteWaveCallable(const DeleteWaveRequestT& request) const
{
return SubmitCallable(&MgnClient::DeleteWave, request);
}
/**
* An Async wrapper for DeleteWave that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteWaveAsync(const DeleteWaveRequestT& request, const DeleteWaveResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DeleteWave, request, handler, context);
}
/**
* Retrieves detailed job log items with paging.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeJobLogItemsOutcome DescribeJobLogItems(const Model::DescribeJobLogItemsRequest& request) const;
/**
* A Callable wrapper for DescribeJobLogItems that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeJobLogItemsOutcomeCallable DescribeJobLogItemsCallable(const DescribeJobLogItemsRequestT& request) const
{
return SubmitCallable(&MgnClient::DescribeJobLogItems, request);
}
/**
* An Async wrapper for DescribeJobLogItems that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeJobLogItemsAsync(const DescribeJobLogItemsRequestT& request, const DescribeJobLogItemsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DescribeJobLogItems, request, handler, context);
}
/**
* Returns a list of Jobs. Use the JobsID and fromDate and toData filters to
* limit which jobs are returned. The response is sorted by creationDataTime -
* latest date first. Jobs are normally created by the StartTest, StartCutover, and
* TerminateTargetInstances APIs. Jobs are also created by DiagnosticLaunch and
* TerminateDiagnosticInstances, which are APIs available only to *Support* and
* only used in response to relevant support tickets.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeJobsOutcome DescribeJobs(const Model::DescribeJobsRequest& request) const;
/**
* A Callable wrapper for DescribeJobs that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeJobsOutcomeCallable DescribeJobsCallable(const DescribeJobsRequestT& request) const
{
return SubmitCallable(&MgnClient::DescribeJobs, request);
}
/**
* An Async wrapper for DescribeJobs that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeJobsAsync(const DescribeJobsRequestT& request, const DescribeJobsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DescribeJobs, request, handler, context);
}
/**
* Lists all Launch Configuration Templates, filtered by Launch Configuration
* Template IDs
See Also:
AWS
* API Reference
*/
virtual Model::DescribeLaunchConfigurationTemplatesOutcome DescribeLaunchConfigurationTemplates(const Model::DescribeLaunchConfigurationTemplatesRequest& request) const;
/**
* A Callable wrapper for DescribeLaunchConfigurationTemplates that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeLaunchConfigurationTemplatesOutcomeCallable DescribeLaunchConfigurationTemplatesCallable(const DescribeLaunchConfigurationTemplatesRequestT& request) const
{
return SubmitCallable(&MgnClient::DescribeLaunchConfigurationTemplates, request);
}
/**
* An Async wrapper for DescribeLaunchConfigurationTemplates that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeLaunchConfigurationTemplatesAsync(const DescribeLaunchConfigurationTemplatesRequestT& request, const DescribeLaunchConfigurationTemplatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DescribeLaunchConfigurationTemplates, request, handler, context);
}
/**
* Lists all ReplicationConfigurationTemplates, filtered by Source Server
* IDs.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeReplicationConfigurationTemplatesOutcome DescribeReplicationConfigurationTemplates(const Model::DescribeReplicationConfigurationTemplatesRequest& request) const;
/**
* A Callable wrapper for DescribeReplicationConfigurationTemplates that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeReplicationConfigurationTemplatesOutcomeCallable DescribeReplicationConfigurationTemplatesCallable(const DescribeReplicationConfigurationTemplatesRequestT& request) const
{
return SubmitCallable(&MgnClient::DescribeReplicationConfigurationTemplates, request);
}
/**
* An Async wrapper for DescribeReplicationConfigurationTemplates that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeReplicationConfigurationTemplatesAsync(const DescribeReplicationConfigurationTemplatesRequestT& request, const DescribeReplicationConfigurationTemplatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DescribeReplicationConfigurationTemplates, request, handler, context);
}
/**
* Retrieves all SourceServers or multiple SourceServers by ID.
See
* Also:
AWS
* API Reference
*/
virtual Model::DescribeSourceServersOutcome DescribeSourceServers(const Model::DescribeSourceServersRequest& request) const;
/**
* A Callable wrapper for DescribeSourceServers that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeSourceServersOutcomeCallable DescribeSourceServersCallable(const DescribeSourceServersRequestT& request) const
{
return SubmitCallable(&MgnClient::DescribeSourceServers, request);
}
/**
* An Async wrapper for DescribeSourceServers that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeSourceServersAsync(const DescribeSourceServersRequestT& request, const DescribeSourceServersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DescribeSourceServers, request, handler, context);
}
/**
* Returns a list of the installed vCenter clients.
See Also:
* AWS
* API Reference
*/
virtual Model::DescribeVcenterClientsOutcome DescribeVcenterClients(const Model::DescribeVcenterClientsRequest& request) const;
/**
* A Callable wrapper for DescribeVcenterClients that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeVcenterClientsOutcomeCallable DescribeVcenterClientsCallable(const DescribeVcenterClientsRequestT& request) const
{
return SubmitCallable(&MgnClient::DescribeVcenterClients, request);
}
/**
* An Async wrapper for DescribeVcenterClients that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeVcenterClientsAsync(const DescribeVcenterClientsRequestT& request, const DescribeVcenterClientsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DescribeVcenterClients, request, handler, context);
}
/**
* Disassociate applications from wave.
See Also:
AWS
* API Reference
*/
virtual Model::DisassociateApplicationsOutcome DisassociateApplications(const Model::DisassociateApplicationsRequest& request) const;
/**
* A Callable wrapper for DisassociateApplications that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisassociateApplicationsOutcomeCallable DisassociateApplicationsCallable(const DisassociateApplicationsRequestT& request) const
{
return SubmitCallable(&MgnClient::DisassociateApplications, request);
}
/**
* An Async wrapper for DisassociateApplications that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisassociateApplicationsAsync(const DisassociateApplicationsRequestT& request, const DisassociateApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DisassociateApplications, request, handler, context);
}
/**
* Disassociate source servers from application.
See Also:
AWS
* API Reference
*/
virtual Model::DisassociateSourceServersOutcome DisassociateSourceServers(const Model::DisassociateSourceServersRequest& request) const;
/**
* A Callable wrapper for DisassociateSourceServers that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisassociateSourceServersOutcomeCallable DisassociateSourceServersCallable(const DisassociateSourceServersRequestT& request) const
{
return SubmitCallable(&MgnClient::DisassociateSourceServers, request);
}
/**
* An Async wrapper for DisassociateSourceServers that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisassociateSourceServersAsync(const DisassociateSourceServersRequestT& request, const DisassociateSourceServersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DisassociateSourceServers, request, handler, context);
}
/**
* Disconnects specific Source Servers from Application Migration Service. Data
* replication is stopped immediately. All AWS resources created by Application
* Migration Service for enabling the replication of these source servers will be
* terminated / deleted within 90 minutes. Launched Test or Cutover instances will
* NOT be terminated. If the agent on the source server has not been prevented from
* communicating with the Application Migration Service service, then it will
* receive a command to uninstall itself (within approximately 10 minutes). The
* following properties of the SourceServer will be changed immediately:
* dataReplicationInfo.dataReplicationState will be set to DISCONNECTED; The
* totalStorageBytes property for each of dataReplicationInfo.replicatedDisks will
* be set to zero; dataReplicationInfo.lagDuration and
* dataReplicationInfo.lagDuration will be nullified.
See Also:
AWS
* API Reference
*/
virtual Model::DisconnectFromServiceOutcome DisconnectFromService(const Model::DisconnectFromServiceRequest& request) const;
/**
* A Callable wrapper for DisconnectFromService that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisconnectFromServiceOutcomeCallable DisconnectFromServiceCallable(const DisconnectFromServiceRequestT& request) const
{
return SubmitCallable(&MgnClient::DisconnectFromService, request);
}
/**
* An Async wrapper for DisconnectFromService that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisconnectFromServiceAsync(const DisconnectFromServiceRequestT& request, const DisconnectFromServiceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::DisconnectFromService, request, handler, context);
}
/**
* Finalizes the cutover immediately for specific Source Servers. All AWS
* resources created by Application Migration Service for enabling the replication
* of these source servers will be terminated / deleted within 90 minutes. Launched
* Test or Cutover instances will NOT be terminated. The AWS Replication Agent will
* receive a command to uninstall itself (within 10 minutes). The following
* properties of the SourceServer will be changed immediately:
* dataReplicationInfo.dataReplicationState will be changed to DISCONNECTED; The
* SourceServer.lifeCycle.state will be changed to CUTOVER; The totalStorageBytes
* property fo each of dataReplicationInfo.replicatedDisks will be set to zero;
* dataReplicationInfo.lagDuration and dataReplicationInfo.lagDuration will be
* nullified.
See Also:
AWS
* API Reference
*/
virtual Model::FinalizeCutoverOutcome FinalizeCutover(const Model::FinalizeCutoverRequest& request) const;
/**
* A Callable wrapper for FinalizeCutover that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::FinalizeCutoverOutcomeCallable FinalizeCutoverCallable(const FinalizeCutoverRequestT& request) const
{
return SubmitCallable(&MgnClient::FinalizeCutover, request);
}
/**
* An Async wrapper for FinalizeCutover that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void FinalizeCutoverAsync(const FinalizeCutoverRequestT& request, const FinalizeCutoverResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::FinalizeCutover, request, handler, context);
}
/**
* Lists all LaunchConfigurations available, filtered by Source Server
* IDs.
See Also:
AWS
* API Reference
*/
virtual Model::GetLaunchConfigurationOutcome GetLaunchConfiguration(const Model::GetLaunchConfigurationRequest& request) const;
/**
* A Callable wrapper for GetLaunchConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetLaunchConfigurationOutcomeCallable GetLaunchConfigurationCallable(const GetLaunchConfigurationRequestT& request) const
{
return SubmitCallable(&MgnClient::GetLaunchConfiguration, request);
}
/**
* An Async wrapper for GetLaunchConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetLaunchConfigurationAsync(const GetLaunchConfigurationRequestT& request, const GetLaunchConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::GetLaunchConfiguration, request, handler, context);
}
/**
* Lists all ReplicationConfigurations, filtered by Source Server
* ID.
See Also:
AWS
* API Reference
*/
virtual Model::GetReplicationConfigurationOutcome GetReplicationConfiguration(const Model::GetReplicationConfigurationRequest& request) const;
/**
* A Callable wrapper for GetReplicationConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetReplicationConfigurationOutcomeCallable GetReplicationConfigurationCallable(const GetReplicationConfigurationRequestT& request) const
{
return SubmitCallable(&MgnClient::GetReplicationConfiguration, request);
}
/**
* An Async wrapper for GetReplicationConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetReplicationConfigurationAsync(const GetReplicationConfigurationRequestT& request, const GetReplicationConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::GetReplicationConfiguration, request, handler, context);
}
/**
* Initialize Application Migration Service.
See Also:
AWS
* API Reference
*/
virtual Model::InitializeServiceOutcome InitializeService(const Model::InitializeServiceRequest& request) const;
/**
* A Callable wrapper for InitializeService that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::InitializeServiceOutcomeCallable InitializeServiceCallable(const InitializeServiceRequestT& request) const
{
return SubmitCallable(&MgnClient::InitializeService, request);
}
/**
* An Async wrapper for InitializeService that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void InitializeServiceAsync(const InitializeServiceRequestT& request, const InitializeServiceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::InitializeService, request, handler, context);
}
/**
* Retrieves all applications or multiple applications by ID.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListApplicationsOutcome ListApplications(const Model::ListApplicationsRequest& request) const;
/**
* A Callable wrapper for ListApplications that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListApplicationsOutcomeCallable ListApplicationsCallable(const ListApplicationsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListApplications, request);
}
/**
* An Async wrapper for ListApplications that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListApplicationsAsync(const ListApplicationsRequestT& request, const ListApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListApplications, request, handler, context);
}
/**
* List export errors.
See Also:
AWS
* API Reference
*/
virtual Model::ListExportErrorsOutcome ListExportErrors(const Model::ListExportErrorsRequest& request) const;
/**
* A Callable wrapper for ListExportErrors that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListExportErrorsOutcomeCallable ListExportErrorsCallable(const ListExportErrorsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListExportErrors, request);
}
/**
* An Async wrapper for ListExportErrors that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListExportErrorsAsync(const ListExportErrorsRequestT& request, const ListExportErrorsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListExportErrors, request, handler, context);
}
/**
* List exports.
See Also:
AWS API
* Reference
*/
virtual Model::ListExportsOutcome ListExports(const Model::ListExportsRequest& request) const;
/**
* A Callable wrapper for ListExports that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListExportsOutcomeCallable ListExportsCallable(const ListExportsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListExports, request);
}
/**
* An Async wrapper for ListExports that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListExportsAsync(const ListExportsRequestT& request, const ListExportsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListExports, request, handler, context);
}
/**
* List import errors.
See Also:
AWS
* API Reference
*/
virtual Model::ListImportErrorsOutcome ListImportErrors(const Model::ListImportErrorsRequest& request) const;
/**
* A Callable wrapper for ListImportErrors that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListImportErrorsOutcomeCallable ListImportErrorsCallable(const ListImportErrorsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListImportErrors, request);
}
/**
* An Async wrapper for ListImportErrors that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListImportErrorsAsync(const ListImportErrorsRequestT& request, const ListImportErrorsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListImportErrors, request, handler, context);
}
/**
* List imports.
See Also:
AWS API
* Reference
*/
virtual Model::ListImportsOutcome ListImports(const Model::ListImportsRequest& request) const;
/**
* A Callable wrapper for ListImports that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListImportsOutcomeCallable ListImportsCallable(const ListImportsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListImports, request);
}
/**
* An Async wrapper for ListImports that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListImportsAsync(const ListImportsRequestT& request, const ListImportsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListImports, request, handler, context);
}
/**
* List Managed Accounts.
See Also:
AWS
* API Reference
*/
virtual Model::ListManagedAccountsOutcome ListManagedAccounts(const Model::ListManagedAccountsRequest& request) const;
/**
* A Callable wrapper for ListManagedAccounts that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListManagedAccountsOutcomeCallable ListManagedAccountsCallable(const ListManagedAccountsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListManagedAccounts, request);
}
/**
* An Async wrapper for ListManagedAccounts that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListManagedAccountsAsync(const ListManagedAccountsRequestT& request, const ListManagedAccountsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListManagedAccounts, request, handler, context);
}
/**
* List source server post migration custom actions.
See Also:
* AWS
* API Reference
*/
virtual Model::ListSourceServerActionsOutcome ListSourceServerActions(const Model::ListSourceServerActionsRequest& request) const;
/**
* A Callable wrapper for ListSourceServerActions that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListSourceServerActionsOutcomeCallable ListSourceServerActionsCallable(const ListSourceServerActionsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListSourceServerActions, request);
}
/**
* An Async wrapper for ListSourceServerActions that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListSourceServerActionsAsync(const ListSourceServerActionsRequestT& request, const ListSourceServerActionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListSourceServerActions, request, handler, context);
}
/**
* List all tags for your Application Migration Service resources.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const;
/**
* A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const
{
return SubmitCallable(&MgnClient::ListTagsForResource, request);
}
/**
* An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListTagsForResource, request, handler, context);
}
/**
* List template post migration custom actions.
See Also:
AWS
* API Reference
*/
virtual Model::ListTemplateActionsOutcome ListTemplateActions(const Model::ListTemplateActionsRequest& request) const;
/**
* A Callable wrapper for ListTemplateActions that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListTemplateActionsOutcomeCallable ListTemplateActionsCallable(const ListTemplateActionsRequestT& request) const
{
return SubmitCallable(&MgnClient::ListTemplateActions, request);
}
/**
* An Async wrapper for ListTemplateActions that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListTemplateActionsAsync(const ListTemplateActionsRequestT& request, const ListTemplateActionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListTemplateActions, request, handler, context);
}
/**
* Retrieves all waves or multiple waves by ID.
See Also:
AWS API
* Reference
*/
virtual Model::ListWavesOutcome ListWaves(const Model::ListWavesRequest& request) const;
/**
* A Callable wrapper for ListWaves that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListWavesOutcomeCallable ListWavesCallable(const ListWavesRequestT& request) const
{
return SubmitCallable(&MgnClient::ListWaves, request);
}
/**
* An Async wrapper for ListWaves that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListWavesAsync(const ListWavesRequestT& request, const ListWavesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ListWaves, request, handler, context);
}
/**
* Archives specific Source Servers by setting the SourceServer.isArchived
* property to true for specified SourceServers by ID. This command only works for
* SourceServers with a lifecycle. state which equals DISCONNECTED or
* CUTOVER.
See Also:
AWS
* API Reference
*/
virtual Model::MarkAsArchivedOutcome MarkAsArchived(const Model::MarkAsArchivedRequest& request) const;
/**
* A Callable wrapper for MarkAsArchived that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::MarkAsArchivedOutcomeCallable MarkAsArchivedCallable(const MarkAsArchivedRequestT& request) const
{
return SubmitCallable(&MgnClient::MarkAsArchived, request);
}
/**
* An Async wrapper for MarkAsArchived that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void MarkAsArchivedAsync(const MarkAsArchivedRequestT& request, const MarkAsArchivedResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::MarkAsArchived, request, handler, context);
}
/**
* Pause Replication.
See Also:
AWS
* API Reference
*/
virtual Model::PauseReplicationOutcome PauseReplication(const Model::PauseReplicationRequest& request) const;
/**
* A Callable wrapper for PauseReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PauseReplicationOutcomeCallable PauseReplicationCallable(const PauseReplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::PauseReplication, request);
}
/**
* An Async wrapper for PauseReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PauseReplicationAsync(const PauseReplicationRequestT& request, const PauseReplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::PauseReplication, request, handler, context);
}
/**
* Put source server post migration custom action.
See Also:
AWS
* API Reference
*/
virtual Model::PutSourceServerActionOutcome PutSourceServerAction(const Model::PutSourceServerActionRequest& request) const;
/**
* A Callable wrapper for PutSourceServerAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PutSourceServerActionOutcomeCallable PutSourceServerActionCallable(const PutSourceServerActionRequestT& request) const
{
return SubmitCallable(&MgnClient::PutSourceServerAction, request);
}
/**
* An Async wrapper for PutSourceServerAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PutSourceServerActionAsync(const PutSourceServerActionRequestT& request, const PutSourceServerActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::PutSourceServerAction, request, handler, context);
}
/**
* Put template post migration custom action.
See Also:
AWS
* API Reference
*/
virtual Model::PutTemplateActionOutcome PutTemplateAction(const Model::PutTemplateActionRequest& request) const;
/**
* A Callable wrapper for PutTemplateAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::PutTemplateActionOutcomeCallable PutTemplateActionCallable(const PutTemplateActionRequestT& request) const
{
return SubmitCallable(&MgnClient::PutTemplateAction, request);
}
/**
* An Async wrapper for PutTemplateAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void PutTemplateActionAsync(const PutTemplateActionRequestT& request, const PutTemplateActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::PutTemplateAction, request, handler, context);
}
/**
* Remove source server post migration custom action.
See Also:
* AWS
* API Reference
*/
virtual Model::RemoveSourceServerActionOutcome RemoveSourceServerAction(const Model::RemoveSourceServerActionRequest& request) const;
/**
* A Callable wrapper for RemoveSourceServerAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RemoveSourceServerActionOutcomeCallable RemoveSourceServerActionCallable(const RemoveSourceServerActionRequestT& request) const
{
return SubmitCallable(&MgnClient::RemoveSourceServerAction, request);
}
/**
* An Async wrapper for RemoveSourceServerAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RemoveSourceServerActionAsync(const RemoveSourceServerActionRequestT& request, const RemoveSourceServerActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::RemoveSourceServerAction, request, handler, context);
}
/**
* Remove template post migration custom action.
See Also:
AWS
* API Reference
*/
virtual Model::RemoveTemplateActionOutcome RemoveTemplateAction(const Model::RemoveTemplateActionRequest& request) const;
/**
* A Callable wrapper for RemoveTemplateAction that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RemoveTemplateActionOutcomeCallable RemoveTemplateActionCallable(const RemoveTemplateActionRequestT& request) const
{
return SubmitCallable(&MgnClient::RemoveTemplateAction, request);
}
/**
* An Async wrapper for RemoveTemplateAction that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RemoveTemplateActionAsync(const RemoveTemplateActionRequestT& request, const RemoveTemplateActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::RemoveTemplateAction, request, handler, context);
}
/**
* Resume Replication.
See Also:
AWS
* API Reference
*/
virtual Model::ResumeReplicationOutcome ResumeReplication(const Model::ResumeReplicationRequest& request) const;
/**
* A Callable wrapper for ResumeReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ResumeReplicationOutcomeCallable ResumeReplicationCallable(const ResumeReplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::ResumeReplication, request);
}
/**
* An Async wrapper for ResumeReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ResumeReplicationAsync(const ResumeReplicationRequestT& request, const ResumeReplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::ResumeReplication, request, handler, context);
}
/**
* Causes the data replication initiation sequence to begin immediately upon
* next Handshake for specified SourceServer IDs, regardless of when the previous
* initiation started. This command will not work if the SourceServer is not
* stalled or is in a DISCONNECTED or STOPPED state.
See Also:
AWS
* API Reference
*/
virtual Model::RetryDataReplicationOutcome RetryDataReplication(const Model::RetryDataReplicationRequest& request) const;
/**
* A Callable wrapper for RetryDataReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::RetryDataReplicationOutcomeCallable RetryDataReplicationCallable(const RetryDataReplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::RetryDataReplication, request);
}
/**
* An Async wrapper for RetryDataReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void RetryDataReplicationAsync(const RetryDataReplicationRequestT& request, const RetryDataReplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::RetryDataReplication, request, handler, context);
}
/**
* Launches a Cutover Instance for specific Source Servers. This command starts
* a LAUNCH job whose initiatedBy property is StartCutover and changes the
* SourceServer.lifeCycle.state property to CUTTING_OVER.
See Also:
* AWS
* API Reference
*/
virtual Model::StartCutoverOutcome StartCutover(const Model::StartCutoverRequest& request) const;
/**
* A Callable wrapper for StartCutover that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartCutoverOutcomeCallable StartCutoverCallable(const StartCutoverRequestT& request) const
{
return SubmitCallable(&MgnClient::StartCutover, request);
}
/**
* An Async wrapper for StartCutover that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartCutoverAsync(const StartCutoverRequestT& request, const StartCutoverResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::StartCutover, request, handler, context);
}
/**
* Start export.
See Also:
AWS API
* Reference
*/
virtual Model::StartExportOutcome StartExport(const Model::StartExportRequest& request) const;
/**
* A Callable wrapper for StartExport that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartExportOutcomeCallable StartExportCallable(const StartExportRequestT& request) const
{
return SubmitCallable(&MgnClient::StartExport, request);
}
/**
* An Async wrapper for StartExport that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartExportAsync(const StartExportRequestT& request, const StartExportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::StartExport, request, handler, context);
}
/**
* Start import.
See Also:
AWS API
* Reference
*/
virtual Model::StartImportOutcome StartImport(const Model::StartImportRequest& request) const;
/**
* A Callable wrapper for StartImport that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartImportOutcomeCallable StartImportCallable(const StartImportRequestT& request) const
{
return SubmitCallable(&MgnClient::StartImport, request);
}
/**
* An Async wrapper for StartImport that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartImportAsync(const StartImportRequestT& request, const StartImportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::StartImport, request, handler, context);
}
/**
* Starts replication for SNAPSHOT_SHIPPING agents.
See Also:
* AWS
* API Reference
*/
virtual Model::StartReplicationOutcome StartReplication(const Model::StartReplicationRequest& request) const;
/**
* A Callable wrapper for StartReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartReplicationOutcomeCallable StartReplicationCallable(const StartReplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::StartReplication, request);
}
/**
* An Async wrapper for StartReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartReplicationAsync(const StartReplicationRequestT& request, const StartReplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::StartReplication, request, handler, context);
}
/**
* Launches a Test Instance for specific Source Servers. This command starts a
* LAUNCH job whose initiatedBy property is StartTest and changes the
* SourceServer.lifeCycle.state property to TESTING.
See Also:
AWS API
* Reference
*/
virtual Model::StartTestOutcome StartTest(const Model::StartTestRequest& request) const;
/**
* A Callable wrapper for StartTest that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartTestOutcomeCallable StartTestCallable(const StartTestRequestT& request) const
{
return SubmitCallable(&MgnClient::StartTest, request);
}
/**
* An Async wrapper for StartTest that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartTestAsync(const StartTestRequestT& request, const StartTestResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::StartTest, request, handler, context);
}
/**
* Stop Replication.
See Also:
AWS
* API Reference
*/
virtual Model::StopReplicationOutcome StopReplication(const Model::StopReplicationRequest& request) const;
/**
* A Callable wrapper for StopReplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StopReplicationOutcomeCallable StopReplicationCallable(const StopReplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::StopReplication, request);
}
/**
* An Async wrapper for StopReplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StopReplicationAsync(const StopReplicationRequestT& request, const StopReplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::StopReplication, request, handler, context);
}
/**
* Adds or overwrites only the specified tags for the specified Application
* Migration Service resource or resources. When you specify an existing tag key,
* the value is overwritten with the new value. Each resource can have a maximum of
* 50 tags. Each tag consists of a key and optional value.
See Also:
* AWS
* API Reference
*/
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const;
/**
* A Callable wrapper for TagResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const
{
return SubmitCallable(&MgnClient::TagResource, request);
}
/**
* An Async wrapper for TagResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::TagResource, request, handler, context);
}
/**
* Starts a job that terminates specific launched EC2 Test and Cutover
* instances. This command will not work for any Source Server with a
* lifecycle.state of TESTING, CUTTING_OVER, or CUTOVER.
See Also:
* AWS
* API Reference
*/
virtual Model::TerminateTargetInstancesOutcome TerminateTargetInstances(const Model::TerminateTargetInstancesRequest& request) const;
/**
* A Callable wrapper for TerminateTargetInstances that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::TerminateTargetInstancesOutcomeCallable TerminateTargetInstancesCallable(const TerminateTargetInstancesRequestT& request) const
{
return SubmitCallable(&MgnClient::TerminateTargetInstances, request);
}
/**
* An Async wrapper for TerminateTargetInstances that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void TerminateTargetInstancesAsync(const TerminateTargetInstancesRequestT& request, const TerminateTargetInstancesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::TerminateTargetInstances, request, handler, context);
}
/**
* Unarchive application.
See Also:
AWS
* API Reference
*/
virtual Model::UnarchiveApplicationOutcome UnarchiveApplication(const Model::UnarchiveApplicationRequest& request) const;
/**
* A Callable wrapper for UnarchiveApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UnarchiveApplicationOutcomeCallable UnarchiveApplicationCallable(const UnarchiveApplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::UnarchiveApplication, request);
}
/**
* An Async wrapper for UnarchiveApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UnarchiveApplicationAsync(const UnarchiveApplicationRequestT& request, const UnarchiveApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UnarchiveApplication, request, handler, context);
}
/**
* Unarchive wave.
See Also:
AWS
* API Reference
*/
virtual Model::UnarchiveWaveOutcome UnarchiveWave(const Model::UnarchiveWaveRequest& request) const;
/**
* A Callable wrapper for UnarchiveWave that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UnarchiveWaveOutcomeCallable UnarchiveWaveCallable(const UnarchiveWaveRequestT& request) const
{
return SubmitCallable(&MgnClient::UnarchiveWave, request);
}
/**
* An Async wrapper for UnarchiveWave that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UnarchiveWaveAsync(const UnarchiveWaveRequestT& request, const UnarchiveWaveResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UnarchiveWave, request, handler, context);
}
/**
* Deletes the specified set of tags from the specified set of Application
* Migration Service resources.
See Also:
AWS
* API Reference
*/
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const;
/**
* A Callable wrapper for UntagResource that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const
{
return SubmitCallable(&MgnClient::UntagResource, request);
}
/**
* An Async wrapper for UntagResource that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UntagResource, request, handler, context);
}
/**
* Update application.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateApplicationOutcome UpdateApplication(const Model::UpdateApplicationRequest& request) const;
/**
* A Callable wrapper for UpdateApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateApplicationOutcomeCallable UpdateApplicationCallable(const UpdateApplicationRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateApplication, request);
}
/**
* An Async wrapper for UpdateApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateApplicationAsync(const UpdateApplicationRequestT& request, const UpdateApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateApplication, request, handler, context);
}
/**
* Updates multiple LaunchConfigurations by Source Server ID.
See
* Also:
AWS
* API Reference
*/
virtual Model::UpdateLaunchConfigurationOutcome UpdateLaunchConfiguration(const Model::UpdateLaunchConfigurationRequest& request) const;
/**
* A Callable wrapper for UpdateLaunchConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateLaunchConfigurationOutcomeCallable UpdateLaunchConfigurationCallable(const UpdateLaunchConfigurationRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateLaunchConfiguration, request);
}
/**
* An Async wrapper for UpdateLaunchConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateLaunchConfigurationAsync(const UpdateLaunchConfigurationRequestT& request, const UpdateLaunchConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateLaunchConfiguration, request, handler, context);
}
/**
* Updates an existing Launch Configuration Template by ID.
See
* Also:
AWS
* API Reference
*/
virtual Model::UpdateLaunchConfigurationTemplateOutcome UpdateLaunchConfigurationTemplate(const Model::UpdateLaunchConfigurationTemplateRequest& request) const;
/**
* A Callable wrapper for UpdateLaunchConfigurationTemplate that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateLaunchConfigurationTemplateOutcomeCallable UpdateLaunchConfigurationTemplateCallable(const UpdateLaunchConfigurationTemplateRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateLaunchConfigurationTemplate, request);
}
/**
* An Async wrapper for UpdateLaunchConfigurationTemplate that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateLaunchConfigurationTemplateAsync(const UpdateLaunchConfigurationTemplateRequestT& request, const UpdateLaunchConfigurationTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateLaunchConfigurationTemplate, request, handler, context);
}
/**
* Allows you to update multiple ReplicationConfigurations by Source Server
* ID.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateReplicationConfigurationOutcome UpdateReplicationConfiguration(const Model::UpdateReplicationConfigurationRequest& request) const;
/**
* A Callable wrapper for UpdateReplicationConfiguration that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateReplicationConfigurationOutcomeCallable UpdateReplicationConfigurationCallable(const UpdateReplicationConfigurationRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateReplicationConfiguration, request);
}
/**
* An Async wrapper for UpdateReplicationConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateReplicationConfigurationAsync(const UpdateReplicationConfigurationRequestT& request, const UpdateReplicationConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateReplicationConfiguration, request, handler, context);
}
/**
* Updates multiple ReplicationConfigurationTemplates by ID.
See
* Also:
AWS
* API Reference
*/
virtual Model::UpdateReplicationConfigurationTemplateOutcome UpdateReplicationConfigurationTemplate(const Model::UpdateReplicationConfigurationTemplateRequest& request) const;
/**
* A Callable wrapper for UpdateReplicationConfigurationTemplate that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateReplicationConfigurationTemplateOutcomeCallable UpdateReplicationConfigurationTemplateCallable(const UpdateReplicationConfigurationTemplateRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateReplicationConfigurationTemplate, request);
}
/**
* An Async wrapper for UpdateReplicationConfigurationTemplate that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateReplicationConfigurationTemplateAsync(const UpdateReplicationConfigurationTemplateRequestT& request, const UpdateReplicationConfigurationTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateReplicationConfigurationTemplate, request, handler, context);
}
/**
* Allows you to change between the AGENT_BASED replication type and the
* SNAPSHOT_SHIPPING replication type.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateSourceServerReplicationTypeOutcome UpdateSourceServerReplicationType(const Model::UpdateSourceServerReplicationTypeRequest& request) const;
/**
* A Callable wrapper for UpdateSourceServerReplicationType that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateSourceServerReplicationTypeOutcomeCallable UpdateSourceServerReplicationTypeCallable(const UpdateSourceServerReplicationTypeRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateSourceServerReplicationType, request);
}
/**
* An Async wrapper for UpdateSourceServerReplicationType that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateSourceServerReplicationTypeAsync(const UpdateSourceServerReplicationTypeRequestT& request, const UpdateSourceServerReplicationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateSourceServerReplicationType, request, handler, context);
}
/**
* Update wave.
See Also:
AWS API
* Reference
*/
virtual Model::UpdateWaveOutcome UpdateWave(const Model::UpdateWaveRequest& request) const;
/**
* A Callable wrapper for UpdateWave that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::UpdateWaveOutcomeCallable UpdateWaveCallable(const UpdateWaveRequestT& request) const
{
return SubmitCallable(&MgnClient::UpdateWave, request);
}
/**
* An Async wrapper for UpdateWave that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void UpdateWaveAsync(const UpdateWaveRequestT& request, const UpdateWaveResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&MgnClient::UpdateWave, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const MgnClientConfiguration& clientConfiguration);
MgnClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace mgn
} // namespace Aws