AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
InvokeInlineAgentHandler.h
1
6#pragma once
7#include <aws/bedrock-agent-runtime/BedrockAgentRuntimeErrors.h>
8#include <aws/bedrock-agent-runtime/BedrockAgentRuntime_EXPORTS.h>
9#include <aws/bedrock-agent-runtime/model/InlineAgentFilePart.h>
10#include <aws/bedrock-agent-runtime/model/InlineAgentPayloadPart.h>
11#include <aws/bedrock-agent-runtime/model/InlineAgentReturnControlPayload.h>
12#include <aws/bedrock-agent-runtime/model/InlineAgentTracePart.h>
13#include <aws/bedrock-agent-runtime/model/InvokeInlineAgentInitialResponse.h>
14#include <aws/core/client/AWSError.h>
15#include <aws/core/utils/HashingUtils.h>
16#include <aws/core/utils/event/EventStreamHandler.h>
17
18namespace Aws {
19namespace BedrockAgentRuntime {
20namespace Model {
22
24 typedef std::function<void(const InvokeInlineAgentInitialResponse&)> InvokeInlineAgentInitialResponseCallback;
26 InvokeInlineAgentInitialResponseCallbackEx;
27 typedef std::function<void(const InlineAgentPayloadPart&)> InlineAgentPayloadPartCallback;
28 typedef std::function<void(const InlineAgentFilePart&)> InlineAgentFilePartCallback;
29 typedef std::function<void(const InlineAgentReturnControlPayload&)> InlineAgentReturnControlPayloadCallback;
30 typedef std::function<void(const InlineAgentTracePart&)> InlineAgentTracePartCallback;
31 typedef std::function<void(const Aws::Client::AWSError<BedrockAgentRuntimeErrors>& error)> ErrorCallback;
32
33 public:
34 AWS_BEDROCKAGENTRUNTIME_API InvokeInlineAgentHandler();
35 AWS_BEDROCKAGENTRUNTIME_API InvokeInlineAgentHandler& operator=(const InvokeInlineAgentHandler&) = default;
36 AWS_BEDROCKAGENTRUNTIME_API InvokeInlineAgentHandler(const InvokeInlineAgentHandler&) = default;
37
38 AWS_BEDROCKAGENTRUNTIME_API virtual void OnEvent() override;
39
41
47 inline void SetInitialResponseCallbackEx(const InvokeInlineAgentInitialResponseCallbackEx& callback) { m_onInitialResponse = callback; }
51 inline void SetInitialResponseCallback(const InvokeInlineAgentInitialResponseCallback& noArgCallback) {
53 return noArgCallback(rs);
54 };
55 }
57 inline void SetInlineAgentPayloadPartCallback(const InlineAgentPayloadPartCallback& callback) { m_onInlineAgentPayloadPart = callback; }
58 inline void SetInlineAgentFilePartCallback(const InlineAgentFilePartCallback& callback) { m_onInlineAgentFilePart = callback; }
59 inline void SetInlineAgentReturnControlPayloadCallback(const InlineAgentReturnControlPayloadCallback& callback) {
60 m_onInlineAgentReturnControlPayload = callback;
61 }
62 inline void SetInlineAgentTracePartCallback(const InlineAgentTracePartCallback& callback) { m_onInlineAgentTracePart = callback; }
63 inline void SetOnErrorCallback(const ErrorCallback& callback) { m_onError = callback; }
64
65 inline InvokeInlineAgentInitialResponseCallbackEx& GetInitialResponseCallbackEx() { return m_onInitialResponse; }
66
67 private:
68 AWS_BEDROCKAGENTRUNTIME_API void HandleEventInMessage();
69 AWS_BEDROCKAGENTRUNTIME_API void HandleErrorInMessage();
70 AWS_BEDROCKAGENTRUNTIME_API void MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage);
71
72 InvokeInlineAgentInitialResponseCallbackEx m_onInitialResponse;
73 InlineAgentPayloadPartCallback m_onInlineAgentPayloadPart;
74 InlineAgentFilePartCallback m_onInlineAgentFilePart;
75 InlineAgentReturnControlPayloadCallback m_onInlineAgentReturnControlPayload;
76 InlineAgentTracePartCallback m_onInlineAgentTracePart;
77 ErrorCallback m_onError;
78};
79
80namespace InvokeInlineAgentEventMapper {
82
84} // namespace InvokeInlineAgentEventMapper
85} // namespace Model
86} // namespace BedrockAgentRuntime
87} // namespace Aws
void SetInlineAgentReturnControlPayloadCallback(const InlineAgentReturnControlPayloadCallback &callback)
AWS_BEDROCKAGENTRUNTIME_API InvokeInlineAgentHandler & operator=(const InvokeInlineAgentHandler &)=default
void SetInitialResponseCallbackEx(const InvokeInlineAgentInitialResponseCallbackEx &callback)
void SetInlineAgentFilePartCallback(const InlineAgentFilePartCallback &callback)
void SetInitialResponseCallback(const InvokeInlineAgentInitialResponseCallback &noArgCallback)
AWS_BEDROCKAGENTRUNTIME_API InvokeInlineAgentHandler(const InvokeInlineAgentHandler &)=default
void SetInlineAgentTracePartCallback(const InlineAgentTracePartCallback &callback)
void SetInlineAgentPayloadPartCallback(const InlineAgentPayloadPartCallback &callback)
virtual AWS_BEDROCKAGENTRUNTIME_API void OnEvent() override
InvokeInlineAgentInitialResponseCallbackEx & GetInitialResponseCallbackEx()
AWS_BEDROCKAGENTRUNTIME_API Aws::String GetNameForInvokeInlineAgentEventType(InvokeInlineAgentEventType value)
AWS_BEDROCKAGENTRUNTIME_API InvokeInlineAgentEventType GetInvokeInlineAgentEventTypeForName(const Aws::String &name)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String