AWS SDK for C++  1.9.123
AWS SDK for C++
LexRuntimeServiceClient.h
Go to the documentation of this file.
1 
6 #pragma once
21 #include <future>
22 #include <functional>
23 
24 namespace Aws
25 {
26 
27 namespace Http
28 {
29  class HttpClient;
30  class HttpClientFactory;
31 } // namespace Http
32 
33 namespace Utils
34 {
35  template< typename R, typename E> class Outcome;
36 namespace Threading
37 {
38  class Executor;
39 } // namespace Threading
40 } // namespace Utils
41 
42 namespace Auth
43 {
44  class AWSCredentials;
45  class AWSCredentialsProvider;
46 } // namespace Auth
47 
48 namespace Client
49 {
50  class RetryStrategy;
51 } // namespace Client
52 
53 namespace LexRuntimeService
54 {
55 
56 namespace Model
57 {
59  class GetSessionRequest;
60  class PostContentRequest;
61  class PostTextRequest;
62  class PutSessionRequest;
63 
69 
70  typedef std::future<DeleteSessionOutcome> DeleteSessionOutcomeCallable;
71  typedef std::future<GetSessionOutcome> GetSessionOutcomeCallable;
72  typedef std::future<PostContentOutcome> PostContentOutcomeCallable;
73  typedef std::future<PostTextOutcome> PostTextOutcomeCallable;
74  typedef std::future<PutSessionOutcome> PutSessionOutcomeCallable;
75 } // namespace Model
76 
78 
79  typedef std::function<void(const LexRuntimeServiceClient*, const Model::DeleteSessionRequest&, const Model::DeleteSessionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeleteSessionResponseReceivedHandler;
80  typedef std::function<void(const LexRuntimeServiceClient*, const Model::GetSessionRequest&, const Model::GetSessionOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > GetSessionResponseReceivedHandler;
81  typedef std::function<void(const LexRuntimeServiceClient*, const Model::PostContentRequest&, Model::PostContentOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PostContentResponseReceivedHandler;
82  typedef std::function<void(const LexRuntimeServiceClient*, const Model::PostTextRequest&, const Model::PostTextOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PostTextResponseReceivedHandler;
83  typedef std::function<void(const LexRuntimeServiceClient*, const Model::PutSessionRequest&, Model::PutSessionOutcome, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > PutSessionResponseReceivedHandler;
84 
99  {
100  public:
102 
108 
114 
119  LexRuntimeServiceClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
121 
123 
124 
132 
142 
151  virtual void DeleteSessionAsync(const Model::DeleteSessionRequest& request, const DeleteSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
152 
160 
170 
179  virtual void GetSessionAsync(const Model::GetSessionRequest& request, const GetSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
180 
225 
272 
318  virtual void PostContentAsync(const Model::PostContentRequest& request, const PostContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
319 
361 
405 
448  virtual void PostTextAsync(const Model::PostTextRequest& request, const PostTextResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
449 
460 
473 
485  virtual void PutSessionAsync(const Model::PutSessionRequest& request, const PutSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
486 
487 
488  void OverrideEndpoint(const Aws::String& endpoint);
489  private:
490  void init(const Aws::Client::ClientConfiguration& clientConfiguration);
491  void DeleteSessionAsyncHelper(const Model::DeleteSessionRequest& request, const DeleteSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
492  void GetSessionAsyncHelper(const Model::GetSessionRequest& request, const GetSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
493  void PostContentAsyncHelper(const Model::PostContentRequest& request, const PostContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
494  void PostTextAsyncHelper(const Model::PostTextRequest& request, const PostTextResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
495  void PutSessionAsyncHelper(const Model::PutSessionRequest& request, const PutSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
496 
497  Aws::String m_uri;
498  Aws::String m_configScheme;
499  std::shared_ptr<Aws::Utils::Threading::Executor> m_executor;
500  };
501 
502 } // namespace LexRuntimeService
503 } // namespace Aws
Aws::DirectoryService::Model::LDAPSType::NOT_SET
@ NOT_SET
Aws::LexRuntimeService::LexRuntimeServiceClient::PostTextCallable
virtual Model::PostTextOutcomeCallable PostTextCallable(const Model::PostTextRequest &request) const
Aws::LexRuntimeService::Model::PutSessionRequest
Definition: PutSessionRequest.h:27
Aws::LexRuntimeService::LexRuntimeServiceClient::DeleteSessionCallable
virtual Model::DeleteSessionOutcomeCallable DeleteSessionCallable(const Model::DeleteSessionRequest &request) const
Aws::LexRuntimeService::LexRuntimeServiceClient::BASECLASS
Aws::Client::AWSJsonClient BASECLASS
Definition: LexRuntimeServiceClient.h:101
Aws::LexRuntimeService::LexRuntimeServiceClient::PostContentCallable
virtual Model::PostContentOutcomeCallable PostContentCallable(const Model::PostContentRequest &request) const
AWSError.h
Aws::LexRuntimeService::Model::GetSessionRequest
Definition: GetSessionRequest.h:26
Aws::LexRuntimeService::LexRuntimeServiceClient::GetSessionCallable
virtual Model::GetSessionOutcomeCallable GetSessionCallable(const Model::GetSessionRequest &request) const
Aws::LexRuntimeService::LexRuntimeServiceClient::OverrideEndpoint
void OverrideEndpoint(const Aws::String &endpoint)
Aws::LexRuntimeService::Model::PostContentOutcome
Aws::Utils::Outcome< PostContentResult, LexRuntimeServiceError > PostContentOutcome
Definition: LexRuntimeServiceClient.h:66
PostTextResult.h
Aws::LexRuntimeService::LexRuntimeServiceClient::PostTextAsync
virtual void PostTextAsync(const Model::PostTextRequest &request, const PostTextResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
AsyncCallerContext.h
Aws::LexRuntimeService::Model::DeleteSessionOutcomeCallable
std::future< DeleteSessionOutcome > DeleteSessionOutcomeCallable
Definition: LexRuntimeServiceClient.h:70
AWS_LEXRUNTIMESERVICE_API
#define AWS_LEXRUNTIMESERVICE_API
Definition: LexRuntimeService_EXPORTS.h:28
Aws::LexRuntimeService::Model::DeleteSessionRequest
Definition: DeleteSessionRequest.h:22
PutSessionResult.h
Aws::LexRuntimeService::LexRuntimeServiceClient::LexRuntimeServiceClient
LexRuntimeServiceClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration=Aws::Client::ClientConfiguration())
LexRuntimeService_EXPORTS.h
Aws::LexRuntimeService::LexRuntimeServiceClient::PostContent
virtual Model::PostContentOutcome PostContent(const Model::PostContentRequest &request) const
Aws::LexRuntimeService::LexRuntimeServiceClient::DeleteSessionAsync
virtual void DeleteSessionAsync(const Model::DeleteSessionRequest &request, const DeleteSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::Client::ClientConfiguration
Definition: ClientConfiguration.h:53
Aws::LexRuntimeService::LexRuntimeServiceClient::PostContentAsync
virtual void PostContentAsync(const Model::PostContentRequest &request, const PostContentResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::LexRuntimeService::LexRuntimeServiceClient::PutSessionCallable
virtual Model::PutSessionOutcomeCallable PutSessionCallable(const Model::PutSessionRequest &request) const
Aws::LexRuntimeService::LexRuntimeServiceClient::~LexRuntimeServiceClient
virtual ~LexRuntimeServiceClient()
Aws::LexRuntimeService::Model::PutSessionOutcome
Aws::Utils::Outcome< PutSessionResult, LexRuntimeServiceError > PutSessionOutcome
Definition: LexRuntimeServiceClient.h:68
Aws::LexRuntimeService::PostTextResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::PostTextRequest &, const Model::PostTextOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PostTextResponseReceivedHandler
Definition: LexRuntimeServiceClient.h:82
Aws::Auth::AWSCredentials
Definition: AWSCredentials.h:19
Aws::LexRuntimeService::LexRuntimeServiceClient::DeleteSession
virtual Model::DeleteSessionOutcome DeleteSession(const Model::DeleteSessionRequest &request) const
DeleteSessionResult.h
LexRuntimeServiceErrors.h
Aws::LexRuntimeService::LexRuntimeServiceClient::LexRuntimeServiceClient
LexRuntimeServiceClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration=Aws::Client::ClientConfiguration())
Aws::LexRuntimeService::PutSessionResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::PutSessionRequest &, Model::PutSessionOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutSessionResponseReceivedHandler
Definition: LexRuntimeServiceClient.h:83
AWSString.h
Aws::Client::AWSJsonClient
Definition: AWSClient.h:338
Aws::LexRuntimeService::PostContentResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::PostContentRequest &, Model::PostContentOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PostContentResponseReceivedHandler
Definition: LexRuntimeServiceClient.h:81
Aws::LexRuntimeService::Model::PostContentOutcomeCallable
std::future< PostContentOutcome > PostContentOutcomeCallable
Definition: LexRuntimeServiceClient.h:72
GetSessionResult.h
Aws::LexRuntimeService::LexRuntimeServiceClient::GetSession
virtual Model::GetSessionOutcome GetSession(const Model::GetSessionRequest &request) const
Aws::LexRuntimeService::LexRuntimeServiceClient::PutSessionAsync
virtual void PutSessionAsync(const Model::PutSessionRequest &request, const PutSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::LexRuntimeService::Model::PostTextRequest
Definition: PostTextRequest.h:25
Aws::LexRuntimeService::Model::DeleteSessionOutcome
Aws::Utils::Outcome< DeleteSessionResult, LexRuntimeServiceError > DeleteSessionOutcome
Definition: LexRuntimeServiceClient.h:62
ClientConfiguration.h
Aws::LexRuntimeService::LexRuntimeServiceClient::PutSession
virtual Model::PutSessionOutcome PutSession(const Model::PutSessionRequest &request) const
Aws::LexRuntimeService::DeleteSessionResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::DeleteSessionRequest &, const Model::DeleteSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteSessionResponseReceivedHandler
Definition: LexRuntimeServiceClient.h:77
Aws::LexRuntimeService::Model::PostTextOutcomeCallable
std::future< PostTextOutcome > PostTextOutcomeCallable
Definition: LexRuntimeServiceClient.h:73
Aws
Definition: AccessManagementClient.h:15
PostContentResult.h
HttpTypes.h
Aws::LexRuntimeService::Model::PostContentRequest
Definition: PostContentRequest.h:23
Aws::Utils::Outcome
Definition: Outcome.h:26
Aws::LexRuntimeService::LexRuntimeServiceClient
Definition: LexRuntimeServiceClient.h:99
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::LexRuntimeService::GetSessionResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::GetSessionRequest &, const Model::GetSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetSessionResponseReceivedHandler
Definition: LexRuntimeServiceClient.h:80
AWSClient.h
Aws::LexRuntimeService::LexRuntimeServiceClient::PostText
virtual Model::PostTextOutcome PostText(const Model::PostTextRequest &request) const
Aws::LexRuntimeService::Model::GetSessionOutcomeCallable
std::future< GetSessionOutcome > GetSessionOutcomeCallable
Definition: LexRuntimeServiceClient.h:71
Aws::LexRuntimeService::LexRuntimeServiceClient::LexRuntimeServiceClient
LexRuntimeServiceClient(const Aws::Client::ClientConfiguration &clientConfiguration=Aws::Client::ClientConfiguration())
Aws::LexRuntimeService::Model::PutSessionOutcomeCallable
std::future< PutSessionOutcome > PutSessionOutcomeCallable
Definition: LexRuntimeServiceClient.h:74
Aws::LexRuntimeService::LexRuntimeServiceClient::GetSessionAsync
virtual void GetSessionAsync(const Model::GetSessionRequest &request, const GetSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Aws::LexRuntimeService::Model::PostTextOutcome
Aws::Utils::Outcome< PostTextResult, LexRuntimeServiceError > PostTextOutcome
Definition: LexRuntimeServiceClient.h:67
JsonSerializer.h
Aws::LexRuntimeService::Model::GetSessionOutcome
Aws::Utils::Outcome< GetSessionResult, LexRuntimeServiceError > GetSessionOutcome
Definition: LexRuntimeServiceClient.h:65