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>
17namespace LexRuntimeService {
49 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider =
nullptr);
56 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider =
nullptr,
65 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> endpointProvider =
nullptr,
103 template <
typename DeleteSessionRequestT = Model::DeleteSessionRequest>
105 return SubmitCallable(&LexRuntimeServiceClient::DeleteSession, request);
112 template <
typename DeleteSessionRequestT = Model::DeleteSessionRequest>
114 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
115 return SubmitAsync(&LexRuntimeServiceClient::DeleteSession, request, handler, context);
129 template <
typename GetSessionRequestT = Model::GetSessionRequest>
131 return SubmitCallable(&LexRuntimeServiceClient::GetSession, request);
138 template <
typename GetSessionRequestT = Model::GetSessionRequest>
140 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
141 return SubmitAsync(&LexRuntimeServiceClient::GetSession, request, handler, context);
192 template <
typename PostContentRequestT = Model::PostContentRequest>
194 return SubmitCallable(&LexRuntimeServiceClient::PostContent, request);
201 template <
typename PostContentRequestT = Model::PostContentRequest>
203 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
204 return SubmitAsync(&LexRuntimeServiceClient::PostContent, request, handler, context);
252 template <
typename PostTextRequestT = Model::PostTextRequest>
254 return SubmitCallable(&LexRuntimeServiceClient::PostText, request);
261 template <
typename PostTextRequestT = Model::PostTextRequest>
263 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
264 return SubmitAsync(&LexRuntimeServiceClient::PostText, request, handler, context);
281 template <
typename PutSessionRequestT = Model::PutSessionRequest>
283 return SubmitCallable(&LexRuntimeServiceClient::PutSession, request);
290 template <
typename PutSessionRequestT = Model::PutSessionRequest>
292 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
293 return SubmitAsync(&LexRuntimeServiceClient::PutSession, request, handler, context);
310 std::shared_ptr<LexRuntimeServiceEndpointProviderBase> m_endpointProvider;
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())
static const char * GetServiceName()
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
Aws::Client::AWSJsonClient BASECLASS
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
virtual ~LexRuntimeServiceClient()
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)
static const char * GetAllocationTag()
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