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/workspaces-instances/WorkspacesInstancesPaginationBase.h>
12#include <aws/workspaces-instances/WorkspacesInstancesServiceClientModel.h>
13#include <aws/workspaces-instances/WorkspacesInstancesWaiter.h>
14#include <aws/workspaces-instances/WorkspacesInstances_EXPORTS.h>
17namespace WorkspacesInstances {
41 std::shared_ptr<WorkspacesInstancesEndpointProviderBase> endpointProvider =
nullptr);
48 std::shared_ptr<WorkspacesInstancesEndpointProviderBase> endpointProvider =
nullptr,
57 std::shared_ptr<WorkspacesInstancesEndpointProviderBase> endpointProvider =
nullptr,
94 template <
typename AssociateVolumeRequestT = Model::AssociateVolumeRequest>
96 return SubmitCallable(&WorkspacesInstancesClient::AssociateVolume, request);
103 template <
typename AssociateVolumeRequestT = Model::AssociateVolumeRequest>
105 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
106 return SubmitAsync(&WorkspacesInstancesClient::AssociateVolume, request, handler, context);
119 template <
typename CreateVolumeRequestT = Model::CreateVolumeRequest>
121 return SubmitCallable(&WorkspacesInstancesClient::CreateVolume, request);
128 template <
typename CreateVolumeRequestT = Model::CreateVolumeRequest>
130 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
131 return SubmitAsync(&WorkspacesInstancesClient::CreateVolume, request, handler, context);
146 template <
typename CreateWorkspaceInstanceRequestT = Model::CreateWorkspaceInstanceRequest>
148 return SubmitCallable(&WorkspacesInstancesClient::CreateWorkspaceInstance, request);
155 template <
typename CreateWorkspaceInstanceRequestT = Model::CreateWorkspaceInstanceRequest>
158 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
159 return SubmitAsync(&WorkspacesInstancesClient::CreateWorkspaceInstance, request, handler, context);
172 template <
typename DeleteVolumeRequestT = Model::DeleteVolumeRequest>
174 return SubmitCallable(&WorkspacesInstancesClient::DeleteVolume, request);
181 template <
typename DeleteVolumeRequestT = Model::DeleteVolumeRequest>
183 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
184 return SubmitAsync(&WorkspacesInstancesClient::DeleteVolume, request, handler, context);
200 template <
typename DeleteWorkspaceInstanceRequestT = Model::DeleteWorkspaceInstanceRequest>
202 return SubmitCallable(&WorkspacesInstancesClient::DeleteWorkspaceInstance, request);
209 template <
typename DeleteWorkspaceInstanceRequestT = Model::DeleteWorkspaceInstanceRequest>
212 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
213 return SubmitAsync(&WorkspacesInstancesClient::DeleteWorkspaceInstance, request, handler, context);
227 template <
typename DisassociateVolumeRequestT = Model::DisassociateVolumeRequest>
229 return SubmitCallable(&WorkspacesInstancesClient::DisassociateVolume, request);
236 template <
typename DisassociateVolumeRequestT = Model::DisassociateVolumeRequest>
238 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
239 return SubmitAsync(&WorkspacesInstancesClient::DisassociateVolume, request, handler, context);
254 template <
typename GetWorkspaceInstanceRequestT = Model::GetWorkspaceInstanceRequest>
256 return SubmitCallable(&WorkspacesInstancesClient::GetWorkspaceInstance, request);
263 template <
typename GetWorkspaceInstanceRequestT = Model::GetWorkspaceInstanceRequest>
265 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
266 return SubmitAsync(&WorkspacesInstancesClient::GetWorkspaceInstance, request, handler, context);
282 template <
typename ListInstanceTypesRequestT = Model::ListInstanceTypesRequest>
284 return SubmitCallable(&WorkspacesInstancesClient::ListInstanceTypes, request);
291 template <
typename ListInstanceTypesRequestT = Model::ListInstanceTypesRequest>
293 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
294 const ListInstanceTypesRequestT& request = {})
const {
295 return SubmitAsync(&WorkspacesInstancesClient::ListInstanceTypes, request, handler, context);
310 template <
typename ListRegionsRequestT = Model::ListRegionsRequest>
312 return SubmitCallable(&WorkspacesInstancesClient::ListRegions, request);
319 template <
typename ListRegionsRequestT = Model::ListRegionsRequest>
321 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
322 const ListRegionsRequestT& request = {})
const {
323 return SubmitAsync(&WorkspacesInstancesClient::ListRegions, request, handler, context);
337 template <
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
339 return SubmitCallable(&WorkspacesInstancesClient::ListTagsForResource, request);
346 template <
typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
348 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
349 return SubmitAsync(&WorkspacesInstancesClient::ListTagsForResource, request, handler, context);
364 template <
typename ListWorkspaceInstancesRequestT = Model::ListWorkspaceInstancesRequest>
366 return SubmitCallable(&WorkspacesInstancesClient::ListWorkspaceInstances, request);
373 template <
typename ListWorkspaceInstancesRequestT = Model::ListWorkspaceInstancesRequest>
375 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
376 const ListWorkspaceInstancesRequestT& request = {})
const {
377 return SubmitAsync(&WorkspacesInstancesClient::ListWorkspaceInstances, request, handler, context);
390 template <
typename TagResourceRequestT = Model::TagResourceRequest>
392 return SubmitCallable(&WorkspacesInstancesClient::TagResource, request);
399 template <
typename TagResourceRequestT = Model::TagResourceRequest>
401 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
402 return SubmitAsync(&WorkspacesInstancesClient::TagResource, request, handler, context);
415 template <
typename UntagResourceRequestT = Model::UntagResourceRequest>
417 return SubmitCallable(&WorkspacesInstancesClient::UntagResource, request);
424 template <
typename UntagResourceRequestT = Model::UntagResourceRequest>
426 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
427 return SubmitAsync(&WorkspacesInstancesClient::UntagResource, request, handler, context);
442 std::shared_ptr<WorkspacesInstancesEndpointProviderBase> m_endpointProvider;
void ListInstanceTypesAsync(const ListInstanceTypesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListInstanceTypesRequestT &request={}) const
Model::ListInstanceTypesOutcomeCallable ListInstanceTypesCallable(const ListInstanceTypesRequestT &request={}) const
WorkspacesInstancesClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest &request) const
WorkspacesInstancesClientConfiguration ClientConfigurationType
static const char * GetServiceName()
void DisassociateVolumeAsync(const DisassociateVolumeRequestT &request, const DisassociateVolumeResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::CreateVolumeOutcomeCallable CreateVolumeCallable(const CreateVolumeRequestT &request) const
void ListRegionsAsync(const ListRegionsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListRegionsRequestT &request={}) const
void DeleteWorkspaceInstanceAsync(const DeleteWorkspaceInstanceRequestT &request, const DeleteWorkspaceInstanceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest &request) const
Aws::Client::AWSJsonClient BASECLASS
virtual ~WorkspacesInstancesClient()
void TagResourceAsync(const TagResourceRequestT &request, const TagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::ListWorkspaceInstancesOutcome ListWorkspaceInstances(const Model::ListWorkspaceInstancesRequest &request={}) const
WorkspacesInstancesClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
static const char * GetAllocationTag()
Model::DeleteWorkspaceInstanceOutcomeCallable DeleteWorkspaceInstanceCallable(const DeleteWorkspaceInstanceRequestT &request) const
virtual Model::AssociateVolumeOutcome AssociateVolume(const Model::AssociateVolumeRequest &request) const
virtual Model::ListRegionsOutcome ListRegions(const Model::ListRegionsRequest &request={}) const
WorkspacesInstancesClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< WorkspacesInstancesEndpointProviderBase > endpointProvider=nullptr, const Aws::WorkspacesInstances::WorkspacesInstancesClientConfiguration &clientConfiguration=Aws::WorkspacesInstances::WorkspacesInstancesClientConfiguration())
WorkspacesInstancesClient(const Aws::WorkspacesInstances::WorkspacesInstancesClientConfiguration &clientConfiguration=Aws::WorkspacesInstances::WorkspacesInstancesClientConfiguration(), std::shared_ptr< WorkspacesInstancesEndpointProviderBase > endpointProvider=nullptr)
void CreateWorkspaceInstanceAsync(const CreateWorkspaceInstanceRequestT &request, const CreateWorkspaceInstanceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void ListTagsForResourceAsync(const ListTagsForResourceRequestT &request, const ListTagsForResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void CreateVolumeAsync(const CreateVolumeRequestT &request, const CreateVolumeResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DeleteVolumeAsync(const DeleteVolumeRequestT &request, const DeleteVolumeResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListRegionsOutcomeCallable ListRegionsCallable(const ListRegionsRequestT &request={}) const
virtual Model::DeleteVolumeOutcome DeleteVolume(const Model::DeleteVolumeRequest &request) const
virtual Model::DisassociateVolumeOutcome DisassociateVolume(const Model::DisassociateVolumeRequest &request) const
Model::ListWorkspaceInstancesOutcomeCallable ListWorkspaceInstancesCallable(const ListWorkspaceInstancesRequestT &request={}) const
virtual Model::GetWorkspaceInstanceOutcome GetWorkspaceInstance(const Model::GetWorkspaceInstanceRequest &request) const
virtual Model::DeleteWorkspaceInstanceOutcome DeleteWorkspaceInstance(const Model::DeleteWorkspaceInstanceRequest &request) const
virtual Model::ListInstanceTypesOutcome ListInstanceTypes(const Model::ListInstanceTypesRequest &request={}) const
void UntagResourceAsync(const UntagResourceRequestT &request, const UntagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT &request) const
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT &request) const
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest &request) const
Model::CreateWorkspaceInstanceOutcomeCallable CreateWorkspaceInstanceCallable(const CreateWorkspaceInstanceRequestT &request) const
Model::DisassociateVolumeOutcomeCallable DisassociateVolumeCallable(const DisassociateVolumeRequestT &request) const
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT &request) const
virtual void OverrideEndpoint(const Aws::String &endpoint)
virtual Model::CreateVolumeOutcome CreateVolume(const Model::CreateVolumeRequest &request) const
void GetWorkspaceInstanceAsync(const GetWorkspaceInstanceRequestT &request, const GetWorkspaceInstanceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
WorkspacesInstancesClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< WorkspacesInstancesEndpointProviderBase > endpointProvider=nullptr, const Aws::WorkspacesInstances::WorkspacesInstancesClientConfiguration &clientConfiguration=Aws::WorkspacesInstances::WorkspacesInstancesClientConfiguration())
WorkspacesInstancesEndpointProvider EndpointProviderType
void ListWorkspaceInstancesAsync(const ListWorkspaceInstancesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListWorkspaceInstancesRequestT &request={}) const
virtual std::shared_ptr< WorkspacesInstancesEndpointProviderBase > & accessEndpointProvider()
Model::AssociateVolumeOutcomeCallable AssociateVolumeCallable(const AssociateVolumeRequestT &request) const
Model::GetWorkspaceInstanceOutcomeCallable GetWorkspaceInstanceCallable(const GetWorkspaceInstanceRequestT &request) const
void AssociateVolumeAsync(const AssociateVolumeRequestT &request, const AssociateVolumeResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::CreateWorkspaceInstanceOutcome CreateWorkspaceInstance(const Model::CreateWorkspaceInstanceRequest &request) const
Model::DeleteVolumeOutcomeCallable DeleteVolumeCallable(const DeleteVolumeRequestT &request) const
WorkspacesInstancesClient(const Aws::Client::ClientConfiguration &clientConfiguration)
std::future< ListWorkspaceInstancesOutcome > ListWorkspaceInstancesOutcomeCallable
std::future< CreateVolumeOutcome > CreateVolumeOutcomeCallable
std::future< DisassociateVolumeOutcome > DisassociateVolumeOutcomeCallable
std::future< ListInstanceTypesOutcome > ListInstanceTypesOutcomeCallable
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< ListRegionsOutcome > ListRegionsOutcomeCallable
std::future< AssociateVolumeOutcome > AssociateVolumeOutcomeCallable
std::future< GetWorkspaceInstanceOutcome > GetWorkspaceInstanceOutcomeCallable
std::future< DeleteWorkspaceInstanceOutcome > DeleteWorkspaceInstanceOutcomeCallable
std::future< DeleteVolumeOutcome > DeleteVolumeOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< CreateWorkspaceInstanceOutcome > CreateWorkspaceInstanceOutcomeCallable
std::function< void(const WorkspacesInstancesClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> TagResourceResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::ListRegionsRequest &, const Model::ListRegionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListRegionsResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::CreateWorkspaceInstanceRequest &, const Model::CreateWorkspaceInstanceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateWorkspaceInstanceResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UntagResourceResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::AssociateVolumeRequest &, const Model::AssociateVolumeOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssociateVolumeResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::DisassociateVolumeRequest &, const Model::DisassociateVolumeOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DisassociateVolumeResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::DeleteWorkspaceInstanceRequest &, const Model::DeleteWorkspaceInstanceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteWorkspaceInstanceResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::ListInstanceTypesRequest &, const Model::ListInstanceTypesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListInstanceTypesResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::GetWorkspaceInstanceRequest &, const Model::GetWorkspaceInstanceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetWorkspaceInstanceResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::DeleteVolumeRequest &, const Model::DeleteVolumeOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteVolumeResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListTagsForResourceResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::CreateVolumeRequest &, const Model::CreateVolumeOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateVolumeResponseReceivedHandler
std::function< void(const WorkspacesInstancesClient *, const Model::ListWorkspaceInstancesRequest &, const Model::ListWorkspaceInstancesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListWorkspaceInstancesResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String