AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
InvokeEndpointWithResponseStreamHandler.h
1
6#pragma once
7#include <aws/core/utils/HashingUtils.h>
8#include <aws/core/utils/event/EventStreamHandler.h>
9#include <aws/core/client/AWSError.h>
10#include <aws/sagemaker-runtime/SageMakerRuntime_EXPORTS.h>
11#include <aws/sagemaker-runtime/SageMakerRuntimeErrors.h>
12
13#include <aws/sagemaker-runtime/model/InvokeEndpointWithResponseStreamInitialResponse.h>
14#include <aws/sagemaker-runtime/model/PayloadPart.h>
15
16namespace Aws
17{
18namespace SageMakerRuntime
19{
20namespace Model
21{
23 {
27 };
28
30 {
31 typedef std::function<void(const InvokeEndpointWithResponseStreamInitialResponse&)> InvokeEndpointWithResponseStreamInitialResponseCallback;
32 typedef std::function<void(const InvokeEndpointWithResponseStreamInitialResponse&, const Utils::Event::InitialResponseType)> InvokeEndpointWithResponseStreamInitialResponseCallbackEx;
33 typedef std::function<void(const PayloadPart&)> PayloadPartCallback;
34 typedef std::function<void(const Aws::Client::AWSError<SageMakerRuntimeErrors>& error)> ErrorCallback;
35
36 public:
37 AWS_SAGEMAKERRUNTIME_API InvokeEndpointWithResponseStreamHandler();
40
41 AWS_SAGEMAKERRUNTIME_API virtual void OnEvent() override;
42
44
50 inline void SetInitialResponseCallbackEx(const InvokeEndpointWithResponseStreamInitialResponseCallbackEx& callback) { m_onInitialResponse = callback; }
54 inline void SetInitialResponseCallback(const InvokeEndpointWithResponseStreamInitialResponseCallback& noArgCallback)
55 {
56 m_onInitialResponse = [noArgCallback](const InvokeEndpointWithResponseStreamInitialResponse& rs, const Utils::Event::InitialResponseType) { return noArgCallback(rs); };
57 }
59 inline void SetPayloadPartCallback(const PayloadPartCallback& callback) { m_onPayloadPart = callback; }
60 inline void SetOnErrorCallback(const ErrorCallback& callback) { m_onError = callback; }
61
62 inline InvokeEndpointWithResponseStreamInitialResponseCallbackEx& GetInitialResponseCallbackEx() { return m_onInitialResponse; }
63
64 private:
65 AWS_SAGEMAKERRUNTIME_API void HandleEventInMessage();
66 AWS_SAGEMAKERRUNTIME_API void HandleErrorInMessage();
67 AWS_SAGEMAKERRUNTIME_API void MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage);
68
69 InvokeEndpointWithResponseStreamInitialResponseCallbackEx m_onInitialResponse;
70 PayloadPartCallback m_onPayloadPart;
71 ErrorCallback m_onError;
72 };
73
74namespace InvokeEndpointWithResponseStreamEventMapper
75{
77
79} // namespace InvokeEndpointWithResponseStreamEventMapper
80} // namespace Model
81} // namespace SageMakerRuntime
82} // namespace Aws
void SetInitialResponseCallback(const InvokeEndpointWithResponseStreamInitialResponseCallback &noArgCallback)
AWS_SAGEMAKERRUNTIME_API InvokeEndpointWithResponseStreamHandler(const InvokeEndpointWithResponseStreamHandler &)=default
InvokeEndpointWithResponseStreamInitialResponseCallbackEx & GetInitialResponseCallbackEx()
void SetInitialResponseCallbackEx(const InvokeEndpointWithResponseStreamInitialResponseCallbackEx &callback)
AWS_SAGEMAKERRUNTIME_API InvokeEndpointWithResponseStreamHandler & operator=(const InvokeEndpointWithResponseStreamHandler &)=default
virtual AWS_SAGEMAKERRUNTIME_API void OnEvent() override
AWS_SAGEMAKERRUNTIME_API InvokeEndpointWithResponseStreamEventType GetInvokeEndpointWithResponseStreamEventTypeForName(const Aws::String &name)
AWS_SAGEMAKERRUNTIME_API Aws::String GetNameForInvokeEndpointWithResponseStreamEventType(InvokeEndpointWithResponseStreamEventType value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String