AWS SDK for C++

AWS SDK for C++ Version 1.11.780

Loading...
Searching...
No Matches
LexRuntimeServiceClient.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/lex/LexRuntimeServicePaginationBase.h>
12#include <aws/lex/LexRuntimeServiceServiceClientModel.h>
13#include <aws/lex/LexRuntimeServiceWaiter.h>
14#include <aws/lex/LexRuntimeService_EXPORTS.h>
15
16namespace Aws {
17namespace LexRuntimeService {
31class AWS_LEXRUNTIMESERVICE_API LexRuntimeServiceClient : public Aws::Client::AWSJsonClient,
32 public Aws::Client::ClientWithAsyncTemplateMethods<LexRuntimeServiceClient>,
33 public LexRuntimeServicePaginationBase<LexRuntimeServiceClient>,
34 public LexRuntimeServiceWaiter<LexRuntimeServiceClient> {
35 public:
37 static const char* GetServiceName();
38 static const char* GetAllocationTag();
39
42
49 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider = nullptr);
50
56 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider = nullptr,
59
64 LexRuntimeServiceClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
65 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider = nullptr,
68
69 /* Legacy constructors due deprecation */
75
81
86 LexRuntimeServiceClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
87 const Aws::Client::ClientConfiguration& clientConfiguration);
88
89 /* End of legacy constructors due deprecation */
91
99
103 template <typename DeleteSessionRequestT = Model::DeleteSessionRequest>
104 Model::DeleteSessionOutcomeCallable DeleteSessionCallable(const DeleteSessionRequestT& request) const {
105 return SubmitCallable(&LexRuntimeServiceClient::DeleteSession, request);
106 }
107
112 template <typename DeleteSessionRequestT = Model::DeleteSessionRequest>
113 void DeleteSessionAsync(const DeleteSessionRequestT& request, const DeleteSessionResponseReceivedHandler& handler,
114 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
115 return SubmitAsync(&LexRuntimeServiceClient::DeleteSession, request, handler, context);
116 }
117
125
129 template <typename GetSessionRequestT = Model::GetSessionRequest>
130 Model::GetSessionOutcomeCallable GetSessionCallable(const GetSessionRequestT& request) const {
131 return SubmitCallable(&LexRuntimeServiceClient::GetSession, request);
132 }
133
138 template <typename GetSessionRequestT = Model::GetSessionRequest>
139 void GetSessionAsync(const GetSessionRequestT& request, const GetSessionResponseReceivedHandler& handler,
140 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
141 return SubmitAsync(&LexRuntimeServiceClient::GetSession, request, handler, context);
142 }
143
188
192 template <typename PostContentRequestT = Model::PostContentRequest>
193 Model::PostContentOutcomeCallable PostContentCallable(const PostContentRequestT& request) const {
194 return SubmitCallable(&LexRuntimeServiceClient::PostContent, request);
195 }
196
201 template <typename PostContentRequestT = Model::PostContentRequest>
202 void PostContentAsync(const PostContentRequestT& request, const PostContentResponseReceivedHandler& handler,
203 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
204 return SubmitAsync(&LexRuntimeServiceClient::PostContent, request, handler, context);
205 }
206
248
252 template <typename PostTextRequestT = Model::PostTextRequest>
253 Model::PostTextOutcomeCallable PostTextCallable(const PostTextRequestT& request) const {
254 return SubmitCallable(&LexRuntimeServiceClient::PostText, request);
255 }
256
261 template <typename PostTextRequestT = Model::PostTextRequest>
262 void PostTextAsync(const PostTextRequestT& request, const PostTextResponseReceivedHandler& handler,
263 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
264 return SubmitAsync(&LexRuntimeServiceClient::PostText, request, handler, context);
265 }
266
277
281 template <typename PutSessionRequestT = Model::PutSessionRequest>
282 Model::PutSessionOutcomeCallable PutSessionCallable(const PutSessionRequestT& request) const {
283 return SubmitCallable(&LexRuntimeServiceClient::PutSession, request);
284 }
285
290 template <typename PutSessionRequestT = Model::PutSessionRequest>
291 void PutSessionAsync(const PutSessionRequestT& request, const PutSessionResponseReceivedHandler& handler,
292 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
293 return SubmitAsync(&LexRuntimeServiceClient::PutSession, request, handler, context);
294 }
295
296 virtual void OverrideEndpoint(const Aws::String& endpoint);
297 virtual std::shared_ptr<LexRuntimeServiceEndpointProviderBase>& accessEndpointProvider();
298
299 private:
301 void init(const LexRuntimeServiceClientConfiguration& clientConfiguration);
302
304
305 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request,
306 const std::function<void(Aws::Endpoint::ResolveEndpointOutcome&)>& resolveUri,
307 Aws::Http::HttpMethod httpMethod) const;
308
309 LexRuntimeServiceClientConfiguration m_clientConfiguration;
310 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> m_endpointProvider;
311};
312
313} // namespace LexRuntimeService
314} // 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)
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
virtual std::shared_ptr< LexRuntimeServiceEndpointProviderBase > & accessEndpointProvider()
LexRuntimeServiceClient(const Aws::Client::ClientConfiguration &clientConfiguration)
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
virtual void OverrideEndpoint(const Aws::String &endpoint)
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::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::function< void(const LexRuntimeServiceClient *, const Model::DeleteSessionRequest &, const Model::DeleteSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteSessionResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String