7#include <aws/support-app/SupportApp_EXPORTS.h>
8#include <aws/core/client/ClientConfiguration.h>
9#include <aws/core/client/AWSClientAsyncCRTP.h>
10#include <aws/support-app/SupportAppServiceClientModel.h>
11#include <smithy/client/AwsSmithyClient.h>
12#include <smithy/identity/auth/built-in/SigV4AuthSchemeResolver.h>
13#include <smithy/identity/auth/built-in/SigV4AuthScheme.h>
14#include <smithy/client/serializer/JsonOutcomeSerializer.h>
15#include <aws/support-app/SupportAppErrorMarshaller.h>
55 Aws::SupportApp::SupportAppClientConfiguration,
56 smithy::SigV4AuthSchemeResolver<>,
57 Aws::Crt::Variant<smithy::SigV4AuthScheme>,
58 SupportAppEndpointProviderBase,
59 smithy::client::JsonOutcomeSerializer,
60 smithy::client::JsonOutcome,
61 Aws::Client::SupportAppErrorMarshaller>,
77 std::shared_ptr<SupportAppEndpointProviderBase> endpointProvider =
nullptr);
84 std::shared_ptr<SupportAppEndpointProviderBase> endpointProvider =
nullptr,
91 SupportAppClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
92 std::shared_ptr<SupportAppEndpointProviderBase> endpointProvider =
nullptr,
114 SupportAppClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
142 template<
typename CreateSlackChannelConfigurationRequestT = Model::CreateSlackChannelConfigurationRequest>
145 return SubmitCallable(&SupportAppClient::CreateSlackChannelConfiguration, request);
151 template<
typename CreateSlackChannelConfigurationRequestT = Model::CreateSlackChannelConfigurationRequest>
154 return SubmitAsync(&SupportAppClient::CreateSlackChannelConfiguration, request, handler, context);
170 template<
typename DeleteAccountAliasRequestT = Model::DeleteAccountAliasRequest>
173 return SubmitCallable(&SupportAppClient::DeleteAccountAlias, request);
179 template<
typename DeleteAccountAliasRequestT = Model::DeleteAccountAliasRequest>
182 return SubmitAsync(&SupportAppClient::DeleteAccountAlias, request, handler, context);
196 template<
typename DeleteSlackChannelConfigurationRequestT = Model::DeleteSlackChannelConfigurationRequest>
199 return SubmitCallable(&SupportAppClient::DeleteSlackChannelConfiguration, request);
205 template<
typename DeleteSlackChannelConfigurationRequestT = Model::DeleteSlackChannelConfigurationRequest>
208 return SubmitAsync(&SupportAppClient::DeleteSlackChannelConfiguration, request, handler, context);
223 template<
typename DeleteSlackWorkspaceConfigurationRequestT = Model::DeleteSlackWorkspaceConfigurationRequest>
226 return SubmitCallable(&SupportAppClient::DeleteSlackWorkspaceConfiguration, request);
232 template<
typename DeleteSlackWorkspaceConfigurationRequestT = Model::DeleteSlackWorkspaceConfigurationRequest>
235 return SubmitAsync(&SupportAppClient::DeleteSlackWorkspaceConfiguration, request, handler, context);
251 template<
typename GetAccountAliasRequestT = Model::GetAccountAliasRequest>
254 return SubmitCallable(&SupportAppClient::GetAccountAlias, request);
260 template<
typename GetAccountAliasRequestT = Model::GetAccountAliasRequest>
263 return SubmitAsync(&SupportAppClient::GetAccountAlias, request, handler, context);
277 template<
typename ListSlackChannelConfigurationsRequestT = Model::ListSlackChannelConfigurationsRequest>
280 return SubmitCallable(&SupportAppClient::ListSlackChannelConfigurations, request);
286 template<
typename ListSlackChannelConfigurationsRequestT = Model::ListSlackChannelConfigurationsRequest>
289 return SubmitAsync(&SupportAppClient::ListSlackChannelConfigurations, request, handler, context);
303 template<
typename ListSlackWorkspaceConfigurationsRequestT = Model::ListSlackWorkspaceConfigurationsRequest>
306 return SubmitCallable(&SupportAppClient::ListSlackWorkspaceConfigurations, request);
312 template<
typename ListSlackWorkspaceConfigurationsRequestT = Model::ListSlackWorkspaceConfigurationsRequest>
315 return SubmitAsync(&SupportAppClient::ListSlackWorkspaceConfigurations, request, handler, context);
331 template<
typename PutAccountAliasRequestT = Model::PutAccountAliasRequest>
334 return SubmitCallable(&SupportAppClient::PutAccountAlias, request);
340 template<
typename PutAccountAliasRequestT = Model::PutAccountAliasRequest>
343 return SubmitAsync(&SupportAppClient::PutAccountAlias, request, handler, context);
381 template<
typename RegisterSlackWorkspaceForOrganizationRequestT = Model::RegisterSlackWorkspaceForOrganizationRequest>
384 return SubmitCallable(&SupportAppClient::RegisterSlackWorkspaceForOrganization, request);
390 template<
typename RegisterSlackWorkspaceForOrganizationRequestT = Model::RegisterSlackWorkspaceForOrganizationRequest>
393 return SubmitAsync(&SupportAppClient::RegisterSlackWorkspaceForOrganization, request, handler, context);
407 template<
typename UpdateSlackChannelConfigurationRequestT = Model::UpdateSlackChannelConfigurationRequest>
410 return SubmitCallable(&SupportAppClient::UpdateSlackChannelConfiguration, request);
416 template<
typename UpdateSlackChannelConfigurationRequestT = Model::UpdateSlackChannelConfigurationRequest>
419 return SubmitAsync(&SupportAppClient::UpdateSlackChannelConfiguration, request, handler, context);
SupportAppClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::DeleteSlackWorkspaceConfigurationOutcomeCallable DeleteSlackWorkspaceConfigurationCallable(const DeleteSlackWorkspaceConfigurationRequestT &request) const
void DeleteAccountAliasAsync(const DeleteAccountAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const DeleteAccountAliasRequestT &request={}) const
virtual ~SupportAppClient()
void DeleteSlackWorkspaceConfigurationAsync(const DeleteSlackWorkspaceConfigurationRequestT &request, const DeleteSlackWorkspaceConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::DeleteAccountAliasOutcome DeleteAccountAlias(const Model::DeleteAccountAliasRequest &request={}) const
void RegisterSlackWorkspaceForOrganizationAsync(const RegisterSlackWorkspaceForOrganizationRequestT &request, const RegisterSlackWorkspaceForOrganizationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListSlackWorkspaceConfigurationsOutcomeCallable ListSlackWorkspaceConfigurationsCallable(const ListSlackWorkspaceConfigurationsRequestT &request={}) const
SupportAppClientConfiguration ClientConfigurationType
virtual Model::ListSlackWorkspaceConfigurationsOutcome ListSlackWorkspaceConfigurations(const Model::ListSlackWorkspaceConfigurationsRequest &request={}) const
static const char * GetServiceName()
SupportAppClient(const Aws::Client::ClientConfiguration &clientConfiguration)
SupportAppClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< SupportAppEndpointProviderBase > endpointProvider=nullptr, const Aws::SupportApp::SupportAppClientConfiguration &clientConfiguration=Aws::SupportApp::SupportAppClientConfiguration())
Model::RegisterSlackWorkspaceForOrganizationOutcomeCallable RegisterSlackWorkspaceForOrganizationCallable(const RegisterSlackWorkspaceForOrganizationRequestT &request) const
virtual Model::UpdateSlackChannelConfigurationOutcome UpdateSlackChannelConfiguration(const Model::UpdateSlackChannelConfigurationRequest &request) const
SupportAppClient(const Aws::SupportApp::SupportAppClientConfiguration &clientConfiguration=Aws::SupportApp::SupportAppClientConfiguration(), std::shared_ptr< SupportAppEndpointProviderBase > endpointProvider=nullptr)
void ListSlackWorkspaceConfigurationsAsync(const ListSlackWorkspaceConfigurationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListSlackWorkspaceConfigurationsRequestT &request={}) const
Model::ListSlackChannelConfigurationsOutcomeCallable ListSlackChannelConfigurationsCallable(const ListSlackChannelConfigurationsRequestT &request={}) const
SupportAppClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< SupportAppEndpointProviderBase > endpointProvider=nullptr, const Aws::SupportApp::SupportAppClientConfiguration &clientConfiguration=Aws::SupportApp::SupportAppClientConfiguration())
void DeleteSlackChannelConfigurationAsync(const DeleteSlackChannelConfigurationRequestT &request, const DeleteSlackChannelConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void CreateSlackChannelConfigurationAsync(const CreateSlackChannelConfigurationRequestT &request, const CreateSlackChannelConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::UpdateSlackChannelConfigurationOutcomeCallable UpdateSlackChannelConfigurationCallable(const UpdateSlackChannelConfigurationRequestT &request) const
virtual Model::RegisterSlackWorkspaceForOrganizationOutcome RegisterSlackWorkspaceForOrganization(const Model::RegisterSlackWorkspaceForOrganizationRequest &request) const
virtual Model::GetAccountAliasOutcome GetAccountAlias(const Model::GetAccountAliasRequest &request={}) const
virtual Model::CreateSlackChannelConfigurationOutcome CreateSlackChannelConfiguration(const Model::CreateSlackChannelConfigurationRequest &request) const
Model::PutAccountAliasOutcomeCallable PutAccountAliasCallable(const PutAccountAliasRequestT &request) const
SupportAppEndpointProvider EndpointProviderType
virtual Model::DeleteSlackWorkspaceConfigurationOutcome DeleteSlackWorkspaceConfiguration(const Model::DeleteSlackWorkspaceConfigurationRequest &request) const
static const char * GetAllocationTag()
virtual Model::PutAccountAliasOutcome PutAccountAlias(const Model::PutAccountAliasRequest &request) const
void GetAccountAliasAsync(const GetAccountAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const GetAccountAliasRequestT &request={}) const
virtual Model::DeleteSlackChannelConfigurationOutcome DeleteSlackChannelConfiguration(const Model::DeleteSlackChannelConfigurationRequest &request) const
Model::CreateSlackChannelConfigurationOutcomeCallable CreateSlackChannelConfigurationCallable(const CreateSlackChannelConfigurationRequestT &request) const
SupportAppClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void ListSlackChannelConfigurationsAsync(const ListSlackChannelConfigurationsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const ListSlackChannelConfigurationsRequestT &request={}) const
virtual Model::ListSlackChannelConfigurationsOutcome ListSlackChannelConfigurations(const Model::ListSlackChannelConfigurationsRequest &request={}) const
const char * GetServiceClientName() const override
void OverrideEndpoint(const Aws::String &endpoint)
Model::DeleteAccountAliasOutcomeCallable DeleteAccountAliasCallable(const DeleteAccountAliasRequestT &request={}) const
void UpdateSlackChannelConfigurationAsync(const UpdateSlackChannelConfigurationRequestT &request, const UpdateSlackChannelConfigurationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::shared_ptr< SupportAppEndpointProviderBase > & accessEndpointProvider()
Model::DeleteSlackChannelConfigurationOutcomeCallable DeleteSlackChannelConfigurationCallable(const DeleteSlackChannelConfigurationRequestT &request) const
void PutAccountAliasAsync(const PutAccountAliasRequestT &request, const PutAccountAliasResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetAccountAliasOutcomeCallable GetAccountAliasCallable(const GetAccountAliasRequestT &request={}) const
std::future< CreateSlackChannelConfigurationOutcome > CreateSlackChannelConfigurationOutcomeCallable
std::future< ListSlackChannelConfigurationsOutcome > ListSlackChannelConfigurationsOutcomeCallable
std::future< ListSlackWorkspaceConfigurationsOutcome > ListSlackWorkspaceConfigurationsOutcomeCallable
std::future< UpdateSlackChannelConfigurationOutcome > UpdateSlackChannelConfigurationOutcomeCallable
std::future< RegisterSlackWorkspaceForOrganizationOutcome > RegisterSlackWorkspaceForOrganizationOutcomeCallable
std::future< DeleteAccountAliasOutcome > DeleteAccountAliasOutcomeCallable
std::future< DeleteSlackWorkspaceConfigurationOutcome > DeleteSlackWorkspaceConfigurationOutcomeCallable
std::future< DeleteSlackChannelConfigurationOutcome > DeleteSlackChannelConfigurationOutcomeCallable
std::future< GetAccountAliasOutcome > GetAccountAliasOutcomeCallable
std::future< PutAccountAliasOutcome > PutAccountAliasOutcomeCallable
AWS_SUPPORTAPP_API const char SERVICE_NAME[]
std::function< void(const SupportAppClient *, const Model::DeleteSlackChannelConfigurationRequest &, const Model::DeleteSlackChannelConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteSlackChannelConfigurationResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::UpdateSlackChannelConfigurationRequest &, const Model::UpdateSlackChannelConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateSlackChannelConfigurationResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::DeleteAccountAliasRequest &, const Model::DeleteAccountAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteAccountAliasResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::ListSlackChannelConfigurationsRequest &, const Model::ListSlackChannelConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListSlackChannelConfigurationsResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::RegisterSlackWorkspaceForOrganizationRequest &, const Model::RegisterSlackWorkspaceForOrganizationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RegisterSlackWorkspaceForOrganizationResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::GetAccountAliasRequest &, const Model::GetAccountAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetAccountAliasResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::ListSlackWorkspaceConfigurationsRequest &, const Model::ListSlackWorkspaceConfigurationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListSlackWorkspaceConfigurationsResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::CreateSlackChannelConfigurationRequest &, const Model::CreateSlackChannelConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateSlackChannelConfigurationResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::DeleteSlackWorkspaceConfigurationRequest &, const Model::DeleteSlackWorkspaceConfigurationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteSlackWorkspaceConfigurationResponseReceivedHandler
std::function< void(const SupportAppClient *, const Model::PutAccountAliasRequest &, const Model::PutAccountAliasOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutAccountAliasResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String