AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
RecycleBinClient.h
1
6#pragma once
7#include <aws/rbin/RecycleBin_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/rbin/RecycleBinServiceClientModel.h>
13
14namespace Aws
15{
16namespace RecycleBin
17{
34 class AWS_RECYCLEBIN_API RecycleBinClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods<RecycleBinClient>
35 {
36 public:
38 static const char* GetServiceName();
39 static const char* GetAllocationTag();
40
43
49 std::shared_ptr<RecycleBinEndpointProviderBase> endpointProvider = nullptr);
50
56 std::shared_ptr<RecycleBinEndpointProviderBase> endpointProvider = nullptr,
58
63 RecycleBinClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
64 std::shared_ptr<RecycleBinEndpointProviderBase> endpointProvider = nullptr,
66
67
68 /* Legacy constructors due deprecation */
74
80 const Aws::Client::ClientConfiguration& clientConfiguration);
81
86 RecycleBinClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
87 const Aws::Client::ClientConfiguration& clientConfiguration);
88
89 /* End of legacy constructors due deprecation */
91
113
117 template<typename CreateRuleRequestT = Model::CreateRuleRequest>
118 Model::CreateRuleOutcomeCallable CreateRuleCallable(const CreateRuleRequestT& request) const
119 {
120 return SubmitCallable(&RecycleBinClient::CreateRule, request);
121 }
122
126 template<typename CreateRuleRequestT = Model::CreateRuleRequest>
127 void CreateRuleAsync(const CreateRuleRequestT& request, const CreateRuleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
128 {
129 return SubmitAsync(&RecycleBinClient::CreateRule, request, handler, context);
130 }
131
141
145 template<typename DeleteRuleRequestT = Model::DeleteRuleRequest>
146 Model::DeleteRuleOutcomeCallable DeleteRuleCallable(const DeleteRuleRequestT& request) const
147 {
148 return SubmitCallable(&RecycleBinClient::DeleteRule, request);
149 }
150
154 template<typename DeleteRuleRequestT = Model::DeleteRuleRequest>
155 void DeleteRuleAsync(const DeleteRuleRequestT& request, const DeleteRuleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
156 {
157 return SubmitAsync(&RecycleBinClient::DeleteRule, request, handler, context);
158 }
159
166
170 template<typename GetRuleRequestT = Model::GetRuleRequest>
171 Model::GetRuleOutcomeCallable GetRuleCallable(const GetRuleRequestT& request) const
172 {
173 return SubmitCallable(&RecycleBinClient::GetRule, request);
174 }
175
179 template<typename GetRuleRequestT = Model::GetRuleRequest>
180 void GetRuleAsync(const GetRuleRequestT& request, const GetRuleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
181 {
182 return SubmitAsync(&RecycleBinClient::GetRule, request, handler, context);
183 }
184
191
195 template<typename ListRulesRequestT = Model::ListRulesRequest>
196 Model::ListRulesOutcomeCallable ListRulesCallable(const ListRulesRequestT& request) const
197 {
198 return SubmitCallable(&RecycleBinClient::ListRules, request);
199 }
200
204 template<typename ListRulesRequestT = Model::ListRulesRequest>
205 void ListRulesAsync(const ListRulesRequestT& request, const ListRulesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
206 {
207 return SubmitAsync(&RecycleBinClient::ListRules, request, handler, context);
208 }
209
216
220 template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
221 Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const
222 {
223 return SubmitCallable(&RecycleBinClient::ListTagsForResource, request);
224 }
225
229 template<typename ListTagsForResourceRequestT = Model::ListTagsForResourceRequest>
230 void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
231 {
232 return SubmitAsync(&RecycleBinClient::ListTagsForResource, request, handler, context);
233 }
234
244
248 template<typename LockRuleRequestT = Model::LockRuleRequest>
249 Model::LockRuleOutcomeCallable LockRuleCallable(const LockRuleRequestT& request) const
250 {
251 return SubmitCallable(&RecycleBinClient::LockRule, request);
252 }
253
257 template<typename LockRuleRequestT = Model::LockRuleRequest>
258 void LockRuleAsync(const LockRuleRequestT& request, const LockRuleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
259 {
260 return SubmitAsync(&RecycleBinClient::LockRule, request, handler, context);
261 }
262
269
273 template<typename TagResourceRequestT = Model::TagResourceRequest>
274 Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT& request) const
275 {
276 return SubmitCallable(&RecycleBinClient::TagResource, request);
277 }
278
282 template<typename TagResourceRequestT = Model::TagResourceRequest>
283 void TagResourceAsync(const TagResourceRequestT& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
284 {
285 return SubmitAsync(&RecycleBinClient::TagResource, request, handler, context);
286 }
287
296
300 template<typename UnlockRuleRequestT = Model::UnlockRuleRequest>
301 Model::UnlockRuleOutcomeCallable UnlockRuleCallable(const UnlockRuleRequestT& request) const
302 {
303 return SubmitCallable(&RecycleBinClient::UnlockRule, request);
304 }
305
309 template<typename UnlockRuleRequestT = Model::UnlockRuleRequest>
310 void UnlockRuleAsync(const UnlockRuleRequestT& request, const UnlockRuleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
311 {
312 return SubmitAsync(&RecycleBinClient::UnlockRule, request, handler, context);
313 }
314
321
325 template<typename UntagResourceRequestT = Model::UntagResourceRequest>
326 Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT& request) const
327 {
328 return SubmitCallable(&RecycleBinClient::UntagResource, request);
329 }
330
334 template<typename UntagResourceRequestT = Model::UntagResourceRequest>
335 void UntagResourceAsync(const UntagResourceRequestT& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
336 {
337 return SubmitAsync(&RecycleBinClient::UntagResource, request, handler, context);
338 }
339
352
356 template<typename UpdateRuleRequestT = Model::UpdateRuleRequest>
357 Model::UpdateRuleOutcomeCallable UpdateRuleCallable(const UpdateRuleRequestT& request) const
358 {
359 return SubmitCallable(&RecycleBinClient::UpdateRule, request);
360 }
361
365 template<typename UpdateRuleRequestT = Model::UpdateRuleRequest>
366 void UpdateRuleAsync(const UpdateRuleRequestT& request, const UpdateRuleResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
367 {
368 return SubmitAsync(&RecycleBinClient::UpdateRule, request, handler, context);
369 }
370
371
372 void OverrideEndpoint(const Aws::String& endpoint);
373 std::shared_ptr<RecycleBinEndpointProviderBase>& accessEndpointProvider();
374 private:
376 void init(const RecycleBinClientConfiguration& clientConfiguration);
377
378 RecycleBinClientConfiguration m_clientConfiguration;
379 std::shared_ptr<RecycleBinEndpointProviderBase> m_endpointProvider;
380 };
381
382} // namespace RecycleBin
383} // namespace Aws
void UntagResourceAsync(const UntagResourceRequestT &request, const UntagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::GetRuleOutcomeCallable GetRuleCallable(const GetRuleRequestT &request) const
void OverrideEndpoint(const Aws::String &endpoint)
void ListTagsForResourceAsync(const ListTagsForResourceRequestT &request, const ListTagsForResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
RecycleBinClient(const Aws::RecycleBin::RecycleBinClientConfiguration &clientConfiguration=Aws::RecycleBin::RecycleBinClientConfiguration(), std::shared_ptr< RecycleBinEndpointProviderBase > endpointProvider=nullptr)
RecycleBinClientConfiguration ClientConfigurationType
RecycleBinClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::UntagResourceOutcomeCallable UntagResourceCallable(const UntagResourceRequestT &request) const
void GetRuleAsync(const GetRuleRequestT &request, const GetRuleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::LockRuleOutcome LockRule(const Model::LockRuleRequest &request) const
Model::UpdateRuleOutcomeCallable UpdateRuleCallable(const UpdateRuleRequestT &request) const
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest &request) const
Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT &request) const
virtual Model::DeleteRuleOutcome DeleteRule(const Model::DeleteRuleRequest &request) const
std::shared_ptr< RecycleBinEndpointProviderBase > & accessEndpointProvider()
Model::DeleteRuleOutcomeCallable DeleteRuleCallable(const DeleteRuleRequestT &request) const
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest &request) const
RecycleBinClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::CreateRuleOutcomeCallable CreateRuleCallable(const CreateRuleRequestT &request) const
Aws::Client::AWSJsonClient BASECLASS
virtual Model::UpdateRuleOutcome UpdateRule(const Model::UpdateRuleRequest &request) const
void ListRulesAsync(const ListRulesRequestT &request, const ListRulesResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::ListRulesOutcomeCallable ListRulesCallable(const ListRulesRequestT &request) const
void UnlockRuleAsync(const UnlockRuleRequestT &request, const UnlockRuleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::TagResourceOutcomeCallable TagResourceCallable(const TagResourceRequestT &request) const
void LockRuleAsync(const LockRuleRequestT &request, const LockRuleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
RecycleBinClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< RecycleBinEndpointProviderBase > endpointProvider=nullptr, const Aws::RecycleBin::RecycleBinClientConfiguration &clientConfiguration=Aws::RecycleBin::RecycleBinClientConfiguration())
static const char * GetAllocationTag()
virtual Model::CreateRuleOutcome CreateRule(const Model::CreateRuleRequest &request) const
virtual Model::UnlockRuleOutcome UnlockRule(const Model::UnlockRuleRequest &request) const
RecycleBinClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< RecycleBinEndpointProviderBase > endpointProvider=nullptr, const Aws::RecycleBin::RecycleBinClientConfiguration &clientConfiguration=Aws::RecycleBin::RecycleBinClientConfiguration())
virtual Model::ListRulesOutcome ListRules(const Model::ListRulesRequest &request) const
static const char * GetServiceName()
void DeleteRuleAsync(const DeleteRuleRequestT &request, const DeleteRuleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
RecycleBinClient(const Aws::Client::ClientConfiguration &clientConfiguration)
void TagResourceAsync(const TagResourceRequestT &request, const TagResourceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
RecycleBinEndpointProvider EndpointProviderType
void UpdateRuleAsync(const UpdateRuleRequestT &request, const UpdateRuleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::LockRuleOutcomeCallable LockRuleCallable(const LockRuleRequestT &request) const
virtual Model::GetRuleOutcome GetRule(const Model::GetRuleRequest &request) const
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest &request) const
void CreateRuleAsync(const CreateRuleRequestT &request, const CreateRuleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::UnlockRuleOutcomeCallable UnlockRuleCallable(const UnlockRuleRequestT &request) const
std::future< GetRuleOutcome > GetRuleOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
std::future< UpdateRuleOutcome > UpdateRuleOutcomeCallable
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
std::future< DeleteRuleOutcome > DeleteRuleOutcomeCallable
std::future< CreateRuleOutcome > CreateRuleOutcomeCallable
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< UnlockRuleOutcome > UnlockRuleOutcomeCallable
std::future< ListRulesOutcome > ListRulesOutcomeCallable
std::future< LockRuleOutcome > LockRuleOutcomeCallable
std::function< void(const RecycleBinClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > TagResourceResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::DeleteRuleRequest &, const Model::DeleteRuleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteRuleResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::LockRuleRequest &, const Model::LockRuleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > LockRuleResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UntagResourceResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForResourceResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::UpdateRuleRequest &, const Model::UpdateRuleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateRuleResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::GetRuleRequest &, const Model::GetRuleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetRuleResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::CreateRuleRequest &, const Model::CreateRuleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > CreateRuleResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::UnlockRuleRequest &, const Model::UnlockRuleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UnlockRuleResponseReceivedHandler
std::function< void(const RecycleBinClient *, const Model::ListRulesRequest &, const Model::ListRulesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListRulesResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String