AWS SDK for C++

AWS SDK for C++ Version 1.11.752

Loading...
Searching...
No Matches
SSOClient.h
1
6#pragma once
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/sso/SSOPaginationBase.h>
12#include <aws/sso/SSOServiceClientModel.h>
13#include <aws/sso/SSO_EXPORTS.h>
14
15namespace Aws {
16namespace SSO {
36class AWS_SSO_API SSOClient : public Aws::Client::AWSJsonClient,
38 public SSOPaginationBase<SSOClient> {
39 public:
41 static const char* GetServiceName();
42 static const char* GetAllocationTag();
43
46
52 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr);
53
58 SSOClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr,
60
65 SSOClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
66 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr,
68
69 /* Legacy constructors due deprecation */
74 SSOClient(const Aws::Client::ClientConfiguration& clientConfiguration);
75
80 SSOClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
81
86 SSOClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
87 const Aws::Client::ClientConfiguration& clientConfiguration);
88
89 /* End of legacy constructors due deprecation */
90 virtual ~SSOClient();
91
99
104 template <typename GetRoleCredentialsRequestT = Model::GetRoleCredentialsRequest>
105 Model::GetRoleCredentialsOutcomeCallable GetRoleCredentialsCallable(const GetRoleCredentialsRequestT& request) const {
106 return SubmitCallable(&SSOClient::GetRoleCredentials, request);
107 }
108
113 template <typename GetRoleCredentialsRequestT = Model::GetRoleCredentialsRequest>
114 void GetRoleCredentialsAsync(const GetRoleCredentialsRequestT& request, const GetRoleCredentialsResponseReceivedHandler& handler,
115 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
116 return SubmitAsync(&SSOClient::GetRoleCredentials, request, handler, context);
117 }
118
126
131 template <typename ListAccountRolesRequestT = Model::ListAccountRolesRequest>
132 Model::ListAccountRolesOutcomeCallable ListAccountRolesCallable(const ListAccountRolesRequestT& request) const {
133 return SubmitCallable(&SSOClient::ListAccountRoles, request);
134 }
135
140 template <typename ListAccountRolesRequestT = Model::ListAccountRolesRequest>
141 void ListAccountRolesAsync(const ListAccountRolesRequestT& request, const ListAccountRolesResponseReceivedHandler& handler,
142 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
143 return SubmitAsync(&SSOClient::ListAccountRoles, request, handler, context);
144 }
145
156
160 template <typename ListAccountsRequestT = Model::ListAccountsRequest>
161 Model::ListAccountsOutcomeCallable ListAccountsCallable(const ListAccountsRequestT& request) const {
162 return SubmitCallable(&SSOClient::ListAccounts, request);
163 }
164
169 template <typename ListAccountsRequestT = Model::ListAccountsRequest>
170 void ListAccountsAsync(const ListAccountsRequestT& request, const ListAccountsResponseReceivedHandler& handler,
171 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
172 return SubmitAsync(&SSOClient::ListAccounts, request, handler, context);
173 }
174
193 virtual Model::LogoutOutcome Logout(const Model::LogoutRequest& request) const;
194
198 template <typename LogoutRequestT = Model::LogoutRequest>
199 Model::LogoutOutcomeCallable LogoutCallable(const LogoutRequestT& request) const {
200 return SubmitCallable(&SSOClient::Logout, request);
201 }
202
207 template <typename LogoutRequestT = Model::LogoutRequest>
208 void LogoutAsync(const LogoutRequestT& request, const LogoutResponseReceivedHandler& handler,
209 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
210 return SubmitAsync(&SSOClient::Logout, request, handler, context);
211 }
212
213 virtual void OverrideEndpoint(const Aws::String& endpoint);
214 virtual std::shared_ptr<SSOEndpointProviderBase>& accessEndpointProvider();
215
216 private:
218 void init(const SSOClientConfiguration& clientConfiguration);
219
220 SSOClientConfiguration m_clientConfiguration;
221 std::shared_ptr<SSOEndpointProviderBase> m_endpointProvider;
222};
223
224} // namespace SSO
225} // namespace Aws
virtual Model::ListAccountRolesOutcome ListAccountRoles(const Model::ListAccountRolesRequest &request) const
SSOClientConfiguration ClientConfigurationType
Definition SSOClient.h:44
void LogoutAsync(const LogoutRequestT &request, const LogoutResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition SSOClient.h:208
virtual Model::ListAccountsOutcome ListAccounts(const Model::ListAccountsRequest &request) const
void ListAccountsAsync(const ListAccountsRequestT &request, const ListAccountsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition SSOClient.h:170
virtual std::shared_ptr< SSOEndpointProviderBase > & accessEndpointProvider()
SSOClient(const Aws::Client::ClientConfiguration &clientConfiguration)
SSOClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< SSOEndpointProviderBase > endpointProvider=nullptr, const Aws::SSO::SSOClientConfiguration &clientConfiguration=Aws::SSO::SSOClientConfiguration())
Model::ListAccountRolesOutcomeCallable ListAccountRolesCallable(const ListAccountRolesRequestT &request) const
Definition SSOClient.h:132
virtual Model::GetRoleCredentialsOutcome GetRoleCredentials(const Model::GetRoleCredentialsRequest &request) const
static const char * GetServiceName()
SSOClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< SSOEndpointProviderBase > endpointProvider=nullptr, const Aws::SSO::SSOClientConfiguration &clientConfiguration=Aws::SSO::SSOClientConfiguration())
Model::LogoutOutcomeCallable LogoutCallable(const LogoutRequestT &request) const
Definition SSOClient.h:199
SSOClient(const Aws::SSO::SSOClientConfiguration &clientConfiguration=Aws::SSO::SSOClientConfiguration(), std::shared_ptr< SSOEndpointProviderBase > endpointProvider=nullptr)
void GetRoleCredentialsAsync(const GetRoleCredentialsRequestT &request, const GetRoleCredentialsResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition SSOClient.h:114
SSOEndpointProvider EndpointProviderType
Definition SSOClient.h:45
virtual Model::LogoutOutcome Logout(const Model::LogoutRequest &request) const
virtual void OverrideEndpoint(const Aws::String &endpoint)
Model::ListAccountsOutcomeCallable ListAccountsCallable(const ListAccountsRequestT &request) const
Definition SSOClient.h:161
SSOClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::GetRoleCredentialsOutcomeCallable GetRoleCredentialsCallable(const GetRoleCredentialsRequestT &request) const
Definition SSOClient.h:105
SSOClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Aws::Client::AWSJsonClient BASECLASS
Definition SSOClient.h:40
static const char * GetAllocationTag()
void ListAccountRolesAsync(const ListAccountRolesRequestT &request, const ListAccountRolesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition SSOClient.h:141
std::future< ListAccountRolesOutcome > ListAccountRolesOutcomeCallable
std::future< ListAccountsOutcome > ListAccountsOutcomeCallable
std::future< LogoutOutcome > LogoutOutcomeCallable
std::future< GetRoleCredentialsOutcome > GetRoleCredentialsOutcomeCallable
std::function< void(const SSOClient *, const Model::ListAccountRolesRequest &, const Model::ListAccountRolesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListAccountRolesResponseReceivedHandler
std::function< void(const SSOClient *, const Model::GetRoleCredentialsRequest &, const Model::GetRoleCredentialsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetRoleCredentialsResponseReceivedHandler
std::function< void(const SSOClient *, const Model::ListAccountsRequest &, const Model::ListAccountsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListAccountsResponseReceivedHandler
std::function< void(const SSOClient *, const Model::LogoutRequest &, const Model::LogoutOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> LogoutResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String