AWS SDK for C++

AWS SDK for C++ Version 1.11.788

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/SSOWaiter.h>
14#include <aws/sso/SSO_EXPORTS.h>
15
16namespace Aws {
17namespace SSO {
37class AWS_SSO_API SSOClient : public Aws::Client::AWSJsonClient,
39 public SSOPaginationBase<SSOClient>,
40 public SSOWaiter<SSOClient> {
41 public:
43 static const char* GetServiceName();
44 static const char* GetAllocationTag();
45
48
54 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr);
55
60 SSOClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr,
62
67 SSOClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
68 std::shared_ptr<SSOEndpointProviderBase> endpointProvider = nullptr,
70
71 /* Legacy constructors due deprecation */
76 SSOClient(const Aws::Client::ClientConfiguration& clientConfiguration);
77
82 SSOClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
83
88 SSOClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
89 const Aws::Client::ClientConfiguration& clientConfiguration);
90
91 /* End of legacy constructors due deprecation */
92 virtual ~SSOClient();
93
101
106 template <typename GetRoleCredentialsRequestT = Model::GetRoleCredentialsRequest>
107 Model::GetRoleCredentialsOutcomeCallable GetRoleCredentialsCallable(const GetRoleCredentialsRequestT& request) const {
108 return SubmitCallable(&SSOClient::GetRoleCredentials, request);
109 }
110
115 template <typename GetRoleCredentialsRequestT = Model::GetRoleCredentialsRequest>
116 void GetRoleCredentialsAsync(const GetRoleCredentialsRequestT& request, const GetRoleCredentialsResponseReceivedHandler& handler,
117 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
118 return SubmitAsync(&SSOClient::GetRoleCredentials, request, handler, context);
119 }
120
128
133 template <typename ListAccountRolesRequestT = Model::ListAccountRolesRequest>
134 Model::ListAccountRolesOutcomeCallable ListAccountRolesCallable(const ListAccountRolesRequestT& request) const {
135 return SubmitCallable(&SSOClient::ListAccountRoles, request);
136 }
137
142 template <typename ListAccountRolesRequestT = Model::ListAccountRolesRequest>
143 void ListAccountRolesAsync(const ListAccountRolesRequestT& request, const ListAccountRolesResponseReceivedHandler& handler,
144 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
145 return SubmitAsync(&SSOClient::ListAccountRoles, request, handler, context);
146 }
147
158
162 template <typename ListAccountsRequestT = Model::ListAccountsRequest>
163 Model::ListAccountsOutcomeCallable ListAccountsCallable(const ListAccountsRequestT& request) const {
164 return SubmitCallable(&SSOClient::ListAccounts, request);
165 }
166
171 template <typename ListAccountsRequestT = Model::ListAccountsRequest>
172 void ListAccountsAsync(const ListAccountsRequestT& request, const ListAccountsResponseReceivedHandler& handler,
173 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
174 return SubmitAsync(&SSOClient::ListAccounts, request, handler, context);
175 }
176
195 virtual Model::LogoutOutcome Logout(const Model::LogoutRequest& request) const;
196
200 template <typename LogoutRequestT = Model::LogoutRequest>
201 Model::LogoutOutcomeCallable LogoutCallable(const LogoutRequestT& request) const {
202 return SubmitCallable(&SSOClient::Logout, request);
203 }
204
209 template <typename LogoutRequestT = Model::LogoutRequest>
210 void LogoutAsync(const LogoutRequestT& request, const LogoutResponseReceivedHandler& handler,
211 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
212 return SubmitAsync(&SSOClient::Logout, request, handler, context);
213 }
214
215 virtual void OverrideEndpoint(const Aws::String& endpoint);
216 virtual std::shared_ptr<SSOEndpointProviderBase>& accessEndpointProvider();
217
218 private:
220 void init(const SSOClientConfiguration& clientConfiguration);
221
223
224 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request,
225 const std::function<void(Aws::Endpoint::ResolveEndpointOutcome&)>& resolveUri,
226 Aws::Http::HttpMethod httpMethod) const;
227
228 SSOClientConfiguration m_clientConfiguration;
229 std::shared_ptr<SSOEndpointProviderBase> m_endpointProvider;
230};
231
232} // namespace SSO
233} // namespace Aws
virtual Model::ListAccountRolesOutcome ListAccountRoles(const Model::ListAccountRolesRequest &request) const
SSOClientConfiguration ClientConfigurationType
Definition SSOClient.h:46
void LogoutAsync(const LogoutRequestT &request, const LogoutResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition SSOClient.h:210
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:172
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:134
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:201
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:47
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:163
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)
Aws::Client::AWSJsonClient BASECLASS
Definition SSOClient.h:42
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:143
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