AWS SDK for C++

AWS SDK for C++ Version 1.11.788

Loading...
Searching...
No Matches
LexRuntimeV2Client.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/lexv2-runtime/LexRuntimeV2PaginationBase.h>
12#include <aws/lexv2-runtime/LexRuntimeV2ServiceClientModel.h>
13#include <aws/lexv2-runtime/LexRuntimeV2Waiter.h>
14#include <aws/lexv2-runtime/LexRuntimeV2_EXPORTS.h>
15
16namespace Aws {
17namespace LexRuntimeV2 {
22class AWS_LEXRUNTIMEV2_API LexRuntimeV2Client : public Aws::Client::AWSJsonClient,
23 public Aws::Client::ClientWithAsyncTemplateMethods<LexRuntimeV2Client>,
24 public LexRuntimeV2PaginationBase<LexRuntimeV2Client>,
25 public LexRuntimeV2Waiter<LexRuntimeV2Client> {
26 public:
28 static const char* GetServiceName();
29 static const char* GetAllocationTag();
30
33
40 std::shared_ptr<LexRuntimeV2EndpointProviderBase> endpointProvider = nullptr);
41
47 const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<LexRuntimeV2EndpointProviderBase> endpointProvider = nullptr,
49
55 const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
56 std::shared_ptr<LexRuntimeV2EndpointProviderBase> endpointProvider = nullptr,
58
59 /* Legacy constructors due deprecation */
65
70 LexRuntimeV2Client(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
71
76 LexRuntimeV2Client(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
77 const Aws::Client::ClientConfiguration& clientConfiguration);
78
79 /* End of legacy constructors due deprecation */
81
97
101 template <typename DeleteSessionRequestT = Model::DeleteSessionRequest>
102 Model::DeleteSessionOutcomeCallable DeleteSessionCallable(const DeleteSessionRequestT& request) const {
103 return SubmitCallable(&LexRuntimeV2Client::DeleteSession, request);
104 }
105
110 template <typename DeleteSessionRequestT = Model::DeleteSessionRequest>
111 void DeleteSessionAsync(const DeleteSessionRequestT& request, const DeleteSessionResponseReceivedHandler& handler,
112 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
113 return SubmitAsync(&LexRuntimeV2Client::DeleteSession, request, handler, context);
114 }
115
128
132 template <typename GetSessionRequestT = Model::GetSessionRequest>
133 Model::GetSessionOutcomeCallable GetSessionCallable(const GetSessionRequestT& request) const {
134 return SubmitCallable(&LexRuntimeV2Client::GetSession, request);
135 }
136
141 template <typename GetSessionRequestT = Model::GetSessionRequest>
142 void GetSessionAsync(const GetSessionRequestT& request, const GetSessionResponseReceivedHandler& handler,
143 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
144 return SubmitAsync(&LexRuntimeV2Client::GetSession, request, handler, context);
145 }
146
155
159 template <typename PutSessionRequestT = Model::PutSessionRequest>
160 Model::PutSessionOutcomeCallable PutSessionCallable(const PutSessionRequestT& request) const {
161 return SubmitCallable(&LexRuntimeV2Client::PutSession, request);
162 }
163
168 template <typename PutSessionRequestT = Model::PutSessionRequest>
169 void PutSessionAsync(const PutSessionRequestT& request, const PutSessionResponseReceivedHandler& handler,
170 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
171 return SubmitAsync(&LexRuntimeV2Client::PutSession, request, handler, context);
172 }
173
198
202 template <typename RecognizeTextRequestT = Model::RecognizeTextRequest>
203 Model::RecognizeTextOutcomeCallable RecognizeTextCallable(const RecognizeTextRequestT& request) const {
204 return SubmitCallable(&LexRuntimeV2Client::RecognizeText, request);
205 }
206
211 template <typename RecognizeTextRequestT = Model::RecognizeTextRequest>
212 void RecognizeTextAsync(const RecognizeTextRequestT& request, const RecognizeTextResponseReceivedHandler& handler,
213 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
214 return SubmitAsync(&LexRuntimeV2Client::RecognizeText, request, handler, context);
215 }
216
249
254 template <typename RecognizeUtteranceRequestT = Model::RecognizeUtteranceRequest>
255 Model::RecognizeUtteranceOutcomeCallable RecognizeUtteranceCallable(const RecognizeUtteranceRequestT& request) const {
256 return SubmitCallable(&LexRuntimeV2Client::RecognizeUtterance, request);
257 }
258
263 template <typename RecognizeUtteranceRequestT = Model::RecognizeUtteranceRequest>
264 void RecognizeUtteranceAsync(const RecognizeUtteranceRequestT& request, const RecognizeUtteranceResponseReceivedHandler& handler,
265 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
266 return SubmitAsync(&LexRuntimeV2Client::RecognizeUtterance, request, handler, context);
267 }
268
311 const StartConversationStreamReadyHandler& streamReadyHandler,
313 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& handlerContext = nullptr) const;
314
315 virtual void OverrideEndpoint(const Aws::String& endpoint);
316 virtual std::shared_ptr<LexRuntimeV2EndpointProviderBase>& accessEndpointProvider();
317
318 private:
320 void init(const LexRuntimeV2ClientConfiguration& clientConfiguration);
321
323
324 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request,
325 const std::function<void(Aws::Endpoint::ResolveEndpointOutcome&)>& resolveUri,
326 Aws::Http::HttpMethod httpMethod) const;
327
328 LexRuntimeV2ClientConfiguration m_clientConfiguration;
329 std::shared_ptr<LexRuntimeV2EndpointProviderBase> m_endpointProvider;
330};
331
332} // namespace LexRuntimeV2
333} // namespace Aws
Model::DeleteSessionOutcomeCallable DeleteSessionCallable(const DeleteSessionRequestT &request) const
LexRuntimeV2Client(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::GetSessionOutcome GetSession(const Model::GetSessionRequest &request) const
LexRuntimeV2Client(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
void PutSessionAsync(const PutSessionRequestT &request, const PutSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetSessionAsync(const GetSessionRequestT &request, const GetSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::RecognizeTextOutcome RecognizeText(const Model::RecognizeTextRequest &request) const
void RecognizeTextAsync(const RecognizeTextRequestT &request, const RecognizeTextResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
static const char * GetAllocationTag()
static const char * GetServiceName()
Model::RecognizeUtteranceOutcomeCallable RecognizeUtteranceCallable(const RecognizeUtteranceRequestT &request) const
void RecognizeUtteranceAsync(const RecognizeUtteranceRequestT &request, const RecognizeUtteranceResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
LexRuntimeV2Client(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< LexRuntimeV2EndpointProviderBase > endpointProvider=nullptr, const Aws::LexRuntimeV2::LexRuntimeV2ClientConfiguration &clientConfiguration=Aws::LexRuntimeV2::LexRuntimeV2ClientConfiguration())
virtual Model::PutSessionOutcome PutSession(const Model::PutSessionRequest &request) const
void DeleteSessionAsync(const DeleteSessionRequestT &request, const DeleteSessionResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Model::PutSessionOutcomeCallable PutSessionCallable(const PutSessionRequestT &request) const
Model::RecognizeTextOutcomeCallable RecognizeTextCallable(const RecognizeTextRequestT &request) const
LexRuntimeV2ClientConfiguration ClientConfigurationType
virtual Model::RecognizeUtteranceOutcome RecognizeUtterance(const Model::RecognizeUtteranceRequest &request) const
LexRuntimeV2EndpointProvider EndpointProviderType
LexRuntimeV2Client(const Aws::LexRuntimeV2::LexRuntimeV2ClientConfiguration &clientConfiguration=Aws::LexRuntimeV2::LexRuntimeV2ClientConfiguration(), std::shared_ptr< LexRuntimeV2EndpointProviderBase > endpointProvider=nullptr)
virtual void OverrideEndpoint(const Aws::String &endpoint)
virtual void StartConversationAsync(Model::StartConversationRequest &request, const StartConversationStreamReadyHandler &streamReadyHandler, const StartConversationResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &handlerContext=nullptr) const
LexRuntimeV2Client(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::GetSessionOutcomeCallable GetSessionCallable(const GetSessionRequestT &request) const
virtual Model::DeleteSessionOutcome DeleteSession(const Model::DeleteSessionRequest &request) const
LexRuntimeV2Client(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< LexRuntimeV2EndpointProviderBase > endpointProvider=nullptr, const Aws::LexRuntimeV2::LexRuntimeV2ClientConfiguration &clientConfiguration=Aws::LexRuntimeV2::LexRuntimeV2ClientConfiguration())
virtual std::shared_ptr< LexRuntimeV2EndpointProviderBase > & accessEndpointProvider()
std::future< GetSessionOutcome > GetSessionOutcomeCallable
std::future< RecognizeUtteranceOutcome > RecognizeUtteranceOutcomeCallable
std::future< DeleteSessionOutcome > DeleteSessionOutcomeCallable
std::future< RecognizeTextOutcome > RecognizeTextOutcomeCallable
std::future< PutSessionOutcome > PutSessionOutcomeCallable
std::function< void(const LexRuntimeV2Client *, const Model::DeleteSessionRequest &, const Model::DeleteSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteSessionResponseReceivedHandler
std::function< void(const LexRuntimeV2Client *, const Model::RecognizeUtteranceRequest &, Model::RecognizeUtteranceOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> RecognizeUtteranceResponseReceivedHandler
std::function< void(const LexRuntimeV2Client *, const Model::GetSessionRequest &, const Model::GetSessionOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetSessionResponseReceivedHandler
std::function< void(const LexRuntimeV2Client *, const Model::RecognizeTextRequest &, const Model::RecognizeTextOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> RecognizeTextResponseReceivedHandler
std::function< void(const LexRuntimeV2Client *, const Model::StartConversationRequest &, const Model::StartConversationOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> StartConversationResponseReceivedHandler
std::function< void(Model::StartConversationRequestEventStream &)> StartConversationStreamReadyHandler
std::function< void(const LexRuntimeV2Client *, const Model::PutSessionRequest &, Model::PutSessionOutcome, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutSessionResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String