AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
SSOClient.h
1
6#pragma once
7#include <aws/sso/SSO_EXPORTS.h>
8#include <aws/core/client/ClientConfiguration.h>
9#include <aws/core/client/AWSClient.h>
10#include <aws/core/client/AWSClientAsyncCRTP.h>
11#include <aws/core/utils/json/JsonSerializer.h>
12#include <aws/sso/SSOServiceClientModel.h>
13
14namespace Aws
15{
16namespace SSO
17{
38 {
39 public:
41 static const char* GetServiceName();
42 static const char* GetAllocationTag();
43
46
52 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr);
53
59 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr,
61
66 SSOClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
67 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr,
69
70
71 /* Legacy constructors due deprecation */
76 SSOClient(const Aws::Client::ClientConfiguration& clientConfiguration);
77
83 const Aws::Client::ClientConfiguration& clientConfiguration);
84
89 SSOClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
90 const Aws::Client::ClientConfiguration& clientConfiguration);
91
92 /* End of legacy constructors due deprecation */
93 virtual ~SSOClient();
94
102
106 template<typename GetRoleCredentialsRequestT = Model::GetRoleCredentialsRequest>
107 Model::GetRoleCredentialsOutcomeCallable GetRoleCredentialsCallable(const GetRoleCredentialsRequestT& request) const
108 {
109 return SubmitCallable(&SSOClient::GetRoleCredentials, request);
110 }
111
115 template<typename GetRoleCredentialsRequestT = Model::GetRoleCredentialsRequest>
116 void GetRoleCredentialsAsync(const GetRoleCredentialsRequestT& request, const GetRoleCredentialsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
117 {
118 return SubmitAsync(&SSOClient::GetRoleCredentials, request, handler, context);
119 }
120
128
132 template<typename ListAccountRolesRequestT = Model::ListAccountRolesRequest>
133 Model::ListAccountRolesOutcomeCallable ListAccountRolesCallable(const ListAccountRolesRequestT& request) const
134 {
135 return SubmitCallable(&SSOClient::ListAccountRoles, request);
136 }
137
141 template<typename ListAccountRolesRequestT = Model::ListAccountRolesRequest>
142 void ListAccountRolesAsync(const ListAccountRolesRequestT& request, const ListAccountRolesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
143 {
144 return SubmitAsync(&SSOClient::ListAccountRoles, request, handler, context);
145 }
146
157
161 template<typename ListAccountsRequestT = Model::ListAccountsRequest>
162 Model::ListAccountsOutcomeCallable ListAccountsCallable(const ListAccountsRequestT& request) const
163 {
164 return SubmitCallable(&SSOClient::ListAccounts, request);
165 }
166
170 template<typename ListAccountsRequestT = Model::ListAccountsRequest>
171 void ListAccountsAsync(const ListAccountsRequestT& request, const ListAccountsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
172 {
173 return SubmitAsync(&SSOClient::ListAccounts, request, handler, context);
174 }
175
194 virtual Model::LogoutOutcome Logout(const Model::LogoutRequest& request) const;
195
199 template<typename LogoutRequestT = Model::LogoutRequest>
200 Model::LogoutOutcomeCallable LogoutCallable(const LogoutRequestT& request) const
201 {
202 return SubmitCallable(&SSOClient::Logout, request);
203 }
204
208 template<typename LogoutRequestT = Model::LogoutRequest>
209 void LogoutAsync(const LogoutRequestT& request, const LogoutResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
210 {
211 return SubmitAsync(&SSOClient::Logout, request, handler, context);
212 }
213
214
215 void OverrideEndpoint(const Aws::String& endpoint);
216 std::shared_ptr<SSOEndpointProviderBase>& accessEndpointProvider();
217 private:
219 void init(const SSOClientConfiguration& clientConfiguration);
220
221 SSOClientConfiguration m_clientConfiguration;
222 std::shared_ptr<SSOEndpointProviderBase> m_endpointProvider;
223 };
224
225} // namespace SSO
226} // namespace Aws
virtual Model::ListAccountRolesOutcome ListAccountRoles(const Model::ListAccountRolesRequest &request) const
SSOClientConfiguration ClientConfigurationType
Definition SSOClient.h:44
std::shared_ptr< SSOEndpointProviderBase > & accessEndpointProvider()
void LogoutAsync(const LogoutRequestT &request, const LogoutResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition SSOClient.h:209
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:171
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:133
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:200
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:116
SSOEndpointProvider EndpointProviderType
Definition SSOClient.h:45
virtual Model::LogoutOutcome Logout(const Model::LogoutRequest &request) const
Model::ListAccountsOutcomeCallable ListAccountsCallable(const ListAccountsRequestT &request) const
Definition SSOClient.h:162
SSOClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::GetRoleCredentialsOutcomeCallable GetRoleCredentialsCallable(const GetRoleCredentialsRequestT &request) const
Definition SSOClient.h:107
SSOClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
void OverrideEndpoint(const Aws::String &endpoint)
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:142
std::future< ListAccountRolesOutcome > ListAccountRolesOutcomeCallable
std::future< ListAccountsOutcome > ListAccountsOutcomeCallable
std::future< LogoutOutcome > LogoutOutcomeCallable
std::future< GetRoleCredentialsOutcome > GetRoleCredentialsOutcomeCallable
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::function< void(const SSOClient *, const Model::ListAccountRolesRequest &, const Model::ListAccountRolesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListAccountRolesResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String