AWS SDK for C++  1.8.95
AWS SDK for C++
ACMClient.h
Go to the documentation of this file.
1 
6 #pragma once
7 #include <aws/acm/ACM_EXPORTS.h>
8 #include <aws/acm/ACMErrors.h>
21 #include <aws/core/NoResult.h>
24 #include <future>
25 #include <functional>
26 
27 namespace Aws
28 {
29 
30 namespace Http
31 {
32  class HttpClient;
33  class HttpClientFactory;
34 } // namespace Http
35 
36 namespace Utils
37 {
38  template< typename R, typename E> class Outcome;
39 namespace Threading
40 {
41  class Executor;
42 } // namespace Threading
43 } // namespace Utils
44 
45 namespace Auth
46 {
47  class AWSCredentials;
48  class AWSCredentialsProvider;
49 } // namespace Auth
50 
51 namespace Client
52 {
53  class RetryStrategy;
54 } // namespace Client
55 
56 namespace ACM
57 {
58 
59 namespace Model
60 {
74 
88 
89  typedef std::future<AddTagsToCertificateOutcome> AddTagsToCertificateOutcomeCallable;
90  typedef std::future<DeleteCertificateOutcome> DeleteCertificateOutcomeCallable;
91  typedef std::future<DescribeCertificateOutcome> DescribeCertificateOutcomeCallable;
92  typedef std::future<ExportCertificateOutcome> ExportCertificateOutcomeCallable;
93  typedef std::future<GetCertificateOutcome> GetCertificateOutcomeCallable;
94  typedef std::future<ImportCertificateOutcome> ImportCertificateOutcomeCallable;
95  typedef std::future<ListCertificatesOutcome> ListCertificatesOutcomeCallable;
96  typedef std::future<ListTagsForCertificateOutcome> ListTagsForCertificateOutcomeCallable;
97  typedef std::future<RemoveTagsFromCertificateOutcome> RemoveTagsFromCertificateOutcomeCallable;
98  typedef std::future<RenewCertificateOutcome> RenewCertificateOutcomeCallable;
99  typedef std::future<RequestCertificateOutcome> RequestCertificateOutcomeCallable;
100  typedef std::future<ResendValidationEmailOutcome> ResendValidationEmailOutcomeCallable;
101  typedef std::future<UpdateCertificateOptionsOutcome> UpdateCertificateOptionsOutcomeCallable;
102 } // namespace Model
103 
104  class ACMClient;
105 
106  typedef std::function<void(const ACMClient*, const Model::AddTagsToCertificateRequest&, const Model::AddTagsToCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > AddTagsToCertificateResponseReceivedHandler;
107  typedef std::function<void(const ACMClient*, const Model::DeleteCertificateRequest&, const Model::DeleteCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteCertificateResponseReceivedHandler;
108  typedef std::function<void(const ACMClient*, const Model::DescribeCertificateRequest&, const Model::DescribeCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DescribeCertificateResponseReceivedHandler;
109  typedef std::function<void(const ACMClient*, const Model::ExportCertificateRequest&, const Model::ExportCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ExportCertificateResponseReceivedHandler;
110  typedef std::function<void(const ACMClient*, const Model::GetCertificateRequest&, const Model::GetCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetCertificateResponseReceivedHandler;
111  typedef std::function<void(const ACMClient*, const Model::ImportCertificateRequest&, const Model::ImportCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ImportCertificateResponseReceivedHandler;
112  typedef std::function<void(const ACMClient*, const Model::ListCertificatesRequest&, const Model::ListCertificatesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListCertificatesResponseReceivedHandler;
113  typedef std::function<void(const ACMClient*, const Model::ListTagsForCertificateRequest&, const Model::ListTagsForCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListTagsForCertificateResponseReceivedHandler;
114  typedef std::function<void(const ACMClient*, const Model::RemoveTagsFromCertificateRequest&, const Model::RemoveTagsFromCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RemoveTagsFromCertificateResponseReceivedHandler;
115  typedef std::function<void(const ACMClient*, const Model::RenewCertificateRequest&, const Model::RenewCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RenewCertificateResponseReceivedHandler;
116  typedef std::function<void(const ACMClient*, const Model::RequestCertificateRequest&, const Model::RequestCertificateOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > RequestCertificateResponseReceivedHandler;
117  typedef std::function<void(const ACMClient*, const Model::ResendValidationEmailRequest&, const Model::ResendValidationEmailOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ResendValidationEmailResponseReceivedHandler;
118  typedef std::function<void(const ACMClient*, const Model::UpdateCertificateOptionsRequest&, const Model::UpdateCertificateOptionsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdateCertificateOptionsResponseReceivedHandler;
119 
129  {
130  public:
132 
138 
144 
149  ACMClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
151 
152  virtual ~ACMClient();
153 
154 
176  virtual Model::AddTagsToCertificateOutcome AddTagsToCertificate(const Model::AddTagsToCertificateRequest& request) const;
177 
201  virtual Model::AddTagsToCertificateOutcomeCallable AddTagsToCertificateCallable(const Model::AddTagsToCertificateRequest& request) const;
202 
226  virtual void AddTagsToCertificateAsync(const Model::AddTagsToCertificateRequest& request, const AddTagsToCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
227 
240  virtual Model::DeleteCertificateOutcome DeleteCertificate(const Model::DeleteCertificateRequest& request) const;
241 
256  virtual Model::DeleteCertificateOutcomeCallable DeleteCertificateCallable(const Model::DeleteCertificateRequest& request) const;
257 
272  virtual void DeleteCertificateAsync(const Model::DeleteCertificateRequest& request, const DeleteCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
273 
280  virtual Model::DescribeCertificateOutcome DescribeCertificate(const Model::DescribeCertificateRequest& request) const;
281 
290  virtual Model::DescribeCertificateOutcomeCallable DescribeCertificateCallable(const Model::DescribeCertificateRequest& request) const;
291 
300  virtual void DescribeCertificateAsync(const Model::DescribeCertificateRequest& request, const DescribeCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
301 
314  virtual Model::ExportCertificateOutcome ExportCertificate(const Model::ExportCertificateRequest& request) const;
315 
330  virtual Model::ExportCertificateOutcomeCallable ExportCertificateCallable(const Model::ExportCertificateRequest& request) const;
331 
346  virtual void ExportCertificateAsync(const Model::ExportCertificateRequest& request, const ExportCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
347 
359  virtual Model::GetCertificateOutcome GetCertificate(const Model::GetCertificateRequest& request) const;
360 
374  virtual Model::GetCertificateOutcomeCallable GetCertificateCallable(const Model::GetCertificateRequest& request) const;
375 
389  virtual void GetCertificateAsync(const Model::GetCertificateRequest& request, const GetCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
390 
438  virtual Model::ImportCertificateOutcome ImportCertificate(const Model::ImportCertificateRequest& request) const;
439 
489  virtual Model::ImportCertificateOutcomeCallable ImportCertificateCallable(const Model::ImportCertificateRequest& request) const;
490 
540  virtual void ImportCertificateAsync(const Model::ImportCertificateRequest& request, const ImportCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
541 
551  virtual Model::ListCertificatesOutcome ListCertificates(const Model::ListCertificatesRequest& request) const;
552 
564  virtual Model::ListCertificatesOutcomeCallable ListCertificatesCallable(const Model::ListCertificatesRequest& request) const;
565 
577  virtual void ListCertificatesAsync(const Model::ListCertificatesRequest& request, const ListCertificatesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
578 
588  virtual Model::ListTagsForCertificateOutcome ListTagsForCertificate(const Model::ListTagsForCertificateRequest& request) const;
589 
601  virtual Model::ListTagsForCertificateOutcomeCallable ListTagsForCertificateCallable(const Model::ListTagsForCertificateRequest& request) const;
602 
614  virtual void ListTagsForCertificateAsync(const Model::ListTagsForCertificateRequest& request, const ListTagsForCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
615 
628  virtual Model::RemoveTagsFromCertificateOutcome RemoveTagsFromCertificate(const Model::RemoveTagsFromCertificateRequest& request) const;
629 
644  virtual Model::RemoveTagsFromCertificateOutcomeCallable RemoveTagsFromCertificateCallable(const Model::RemoveTagsFromCertificateRequest& request) const;
645 
660  virtual void RemoveTagsFromCertificateAsync(const Model::RemoveTagsFromCertificateRequest& request, const RemoveTagsFromCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
661 
673  virtual Model::RenewCertificateOutcome RenewCertificate(const Model::RenewCertificateRequest& request) const;
674 
688  virtual Model::RenewCertificateOutcomeCallable RenewCertificateCallable(const Model::RenewCertificateRequest& request) const;
689 
703  virtual void RenewCertificateAsync(const Model::RenewCertificateRequest& request, const RenewCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
704 
722  virtual Model::RequestCertificateOutcome RequestCertificate(const Model::RequestCertificateRequest& request) const;
723 
743  virtual Model::RequestCertificateOutcomeCallable RequestCertificateCallable(const Model::RequestCertificateRequest& request) const;
744 
764  virtual void RequestCertificateAsync(const Model::RequestCertificateRequest& request, const RequestCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
765 
782  virtual Model::ResendValidationEmailOutcome ResendValidationEmail(const Model::ResendValidationEmailRequest& request) const;
783 
802  virtual Model::ResendValidationEmailOutcomeCallable ResendValidationEmailCallable(const Model::ResendValidationEmailRequest& request) const;
803 
822  virtual void ResendValidationEmailAsync(const Model::ResendValidationEmailRequest& request, const ResendValidationEmailResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
823 
834  virtual Model::UpdateCertificateOptionsOutcome UpdateCertificateOptions(const Model::UpdateCertificateOptionsRequest& request) const;
835 
848  virtual Model::UpdateCertificateOptionsOutcomeCallable UpdateCertificateOptionsCallable(const Model::UpdateCertificateOptionsRequest& request) const;
849 
862  virtual void UpdateCertificateOptionsAsync(const Model::UpdateCertificateOptionsRequest& request, const UpdateCertificateOptionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
863 
864 
865  void OverrideEndpoint(const Aws::String& endpoint);
866  private:
867  void init(const Aws::Client::ClientConfiguration& clientConfiguration);
868  void AddTagsToCertificateAsyncHelper(const Model::AddTagsToCertificateRequest& request, const AddTagsToCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
869  void DeleteCertificateAsyncHelper(const Model::DeleteCertificateRequest& request, const DeleteCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
870  void DescribeCertificateAsyncHelper(const Model::DescribeCertificateRequest& request, const DescribeCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
871  void ExportCertificateAsyncHelper(const Model::ExportCertificateRequest& request, const ExportCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
872  void GetCertificateAsyncHelper(const Model::GetCertificateRequest& request, const GetCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
873  void ImportCertificateAsyncHelper(const Model::ImportCertificateRequest& request, const ImportCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
874  void ListCertificatesAsyncHelper(const Model::ListCertificatesRequest& request, const ListCertificatesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
875  void ListTagsForCertificateAsyncHelper(const Model::ListTagsForCertificateRequest& request, const ListTagsForCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
876  void RemoveTagsFromCertificateAsyncHelper(const Model::RemoveTagsFromCertificateRequest& request, const RemoveTagsFromCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
877  void RenewCertificateAsyncHelper(const Model::RenewCertificateRequest& request, const RenewCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
878  void RequestCertificateAsyncHelper(const Model::RequestCertificateRequest& request, const RequestCertificateResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
879  void ResendValidationEmailAsyncHelper(const Model::ResendValidationEmailRequest& request, const ResendValidationEmailResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
880  void UpdateCertificateOptionsAsyncHelper(const Model::UpdateCertificateOptionsRequest& request, const UpdateCertificateOptionsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
881 
882  Aws::String m_uri;
883  Aws::String m_configScheme;
884  std::shared_ptr<Aws::Utils::Threading::Executor> m_executor;
885  };
886 
887 } // namespace ACM
888 } // namespace Aws
std::function< void(const ACMClient *, const Model::AddTagsToCertificateRequest &, const Model::AddTagsToCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > AddTagsToCertificateResponseReceivedHandler
Definition: ACMClient.h:104
std::future< RemoveTagsFromCertificateOutcome > RemoveTagsFromCertificateOutcomeCallable
Definition: ACMClient.h:97
std::function< void(const ACMClient *, const Model::ResendValidationEmailRequest &, const Model::ResendValidationEmailOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ResendValidationEmailResponseReceivedHandler
Definition: ACMClient.h:117
std::future< ListTagsForCertificateOutcome > ListTagsForCertificateOutcomeCallable
Definition: ACMClient.h:96
std::future< ImportCertificateOutcome > ImportCertificateOutcomeCallable
Definition: ACMClient.h:94
Aws::Utils::Outcome< Aws::NoResult, ACMError > DeleteCertificateOutcome
Definition: ACMClient.h:76
std::function< void(const ACMClient *, const Model::DeleteCertificateRequest &, const Model::DeleteCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteCertificateResponseReceivedHandler
Definition: ACMClient.h:107
Aws::Utils::Outcome< ListTagsForCertificateResult, ACMError > ListTagsForCertificateOutcome
Definition: ACMClient.h:82
std::future< RequestCertificateOutcome > RequestCertificateOutcomeCallable
Definition: ACMClient.h:99
Aws::Utils::Outcome< ImportCertificateResult, ACMError > ImportCertificateOutcome
Definition: ACMClient.h:80
Aws::Client::AWSJsonClient BASECLASS
Definition: ACMClient.h:131
std::future< UpdateCertificateOptionsOutcome > UpdateCertificateOptionsOutcomeCallable
Definition: ACMClient.h:101
std::function< void(const ACMClient *, const Model::UpdateCertificateOptionsRequest &, const Model::UpdateCertificateOptionsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > UpdateCertificateOptionsResponseReceivedHandler
Definition: ACMClient.h:118
Aws::Utils::Outcome< Aws::NoResult, ACMError > AddTagsToCertificateOutcome
Definition: ACMClient.h:73
Aws::Utils::Outcome< ListCertificatesResult, ACMError > ListCertificatesOutcome
Definition: ACMClient.h:81
std::function< void(const ACMClient *, const Model::DescribeCertificateRequest &, const Model::DescribeCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DescribeCertificateResponseReceivedHandler
Definition: ACMClient.h:108
Aws::Utils::Outcome< Aws::NoResult, ACMError > ResendValidationEmailOutcome
Definition: ACMClient.h:86
Aws::Utils::Outcome< DescribeCertificateResult, ACMError > DescribeCertificateOutcome
Definition: ACMClient.h:77
#define AWS_ACM_API
Definition: ACM_EXPORTS.h:28
Aws::Utils::Outcome< RequestCertificateResult, ACMError > RequestCertificateOutcome
Definition: ACMClient.h:85
std::future< DescribeCertificateOutcome > DescribeCertificateOutcomeCallable
Definition: ACMClient.h:91
Aws::Utils::Outcome< ExportCertificateResult, ACMError > ExportCertificateOutcome
Definition: ACMClient.h:78
Aws::Utils::Outcome< GetCertificateResult, ACMError > GetCertificateOutcome
Definition: ACMClient.h:79
std::future< GetCertificateOutcome > GetCertificateOutcomeCallable
Definition: ACMClient.h:93
std::function< void(const ACMClient *, const Model::ExportCertificateRequest &, const Model::ExportCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ExportCertificateResponseReceivedHandler
Definition: ACMClient.h:109
std::future< ExportCertificateOutcome > ExportCertificateOutcomeCallable
Definition: ACMClient.h:92
std::future< RenewCertificateOutcome > RenewCertificateOutcomeCallable
Definition: ACMClient.h:98
std::function< void(const ACMClient *, const Model::RemoveTagsFromCertificateRequest &, const Model::RemoveTagsFromCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RemoveTagsFromCertificateResponseReceivedHandler
Definition: ACMClient.h:114
std::function< void(const ACMClient *, const Model::GetCertificateRequest &, const Model::GetCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetCertificateResponseReceivedHandler
Definition: ACMClient.h:110
std::future< ListCertificatesOutcome > ListCertificatesOutcomeCallable
Definition: ACMClient.h:95
Aws::Utils::Outcome< Aws::NoResult, ACMError > RenewCertificateOutcome
Definition: ACMClient.h:84
Aws::Utils::Outcome< Aws::NoResult, ACMError > UpdateCertificateOptionsOutcome
Definition: ACMClient.h:87
std::function< void(const ACMClient *, const Model::RenewCertificateRequest &, const Model::RenewCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RenewCertificateResponseReceivedHandler
Definition: ACMClient.h:115
std::function< void(const ACMClient *, const Model::ListCertificatesRequest &, const Model::ListCertificatesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListCertificatesResponseReceivedHandler
Definition: ACMClient.h:112
std::function< void(const ACMClient *, const Model::RequestCertificateRequest &, const Model::RequestCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > RequestCertificateResponseReceivedHandler
Definition: ACMClient.h:116
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
std::future< DeleteCertificateOutcome > DeleteCertificateOutcomeCallable
Definition: ACMClient.h:90
std::function< void(const ACMClient *, const Model::ListTagsForCertificateRequest &, const Model::ListTagsForCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ListTagsForCertificateResponseReceivedHandler
Definition: ACMClient.h:113
std::future< ResendValidationEmailOutcome > ResendValidationEmailOutcomeCallable
Definition: ACMClient.h:100
std::future< AddTagsToCertificateOutcome > AddTagsToCertificateOutcomeCallable
Definition: ACMClient.h:89
Aws::Utils::Outcome< Aws::NoResult, ACMError > RemoveTagsFromCertificateOutcome
Definition: ACMClient.h:83
std::function< void(const ACMClient *, const Model::ImportCertificateRequest &, const Model::ImportCertificateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > ImportCertificateResponseReceivedHandler
Definition: ACMClient.h:111