7#include <aws/core/client/AWSClient.h>
8#include <aws/core/client/AWSClientAsyncCRTP.h>
9#include <aws/core/client/ClientConfiguration.h>
10#include <aws/core/utils/json/JsonSerializer.h>
11#include <aws/route53profiles/Route53ProfilesServiceClientModel.h>
12#include <aws/route53profiles/Route53Profiles_EXPORTS.h>
15namespace Route53Profiles {
36 std::shared_ptr<Route53ProfilesEndpointProviderBase> endpointProvider =
nullptr);
43 std::shared_ptr<Route53ProfilesEndpointProviderBase> endpointProvider =
nullptr,
52 std::shared_ptr<Route53ProfilesEndpointProviderBase> endpointProvider =
nullptr,
94 template <
typename AssociateProfileRequestT = Model::AssociateProfileRequest>
96 return SubmitCallable(&Route53ProfilesClient::AssociateProfile, request);
103 template <
typename AssociateProfileRequestT = Model::AssociateProfileRequest>
105 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
106 return SubmitAsync(&Route53ProfilesClient::AssociateProfile, request, handler, context);
122 template <
typename AssociateResourceToProfileRequestT = Model::AssociateResourceToProfileRequest>
124 const AssociateResourceToProfileRequestT& request)
const {
125 return SubmitCallable(&Route53ProfilesClient::AssociateResourceToProfile, request);
132 template <
typename AssociateResourceToProfileRequestT = Model::AssociateResourceToProfileRequest>
135 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
136 return SubmitAsync(&Route53ProfilesClient::AssociateResourceToProfile, request, handler, context);
149 template <
typename CreateProfileRequestT = Model::CreateProfileRequest>
151 return SubmitCallable(&Route53ProfilesClient::CreateProfile, request);
158 template <
typename CreateProfileRequestT = Model::CreateProfileRequest>
160 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
161 return SubmitAsync(&Route53ProfilesClient::CreateProfile, request, handler, context);
175 template <
typename DeleteProfileRequestT = Model::DeleteProfileRequest>
177 return SubmitCallable(&Route53ProfilesClient::DeleteProfile, request);
184 template <
typename DeleteProfileRequestT = Model::DeleteProfileRequest>
186 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
187 return SubmitAsync(&Route53ProfilesClient::DeleteProfile, request, handler, context);
202 template <
typename DisassociateProfileRequestT = Model::DisassociateProfileRequest>
204 return SubmitCallable(&Route53ProfilesClient::DisassociateProfile, request);
211 template <
typename DisassociateProfileRequestT = Model::DisassociateProfileRequest>
213 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
214 return SubmitAsync(&Route53ProfilesClient::DisassociateProfile, request, handler, context);
230 template <
typename DisassociateResourceFromProfileRequestT = Model::DisassociateResourceFromProfileRequest>
232 const DisassociateResourceFromProfileRequestT& request)
const {
233 return SubmitCallable(&Route53ProfilesClient::DisassociateResourceFromProfile, request);
240 template <
typename DisassociateResourceFromProfileRequestT = Model::DisassociateResourceFromProfileRequest>
243 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
244 return SubmitAsync(&Route53ProfilesClient::DisassociateResourceFromProfile, request, handler, context);
259 template <
typename GetProfileRequestT = Model::GetProfileRequest>
261 return SubmitCallable(&Route53ProfilesClient::GetProfile, request);
268 template <
typename GetProfileRequestT = Model::GetProfileRequest>
270 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
271 return SubmitAsync(&Route53ProfilesClient::GetProfile, request, handler, context);
287 template <
typename GetProfileAssociationRequestT = Model::GetProfileAssociationRequest>
289 return SubmitCallable(&Route53ProfilesClient::GetProfileAssociation, request);
296 template <
typename GetProfileAssociationRequestT = Model::GetProfileAssociationRequest>
298 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
299 return SubmitAsync(&Route53ProfilesClient::GetProfileAssociation, request, handler, context);
315 template <
typename GetProfileResourceAssociationRequestT = Model::GetProfileResourceAssociationRequest>
317 const GetProfileResourceAssociationRequestT& request)
const {
318 return SubmitCallable(&Route53ProfilesClient::GetProfileResourceAssociation, request);
325 template <
typename GetProfileResourceAssociationRequestT = Model::GetProfileResourceAssociationRequest>
328 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
329 return SubmitAsync(&Route53ProfilesClient::GetProfileResourceAssociation, request, handler, context);
344 template <
typename ListProfileAssociationsRequestT = Model::ListProfileAssociationsRequest>
346 return SubmitCallable(&Route53ProfilesClient::ListProfileAssociations, request);
353 template <
typename ListProfileAssociationsRequestT = Model::ListProfileAssociationsRequest>
355 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
356 const ListProfileAssociationsRequestT& request = {})
const {
357 return SubmitAsync(&Route53ProfilesClient::ListProfileAssociations, request, handler, context);
373 template <
typename ListProfileResourceAssociationsRequestT = Model::ListProfileResourceAssociationsRequest>
375 const ListProfileResourceAssociationsRequestT& request)
const {
376 return SubmitCallable(&Route53ProfilesClient::ListProfileResourceAssociations, request);
383 template <
typename ListProfileResourceAssociationsRequestT = Model::ListProfileResourceAssociationsRequest>
386 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
387 return SubmitAsync(&Route53ProfilesClient::ListProfileResourceAssociations, request, handler, context);
401 template <
typename ListProfilesRequestT = Model::ListProfilesRequest>
403 return SubmitCallable(&Route53ProfilesClient::ListProfiles, request);
410 template <
typename ListProfilesRequestT = Model::ListProfilesRequest>
412 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
413 const ListProfilesRequestT& request = {})
const {
414 return SubmitAsync(&Route53ProfilesClient::ListProfiles, request, handler, context);
429 template <
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
431 return SubmitCallable(&Route53ProfilesClient::ListTagsForResource, request);
438 template <
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
440 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
441 return SubmitAsync(&Route53ProfilesClient::ListTagsForResource, request, handler, context);
455 template <
typename TagResourceRequestT = Model::TagResourceRequest>
457 return SubmitCallable(&Route53ProfilesClient::TagResource, request);
464 template <
typename TagResourceRequestT = Model::TagResourceRequest>
466 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
467 return SubmitAsync(&Route53ProfilesClient::TagResource, request, handler, context);
481 template <
typename UntagResourceRequestT = Model::UntagResourceRequest>
483 return SubmitCallable(&Route53ProfilesClient::UntagResource, request);
490 template <
typename UntagResourceRequestT = Model::UntagResourceRequest>
492 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
493 return SubmitAsync(&Route53ProfilesClient::UntagResource, request, handler, context);
509 template <
typename UpdateProfileResourceAssociationRequestT = Model::UpdateProfileResourceAssociationRequest>
511 const UpdateProfileResourceAssociationRequestT& request)
const {
512 return SubmitCallable(&Route53ProfilesClient::UpdateProfileResourceAssociation, request);
519 template <
typename UpdateProfileResourceAssociationRequestT = Model::UpdateProfileResourceAssociationRequest>
522 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
523 return SubmitAsync(&Route53ProfilesClient::UpdateProfileResourceAssociation, request, handler, context);
534 std::shared_ptr<Route53ProfilesEndpointProviderBase> m_endpointProvider;
Model::DeleteProfileOutcomeCallable DeleteProfileCallable(const DeleteProfileRequestT &request) const
Route53ProfilesClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< Route53ProfilesEndpointProviderBase > endpointProvider=nullptr, const Aws::Route53Profiles::Route53ProfilesClientConfiguration &clientConfiguration=Aws::Route53Profiles::Route53ProfilesClientConfiguration())
Model::AssociateResourceToProfileOutcomeCallable AssociateResourceToProfileCallable(const AssociateResourceToProfileRequestT &request) const
virtual Model::ListProfileResourceAssociationsOutcome ListProfileResourceAssociations(const Model::ListProfileResourceAssociationsRequest &request) const
void ListProfileResourceAssociationsAsync(const ListProfileResourceAssociationsRequestT &request, const ListProfileResourceAssociationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest &request) const
void GetProfileAsync(const GetProfileRequestT &request, const GetProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Route53ProfilesEndpointProvider EndpointProviderType
void AssociateProfileAsync(const AssociateProfileRequestT &request, const AssociateProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::UpdateProfileResourceAssociationOutcome UpdateProfileResourceAssociation(const Model::UpdateProfileResourceAssociationRequest &request) const
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT &request) const
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT &request) const
virtual Model::ListProfileAssociationsOutcome ListProfileAssociations(const Model::ListProfileAssociationsRequest &request={}) const
virtual Model::DeleteProfileOutcome DeleteProfile(const Model::DeleteProfileRequest &request) const
virtual Model::GetProfileOutcome GetProfile(const Model::GetProfileRequest &request) const
Route53ProfilesClientConfiguration ClientConfigurationType
static const char * GetAllocationTag()
void DeleteProfileAsync(const DeleteProfileRequestT &request, const DeleteProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::CreateProfileOutcome CreateProfile(const Model::CreateProfileRequest &request) const
virtual Model::DisassociateResourceFromProfileOutcome DisassociateResourceFromProfile(const Model::DisassociateResourceFromProfileRequest &request) const
Model::AssociateProfileOutcomeCallable AssociateProfileCallable(const AssociateProfileRequestT &request) const
void TagResourceAsync(const TagResourceRequestT &request, const TagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void CreateProfileAsync(const CreateProfileRequestT &request, const CreateProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Route53ProfilesClient(const Aws::Route53Profiles::Route53ProfilesClientConfiguration &clientConfiguration=Aws::Route53Profiles::Route53ProfilesClientConfiguration(), std::shared_ptr< Route53ProfilesEndpointProviderBase > endpointProvider=nullptr)
Model::UpdateProfileResourceAssociationOutcomeCallable UpdateProfileResourceAssociationCallable(const UpdateProfileResourceAssociationRequestT &request) const
virtual Model::GetProfileResourceAssociationOutcome GetProfileResourceAssociation(const Model::GetProfileResourceAssociationRequest &request) const
void UntagResourceAsync(const UntagResourceRequestT &request, const UntagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetProfileAssociationAsync(const GetProfileAssociationRequestT &request, const GetProfileAssociationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListProfilesOutcome ListProfiles(const Model::ListProfilesRequest &request={}) const
void ListTagsForResourceAsync(const ListTagsForResourceRequestT &request, const ListTagsForResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListProfileAssociationsAsync(const ListProfileAssociationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListProfileAssociationsRequestT &request={}) const
Model::ListProfileResourceAssociationsOutcomeCallable ListProfileResourceAssociationsCallable(const ListProfileResourceAssociationsRequestT &request) const
Model::GetProfileAssociationOutcomeCallable GetProfileAssociationCallable(const GetProfileAssociationRequestT &request) const
Model::GetProfileResourceAssociationOutcomeCallable GetProfileResourceAssociationCallable(const GetProfileResourceAssociationRequestT &request) const
std::shared_ptr< Route53ProfilesEndpointProviderBase > & accessEndpointProvider()
void ListProfilesAsync(const ListProfilesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListProfilesRequestT &request={}) const
Route53ProfilesClient(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest &request) const
Model::GetProfileOutcomeCallable GetProfileCallable(const GetProfileRequestT &request) const
static const char * GetServiceName()
Route53ProfilesClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< Route53ProfilesEndpointProviderBase > endpointProvider=nullptr, const Aws::Route53Profiles::Route53ProfilesClientConfiguration &clientConfiguration=Aws::Route53Profiles::Route53ProfilesClientConfiguration())
virtual Model::AssociateProfileOutcome AssociateProfile(const Model::AssociateProfileRequest &request) const
Model::ListProfileAssociationsOutcomeCallable ListProfileAssociationsCallable(const ListProfileAssociationsRequestT &request={}) const
Model::DisassociateProfileOutcomeCallable DisassociateProfileCallable(const DisassociateProfileRequestT &request) const
Model::DisassociateResourceFromProfileOutcomeCallable DisassociateResourceFromProfileCallable(const DisassociateResourceFromProfileRequestT &request) const
Route53ProfilesClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
void UpdateProfileResourceAssociationAsync(const UpdateProfileResourceAssociationRequestT &request, const UpdateProfileResourceAssociationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetProfileAssociationOutcome GetProfileAssociation(const Model::GetProfileAssociationRequest &request) const
Model::CreateProfileOutcomeCallable CreateProfileCallable(const CreateProfileRequestT &request) const
void OverrideEndpoint(const Aws::String &endpoint)
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest &request) const
Model::ListProfilesOutcomeCallable ListProfilesCallable(const ListProfilesRequestT &request={}) const
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT &request) const
void GetProfileResourceAssociationAsync(const GetProfileResourceAssociationRequestT &request, const GetProfileResourceAssociationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::AssociateResourceToProfileOutcome AssociateResourceToProfile(const Model::AssociateResourceToProfileRequest &request) const
void DisassociateResourceFromProfileAsync(const DisassociateResourceFromProfileRequestT &request, const DisassociateResourceFromProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Client::AWSJsonClient BASECLASS
virtual ~Route53ProfilesClient()
virtual Model::DisassociateProfileOutcome DisassociateProfile(const Model::DisassociateProfileRequest &request) const
Route53ProfilesClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void AssociateResourceToProfileAsync(const AssociateResourceToProfileRequestT &request, const AssociateResourceToProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DisassociateProfileAsync(const DisassociateProfileRequestT &request, const DisassociateProfileResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::future< DisassociateResourceFromProfileOutcome > DisassociateResourceFromProfileOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< AssociateProfileOutcome > AssociateProfileOutcomeCallable
std::future< AssociateResourceToProfileOutcome > AssociateResourceToProfileOutcomeCallable
std::future< GetProfileResourceAssociationOutcome > GetProfileResourceAssociationOutcomeCallable
std::future< DisassociateProfileOutcome > DisassociateProfileOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< DeleteProfileOutcome > DeleteProfileOutcomeCallable
std::future< CreateProfileOutcome > CreateProfileOutcomeCallable
std::future< ListProfileAssociationsOutcome > ListProfileAssociationsOutcomeCallable
std::future< UpdateProfileResourceAssociationOutcome > UpdateProfileResourceAssociationOutcomeCallable
std::future< ListProfilesOutcome > ListProfilesOutcomeCallable
std::future< GetProfileAssociationOutcome > GetProfileAssociationOutcomeCallable
std::future< GetProfileOutcome > GetProfileOutcomeCallable
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< ListProfileResourceAssociationsOutcome > ListProfileResourceAssociationsOutcomeCallable
std::function< void(const Route53ProfilesClient *, const Model::ListProfileResourceAssociationsRequest &, const Model::ListProfileResourceAssociationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListProfileResourceAssociationsResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::UpdateProfileResourceAssociationRequest &, const Model::UpdateProfileResourceAssociationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateProfileResourceAssociationResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::CreateProfileRequest &, const Model::CreateProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateProfileResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::DisassociateResourceFromProfileRequest &, const Model::DisassociateResourceFromProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DisassociateResourceFromProfileResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::GetProfileRequest &, const Model::GetProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetProfileResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::AssociateResourceToProfileRequest &, const Model::AssociateResourceToProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssociateResourceToProfileResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::ListProfileAssociationsRequest &, const Model::ListProfileAssociationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListProfileAssociationsResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::ListProfilesRequest &, const Model::ListProfilesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListProfilesResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UntagResourceResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> TagResourceResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::GetProfileResourceAssociationRequest &, const Model::GetProfileResourceAssociationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetProfileResourceAssociationResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::DisassociateProfileRequest &, const Model::DisassociateProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DisassociateProfileResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListTagsForResourceResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::GetProfileAssociationRequest &, const Model::GetProfileAssociationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetProfileAssociationResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::AssociateProfileRequest &, const Model::AssociateProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssociateProfileResponseReceivedHandler
std::function< void(const Route53ProfilesClient *, const Model::DeleteProfileRequest &, const Model::DeleteProfileOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteProfileResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String