AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
LexRuntimeServiceClient.h
1
6#pragma once
7#include <aws/lex/LexRuntimeService_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/lex/LexRuntimeServiceServiceClientModel.h>
13
14namespace Aws
15{
16namespace LexRuntimeService
17{
31 class AWS_LEXRUNTIMESERVICE_API LexRuntimeServiceClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods<LexRuntimeServiceClient>
32 {
33 public:
35 static const char* GetServiceName();
36 static const char* GetAllocationTag();
37
40
46 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider = nullptr);
47
53 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider = nullptr,
55
60 LexRuntimeServiceClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
61 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider = nullptr,
63
64
65 /* Legacy constructors due deprecation */
71
77 const Aws::Client::ClientConfiguration& clientConfiguration);
78
83 LexRuntimeServiceClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
84 const Aws::Client::ClientConfiguration& clientConfiguration);
85
86 /* End of legacy constructors due deprecation */
88
96
100 template<typename DeleteSessionRequestT = Model::DeleteSessionRequest>
101 Model::DeleteSessionOutcomeCallable DeleteSessionCallable(const DeleteSessionRequestT& request) const
102 {
103 return SubmitCallable(&LexRuntimeServiceClient::DeleteSession, request);
104 }
105
109 template<typename DeleteSessionRequestT = Model::DeleteSessionRequest>
110 void DeleteSessionAsync(const DeleteSessionRequestT& request, const DeleteSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
111 {
112 return SubmitAsync(&LexRuntimeServiceClient::DeleteSession, request, handler, context);
113 }
114
122
126 template<typename GetSessionRequestT = Model::GetSessionRequest>
127 Model::GetSessionOutcomeCallable GetSessionCallable(const GetSessionRequestT& request) const
128 {
129 return SubmitCallable(&LexRuntimeServiceClient::GetSession, request);
130 }
131
135 template<typename GetSessionRequestT = Model::GetSessionRequest>
136 void GetSessionAsync(const GetSessionRequestT& request, const GetSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
137 {
138 return SubmitAsync(&LexRuntimeServiceClient::GetSession, request, handler, context);
139 }
140
185
189 template<typename PostContentRequestT = Model::PostContentRequest>
190 Model::PostContentOutcomeCallable PostContentCallable(const PostContentRequestT& request) const
191 {
192 return SubmitCallable(&LexRuntimeServiceClient::PostContent, request);
193 }
194
198 template<typename PostContentRequestT = Model::PostContentRequest>
199 void PostContentAsync(const PostContentRequestT& request, const PostContentResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
200 {
201 return SubmitAsync(&LexRuntimeServiceClient::PostContent, request, handler, context);
202 }
203
245
249 template<typename PostTextRequestT = Model::PostTextRequest>
250 Model::PostTextOutcomeCallable PostTextCallable(const PostTextRequestT& request) const
251 {
252 return SubmitCallable(&LexRuntimeServiceClient::PostText, request);
253 }
254
258 template<typename PostTextRequestT = Model::PostTextRequest>
259 void PostTextAsync(const PostTextRequestT& request, const PostTextResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
260 {
261 return SubmitAsync(&LexRuntimeServiceClient::PostText, request, handler, context);
262 }
263
274
278 template<typename PutSessionRequestT = Model::PutSessionRequest>
279 Model::PutSessionOutcomeCallable PutSessionCallable(const PutSessionRequestT& request) const
280 {
281 return SubmitCallable(&LexRuntimeServiceClient::PutSession, request);
282 }
283
287 template<typename PutSessionRequestT = Model::PutSessionRequest>
288 void PutSessionAsync(const PutSessionRequestT& request, const PutSessionResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const
289 {
290 return SubmitAsync(&LexRuntimeServiceClient::PutSession, request, handler, context);
291 }
292
293
294 void OverrideEndpoint(const Aws::String& endpoint);
295 std::shared_ptr<LexRuntimeServiceEndpointProviderBase>& accessEndpointProvider();
296 private:
298 void init(const LexRuntimeServiceClientConfiguration& clientConfiguration);
299
300 LexRuntimeServiceClientConfiguration m_clientConfiguration;
301 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> m_endpointProvider;
302 };
303
304} // namespace LexRuntimeService
305} // namespace Aws
Model::PutSessionOutcomeCallable PutSessionCallable(const PutSessionRequestT &request) const
virtual Model::PostTextOutcome PostText(const Model::PostTextRequest &request) const
Model::GetSessionOutcomeCallable GetSessionCallable(const GetSessionRequestT &request) const
Model::DeleteSessionOutcomeCallable DeleteSessionCallable(const DeleteSessionRequestT &request) const
LexRuntimeServiceClient(const Aws::LexRuntimeService::LexRuntimeServiceClientConfiguration &clientConfiguration=Aws::LexRuntimeService::LexRuntimeServiceClientConfiguration(), std::shared_ptr< LexRuntimeServiceEndpointProviderBase > endpointProvider=nullptr)
Model::PostContentOutcomeCallable PostContentCallable(const PostContentRequestT &request) const
LexRuntimeServiceClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< LexRuntimeServiceEndpointProviderBase > endpointProvider=nullptr, const Aws::LexRuntimeService::LexRuntimeServiceClientConfiguration &clientConfiguration=Aws::LexRuntimeService::LexRuntimeServiceClientConfiguration())
void GetSessionAsync(const GetSessionRequestT &request, const GetSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
LexRuntimeServiceClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
std::shared_ptr< LexRuntimeServiceEndpointProviderBase > & accessEndpointProvider()
LexRuntimeServiceClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< LexRuntimeServiceEndpointProviderBase > endpointProvider=nullptr, const Aws::LexRuntimeService::LexRuntimeServiceClientConfiguration &clientConfiguration=Aws::LexRuntimeService::LexRuntimeServiceClientConfiguration())
void PutSessionAsync(const PutSessionRequestT &request, const PutSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
LexRuntimeServiceEndpointProvider EndpointProviderType
LexRuntimeServiceClient(const Aws::Client::ClientConfiguration &clientConfiguration)
void OverrideEndpoint(const Aws::String &endpoint)
virtual Model::GetSessionOutcome GetSession(const Model::GetSessionRequest &request) const
virtual Model::PutSessionOutcome PutSession(const Model::PutSessionRequest &request) const
void PostTextAsync(const PostTextRequestT &request, const PostTextResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
LexRuntimeServiceClientConfiguration ClientConfigurationType
virtual Model::DeleteSessionOutcome DeleteSession(const Model::DeleteSessionRequest &request) const
Model::PostTextOutcomeCallable PostTextCallable(const PostTextRequestT &request) const
void PostContentAsync(const PostContentRequestT &request, const PostContentResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::PostContentOutcome PostContent(const Model::PostContentRequest &request) const
LexRuntimeServiceClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
void DeleteSessionAsync(const DeleteSessionRequestT &request, const DeleteSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::future< PutSessionOutcome > PutSessionOutcomeCallable
std::future< PostTextOutcome > PostTextOutcomeCallable
std::future< DeleteSessionOutcome > DeleteSessionOutcomeCallable
std::future< PostContentOutcome > PostContentOutcomeCallable
std::future< GetSessionOutcome > GetSessionOutcomeCallable
std::function< void(const LexRuntimeServiceClient *, const Model::DeleteSessionRequest &, const Model::DeleteSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > DeleteSessionResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::PostTextRequest &, const Model::PostTextOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PostTextResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::PutSessionRequest &, Model::PutSessionOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PutSessionResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::GetSessionRequest &, const Model::GetSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > GetSessionResponseReceivedHandler
std::function< void(const LexRuntimeServiceClient *, const Model::PostContentRequest &, Model::PostContentOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &) > PostContentResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String