/**
* 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 ApplicationDiscoveryService
{
/**
* Amazon Web Services Application Discovery Service Amazon
* Web Services Application Discovery Service (Application Discovery Service) helps
* you plan application migration projects. It automatically identifies servers,
* virtual machines (VMs), and network dependencies in your on-premises data
* centers. For more information, see the Amazon Web Services
* Application Discovery Service FAQ.
Application Discovery Service
* offers three ways of performing discovery and collecting data about your
* on-premises servers:
Working With This Guide
This API reference
* provides descriptions, syntax, and usage examples for each of the actions and
* data types for Application Discovery Service. The topic for each action shows
* the API request parameters and the response. Alternatively, you can use one of
* the Amazon Web Services SDKs to access an API that is tailored to the
* programming language or platform that you're using. For more information, see Amazon Web Services SDKs.
* -
Remember that you must set your Migration Hub home Region
* before you call any of these APIs.
-
You must make API calls for
* write actions (create, notify, associate, disassociate, import, or put) while in
* your home Region, or a HomeRegionNotSetException
error is
* returned.
-
API calls for read actions (list, describe, stop,
* and delete) are permitted outside of your home Region.
-
*
Although it is unlikely, the Migration Hub home Region could change. If you
* call APIs outside the home Region, an InvalidInputException
is
* returned.
-
You must call GetHomeRegion
to obtain
* the latest Migration Hub home Region.
This guide is
* intended for use with the Amazon
* Web Services Application Discovery Service User Guide.
* All data is handled according to the Amazon Web Services Privacy Policy.
* You can operate Application Discovery Service offline to inspect collected data
* before it is shared with the service.
*/
class AWS_APPLICATIONDISCOVERYSERVICE_API ApplicationDiscoveryServiceClient : 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 ApplicationDiscoveryServiceClientConfiguration ClientConfigurationType;
typedef ApplicationDiscoveryServiceEndpointProvider 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.
*/
ApplicationDiscoveryServiceClient(const Aws::ApplicationDiscoveryService::ApplicationDiscoveryServiceClientConfiguration& clientConfiguration = Aws::ApplicationDiscoveryService::ApplicationDiscoveryServiceClientConfiguration(),
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.
*/
ApplicationDiscoveryServiceClient(const Aws::Auth::AWSCredentials& credentials,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::ApplicationDiscoveryService::ApplicationDiscoveryServiceClientConfiguration& clientConfiguration = Aws::ApplicationDiscoveryService::ApplicationDiscoveryServiceClientConfiguration());
/**
* 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
*/
ApplicationDiscoveryServiceClient(const std::shared_ptr& credentialsProvider,
std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG),
const Aws::ApplicationDiscoveryService::ApplicationDiscoveryServiceClientConfiguration& clientConfiguration = Aws::ApplicationDiscoveryService::ApplicationDiscoveryServiceClientConfiguration());
/* 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.
*/
ApplicationDiscoveryServiceClient(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.
*/
ApplicationDiscoveryServiceClient(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
*/
ApplicationDiscoveryServiceClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration);
/* End of legacy constructors due deprecation */
virtual ~ApplicationDiscoveryServiceClient();
/**
* Associates one or more configuration items with an application.
See
* Also:
AWS
* API Reference
*/
virtual Model::AssociateConfigurationItemsToApplicationOutcome AssociateConfigurationItemsToApplication(const Model::AssociateConfigurationItemsToApplicationRequest& request) const;
/**
* A Callable wrapper for AssociateConfigurationItemsToApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::AssociateConfigurationItemsToApplicationOutcomeCallable AssociateConfigurationItemsToApplicationCallable(const AssociateConfigurationItemsToApplicationRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::AssociateConfigurationItemsToApplication, request);
}
/**
* An Async wrapper for AssociateConfigurationItemsToApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void AssociateConfigurationItemsToApplicationAsync(const AssociateConfigurationItemsToApplicationRequestT& request, const AssociateConfigurationItemsToApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::AssociateConfigurationItemsToApplication, request, handler, context);
}
/**
* Deletes one or more import tasks, each identified by their import ID. Each
* import task has a number of records that can identify servers or applications.
*
Amazon Web Services Application Discovery Service has built-in matching
* logic that will identify when discovered servers match existing entries that
* you've previously discovered, the information for the already-existing
* discovered server is updated. When you delete an import task that contains
* records that were used to match, the information in those matched records that
* comes from the deleted records will also be deleted.
See Also:
* AWS
* API Reference
*/
virtual Model::BatchDeleteImportDataOutcome BatchDeleteImportData(const Model::BatchDeleteImportDataRequest& request) const;
/**
* A Callable wrapper for BatchDeleteImportData that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::BatchDeleteImportDataOutcomeCallable BatchDeleteImportDataCallable(const BatchDeleteImportDataRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::BatchDeleteImportData, request);
}
/**
* An Async wrapper for BatchDeleteImportData that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void BatchDeleteImportDataAsync(const BatchDeleteImportDataRequestT& request, const BatchDeleteImportDataResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::BatchDeleteImportData, request, handler, context);
}
/**
* Creates an application with the given name and description.
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(&ApplicationDiscoveryServiceClient::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(&ApplicationDiscoveryServiceClient::CreateApplication, request, handler, context);
}
/**
* Creates one or more tags for configuration items. Tags are metadata that help
* you categorize IT assets. This API accepts a list of multiple configuration
* items.
Do not store sensitive information (like personal
* data) in tags.
See Also:
AWS
* API Reference
*/
virtual Model::CreateTagsOutcome CreateTags(const Model::CreateTagsRequest& request) const;
/**
* A Callable wrapper for CreateTags that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::CreateTagsOutcomeCallable CreateTagsCallable(const CreateTagsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::CreateTags, request);
}
/**
* An Async wrapper for CreateTags that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void CreateTagsAsync(const CreateTagsRequestT& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::CreateTags, request, handler, context);
}
/**
* Deletes a list of applications and their associations with configuration
* items.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteApplicationsOutcome DeleteApplications(const Model::DeleteApplicationsRequest& request) const;
/**
* A Callable wrapper for DeleteApplications that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteApplicationsOutcomeCallable DeleteApplicationsCallable(const DeleteApplicationsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DeleteApplications, request);
}
/**
* An Async wrapper for DeleteApplications that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteApplicationsAsync(const DeleteApplicationsRequestT& request, const DeleteApplicationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DeleteApplications, request, handler, context);
}
/**
* Deletes the association between configuration items and one or more tags.
* This API accepts a list of multiple configuration items.
See
* Also:
AWS
* API Reference
*/
virtual Model::DeleteTagsOutcome DeleteTags(const Model::DeleteTagsRequest& request) const;
/**
* A Callable wrapper for DeleteTags that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DeleteTagsOutcomeCallable DeleteTagsCallable(const DeleteTagsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DeleteTags, request);
}
/**
* An Async wrapper for DeleteTags that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DeleteTagsAsync(const DeleteTagsRequestT& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DeleteTags, request, handler, context);
}
/**
* Lists agents or collectors as specified by ID or other filters. All
* agents/collectors associated with your user can be listed if you call
* DescribeAgents
as is without passing any parameters.
See
* Also:
AWS
* API Reference
*/
virtual Model::DescribeAgentsOutcome DescribeAgents(const Model::DescribeAgentsRequest& request) const;
/**
* A Callable wrapper for DescribeAgents that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeAgentsOutcomeCallable DescribeAgentsCallable(const DescribeAgentsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DescribeAgents, request);
}
/**
* An Async wrapper for DescribeAgents that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeAgentsAsync(const DescribeAgentsRequestT& request, const DescribeAgentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DescribeAgents, request, handler, context);
}
/**
* Retrieves attributes for a list of configuration item IDs.
All
* of the supplied IDs must be for the same asset type from one of the
* following:
-
server
-
application
-
*
process
-
connection
Output fields are
* specific to the asset type specified. For example, the output for a
* server configuration item includes a list of attributes about the server,
* such as host name, operating system, number of network cards, etc.
For a
* complete list of outputs for each asset type, see Using
* the DescribeConfigurations Action in the Amazon Web Services Application
* Discovery Service User Guide.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeConfigurationsOutcome DescribeConfigurations(const Model::DescribeConfigurationsRequest& request) const;
/**
* A Callable wrapper for DescribeConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeConfigurationsOutcomeCallable DescribeConfigurationsCallable(const DescribeConfigurationsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DescribeConfigurations, request);
}
/**
* An Async wrapper for DescribeConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeConfigurationsAsync(const DescribeConfigurationsRequestT& request, const DescribeConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DescribeConfigurations, request, handler, context);
}
/**
* Lists exports as specified by ID. All continuous exports associated with your
* user can be listed if you call DescribeContinuousExports
as is
* without passing any parameters.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeContinuousExportsOutcome DescribeContinuousExports(const Model::DescribeContinuousExportsRequest& request) const;
/**
* A Callable wrapper for DescribeContinuousExports that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeContinuousExportsOutcomeCallable DescribeContinuousExportsCallable(const DescribeContinuousExportsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DescribeContinuousExports, request);
}
/**
* An Async wrapper for DescribeContinuousExports that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeContinuousExportsAsync(const DescribeContinuousExportsRequestT& request, const DescribeContinuousExportsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DescribeContinuousExports, request, handler, context);
}
/**
* Retrieve status of one or more export tasks. You can retrieve the status of
* up to 100 export tasks.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeExportTasksOutcome DescribeExportTasks(const Model::DescribeExportTasksRequest& request) const;
/**
* A Callable wrapper for DescribeExportTasks that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeExportTasksOutcomeCallable DescribeExportTasksCallable(const DescribeExportTasksRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DescribeExportTasks, request);
}
/**
* An Async wrapper for DescribeExportTasks that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeExportTasksAsync(const DescribeExportTasksRequestT& request, const DescribeExportTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DescribeExportTasks, request, handler, context);
}
/**
* Returns an array of import tasks for your account, including status
* information, times, IDs, the Amazon S3 Object URL for the import file, and
* more.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeImportTasksOutcome DescribeImportTasks(const Model::DescribeImportTasksRequest& request) const;
/**
* A Callable wrapper for DescribeImportTasks that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeImportTasksOutcomeCallable DescribeImportTasksCallable(const DescribeImportTasksRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DescribeImportTasks, request);
}
/**
* An Async wrapper for DescribeImportTasks that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeImportTasksAsync(const DescribeImportTasksRequestT& request, const DescribeImportTasksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DescribeImportTasks, request, handler, context);
}
/**
* Retrieves a list of configuration items that have tags as specified by the
* key-value pairs, name and value, passed to the optional parameter
* filters
.
There are three valid tag filter names:
* -
tagKey
-
tagValue
-
configurationId
*
Also, all configuration items associated with your user that have
* tags can be listed if you call DescribeTags
as is without passing
* any parameters.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeTagsOutcome DescribeTags(const Model::DescribeTagsRequest& request) const;
/**
* A Callable wrapper for DescribeTags that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DescribeTagsOutcomeCallable DescribeTagsCallable(const DescribeTagsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DescribeTags, request);
}
/**
* An Async wrapper for DescribeTags that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DescribeTagsAsync(const DescribeTagsRequestT& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DescribeTags, request, handler, context);
}
/**
* Disassociates one or more configuration items from an
* application.
See Also:
AWS
* API Reference
*/
virtual Model::DisassociateConfigurationItemsFromApplicationOutcome DisassociateConfigurationItemsFromApplication(const Model::DisassociateConfigurationItemsFromApplicationRequest& request) const;
/**
* A Callable wrapper for DisassociateConfigurationItemsFromApplication that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::DisassociateConfigurationItemsFromApplicationOutcomeCallable DisassociateConfigurationItemsFromApplicationCallable(const DisassociateConfigurationItemsFromApplicationRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::DisassociateConfigurationItemsFromApplication, request);
}
/**
* An Async wrapper for DisassociateConfigurationItemsFromApplication that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void DisassociateConfigurationItemsFromApplicationAsync(const DisassociateConfigurationItemsFromApplicationRequestT& request, const DisassociateConfigurationItemsFromApplicationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::DisassociateConfigurationItemsFromApplication, request, handler, context);
}
/**
* Retrieves a short summary of discovered assets.
This API operation
* takes no request parameters and is called as is at the command prompt as shown
* in the example.
See Also:
AWS
* API Reference
*/
virtual Model::GetDiscoverySummaryOutcome GetDiscoverySummary(const Model::GetDiscoverySummaryRequest& request) const;
/**
* A Callable wrapper for GetDiscoverySummary that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::GetDiscoverySummaryOutcomeCallable GetDiscoverySummaryCallable(const GetDiscoverySummaryRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::GetDiscoverySummary, request);
}
/**
* An Async wrapper for GetDiscoverySummary that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void GetDiscoverySummaryAsync(const GetDiscoverySummaryRequestT& request, const GetDiscoverySummaryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::GetDiscoverySummary, request, handler, context);
}
/**
* Retrieves a list of configuration items as specified by the value passed to
* the required parameter configurationType
. Optional filtering may be
* applied to refine search results.
See Also:
AWS
* API Reference
*/
virtual Model::ListConfigurationsOutcome ListConfigurations(const Model::ListConfigurationsRequest& request) const;
/**
* A Callable wrapper for ListConfigurations that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListConfigurationsOutcomeCallable ListConfigurationsCallable(const ListConfigurationsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::ListConfigurations, request);
}
/**
* An Async wrapper for ListConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListConfigurationsAsync(const ListConfigurationsRequestT& request, const ListConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::ListConfigurations, request, handler, context);
}
/**
* Retrieves a list of servers that are one network hop away from a specified
* server.
See Also:
AWS
* API Reference
*/
virtual Model::ListServerNeighborsOutcome ListServerNeighbors(const Model::ListServerNeighborsRequest& request) const;
/**
* A Callable wrapper for ListServerNeighbors that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::ListServerNeighborsOutcomeCallable ListServerNeighborsCallable(const ListServerNeighborsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::ListServerNeighbors, request);
}
/**
* An Async wrapper for ListServerNeighbors that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void ListServerNeighborsAsync(const ListServerNeighborsRequestT& request, const ListServerNeighborsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::ListServerNeighbors, request, handler, context);
}
/**
* Start the continuous flow of agent's discovered data into Amazon
* Athena.
See Also:
AWS
* API Reference
*/
virtual Model::StartContinuousExportOutcome StartContinuousExport(const Model::StartContinuousExportRequest& request) const;
/**
* A Callable wrapper for StartContinuousExport that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartContinuousExportOutcomeCallable StartContinuousExportCallable(const StartContinuousExportRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::StartContinuousExport, request);
}
/**
* An Async wrapper for StartContinuousExport that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartContinuousExportAsync(const StartContinuousExportRequestT& request, const StartContinuousExportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::StartContinuousExport, request, handler, context);
}
/**
* Instructs the specified agents to start collecting data.
See
* Also:
AWS
* API Reference
*/
virtual Model::StartDataCollectionByAgentIdsOutcome StartDataCollectionByAgentIds(const Model::StartDataCollectionByAgentIdsRequest& request) const;
/**
* A Callable wrapper for StartDataCollectionByAgentIds that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartDataCollectionByAgentIdsOutcomeCallable StartDataCollectionByAgentIdsCallable(const StartDataCollectionByAgentIdsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::StartDataCollectionByAgentIds, request);
}
/**
* An Async wrapper for StartDataCollectionByAgentIds that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartDataCollectionByAgentIdsAsync(const StartDataCollectionByAgentIdsRequestT& request, const StartDataCollectionByAgentIdsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::StartDataCollectionByAgentIds, request, handler, context);
}
/**
* Begins the export of a discovered data report to an Amazon S3 bucket managed
* by Amazon Web Services.
Exports might provide an estimate of fees
* and savings based on certain information that you provide. Fee estimates do not
* include any taxes that might apply. Your actual fees and savings depend on a
* variety of factors, including your actual usage of Amazon Web Services services,
* which might vary from the estimates provided in this report.
If
* you do not specify preferences
or agentIds
in the
* filter, a summary of all servers, applications, tags, and performance is
* generated. This data is an aggregation of all server data collected through
* on-premises tooling, file import, application grouping and applying tags.
* If you specify agentIds
in a filter, the task exports up to 72
* hours of detailed data collected by the identified Application Discovery Agent,
* including network, process, and performance details. A time range for exported
* agent data may be set by using startTime
and endTime
.
* Export of detailed agent data is limited to five concurrently running exports.
* Export of detailed agent data is limited to two exports per day.
If you
* enable ec2RecommendationsPreferences
in preferences
,
* an Amazon EC2 instance matching the characteristics of each server in
* Application Discovery Service is generated. Changing the attributes of the
* ec2RecommendationsPreferences
changes the criteria of the
* recommendation.
See Also:
AWS
* API Reference
*/
virtual Model::StartExportTaskOutcome StartExportTask(const Model::StartExportTaskRequest& request) const;
/**
* A Callable wrapper for StartExportTask that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartExportTaskOutcomeCallable StartExportTaskCallable(const StartExportTaskRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::StartExportTask, request);
}
/**
* An Async wrapper for StartExportTask that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartExportTaskAsync(const StartExportTaskRequestT& request, const StartExportTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::StartExportTask, request, handler, context);
}
/**
* Starts an import task, which allows you to import details of your on-premises
* environment directly into Amazon Web Services Migration Hub without having to
* use the Amazon Web Services Application Discovery Service (Application Discovery
* Service) tools such as the Amazon Web Services Application Discovery Service
* Agentless Collector or Application Discovery Agent. This gives you the option to
* perform migration assessment and planning directly from your imported data,
* including the ability to group your devices as applications and track their
* migration status.
To start an import request, do this:
-
*
Download the specially formatted comma separated value (CSV) import template,
* which you can find here: https://s3.us-west-2.amazonaws.com/templates-7cffcf56-bd96-4b1c-b45b-a5b42f282e46/import_template.csv.
* -
Fill out the template with your server and application data.
* -
Upload your import file to an Amazon S3 bucket, and make a note of
* it's Object URL. Your import file must be in the CSV format.
-
*
Use the console or the StartImportTask
command with the Amazon
* Web Services CLI or one of the Amazon Web Services SDKs to import the records
* from your file.
For more information, including step-by-step
* procedures, see Migration
* Hub Import in the Amazon Web Services Application Discovery Service User
* Guide.
There are limits to the number of import tasks you can
* create (and delete) in an Amazon Web Services account. For more information, see
* Amazon
* Web Services Application Discovery Service Limits in the Amazon Web
* Services Application Discovery Service User Guide.
See
* Also:
AWS
* API Reference
*/
virtual Model::StartImportTaskOutcome StartImportTask(const Model::StartImportTaskRequest& request) const;
/**
* A Callable wrapper for StartImportTask that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StartImportTaskOutcomeCallable StartImportTaskCallable(const StartImportTaskRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::StartImportTask, request);
}
/**
* An Async wrapper for StartImportTask that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StartImportTaskAsync(const StartImportTaskRequestT& request, const StartImportTaskResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::StartImportTask, request, handler, context);
}
/**
* Stop the continuous flow of agent's discovered data into Amazon
* Athena.
See Also:
AWS
* API Reference
*/
virtual Model::StopContinuousExportOutcome StopContinuousExport(const Model::StopContinuousExportRequest& request) const;
/**
* A Callable wrapper for StopContinuousExport that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StopContinuousExportOutcomeCallable StopContinuousExportCallable(const StopContinuousExportRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::StopContinuousExport, request);
}
/**
* An Async wrapper for StopContinuousExport that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StopContinuousExportAsync(const StopContinuousExportRequestT& request, const StopContinuousExportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::StopContinuousExport, request, handler, context);
}
/**
* Instructs the specified agents to stop collecting data.
See
* Also:
AWS
* API Reference
*/
virtual Model::StopDataCollectionByAgentIdsOutcome StopDataCollectionByAgentIds(const Model::StopDataCollectionByAgentIdsRequest& request) const;
/**
* A Callable wrapper for StopDataCollectionByAgentIds that returns a future to the operation so that it can be executed in parallel to other requests.
*/
template
Model::StopDataCollectionByAgentIdsOutcomeCallable StopDataCollectionByAgentIdsCallable(const StopDataCollectionByAgentIdsRequestT& request) const
{
return SubmitCallable(&ApplicationDiscoveryServiceClient::StopDataCollectionByAgentIds, request);
}
/**
* An Async wrapper for StopDataCollectionByAgentIds that queues the request into a thread executor and triggers associated callback when operation has finished.
*/
template
void StopDataCollectionByAgentIdsAsync(const StopDataCollectionByAgentIdsRequestT& request, const StopDataCollectionByAgentIdsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const
{
return SubmitAsync(&ApplicationDiscoveryServiceClient::StopDataCollectionByAgentIds, request, handler, context);
}
/**
* Updates metadata about an 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(&ApplicationDiscoveryServiceClient::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(&ApplicationDiscoveryServiceClient::UpdateApplication, request, handler, context);
}
void OverrideEndpoint(const Aws::String& endpoint);
std::shared_ptr& accessEndpointProvider();
private:
friend class Aws::Client::ClientWithAsyncTemplateMethods;
void init(const ApplicationDiscoveryServiceClientConfiguration& clientConfiguration);
ApplicationDiscoveryServiceClientConfiguration m_clientConfiguration;
std::shared_ptr m_executor;
std::shared_ptr m_endpointProvider;
};
} // namespace ApplicationDiscoveryService
} // namespace Aws