AWS SDK for C++

AWS SDK for C++ Version 1.11.759

Loading...
Searching...
No Matches
InvokeAgentHandler.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/FilePart.h>
10#include <aws/bedrock-agent-runtime/model/InvokeAgentInitialResponse.h>
11#include <aws/bedrock-agent-runtime/model/PayloadPart.h>
12#include <aws/bedrock-agent-runtime/model/ReturnControlPayload.h>
13#include <aws/bedrock-agent-runtime/model/TracePart.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 InvokeAgentInitialResponse&)> InvokeAgentInitialResponseCallback;
25 typedef std::function<void(const InvokeAgentInitialResponse&, const Utils::Event::InitialResponseType)>
26 InvokeAgentInitialResponseCallbackEx;
27 typedef std::function<void(const PayloadPart&)> PayloadPartCallback;
28 typedef std::function<void(const FilePart&)> FilePartCallback;
29 typedef std::function<void(const ReturnControlPayload&)> ReturnControlPayloadCallback;
30 typedef std::function<void(const TracePart&)> TracePartCallback;
31 typedef std::function<void(const Aws::Client::AWSError<BedrockAgentRuntimeErrors>& error)> ErrorCallback;
32
33 public:
34 AWS_BEDROCKAGENTRUNTIME_API InvokeAgentHandler();
35 AWS_BEDROCKAGENTRUNTIME_API InvokeAgentHandler& operator=(const InvokeAgentHandler&) = default;
36 AWS_BEDROCKAGENTRUNTIME_API InvokeAgentHandler(const InvokeAgentHandler&) = default;
37
38 AWS_BEDROCKAGENTRUNTIME_API virtual void OnEvent() override;
39
41
47 inline void SetInitialResponseCallbackEx(const InvokeAgentInitialResponseCallbackEx& callback) { m_onInitialResponse = callback; }
51 inline void SetInitialResponseCallback(const InvokeAgentInitialResponseCallback& noArgCallback) {
53 return noArgCallback(rs);
54 };
55 }
57 inline void SetPayloadPartCallback(const PayloadPartCallback& callback) { m_onPayloadPart = callback; }
58 inline void SetFilePartCallback(const FilePartCallback& callback) { m_onFilePart = callback; }
59 inline void SetReturnControlPayloadCallback(const ReturnControlPayloadCallback& callback) { m_onReturnControlPayload = callback; }
60 inline void SetTracePartCallback(const TracePartCallback& callback) { m_onTracePart = callback; }
61 inline void SetOnErrorCallback(const ErrorCallback& callback) { m_onError = callback; }
62
63 inline InvokeAgentInitialResponseCallbackEx& GetInitialResponseCallbackEx() { return m_onInitialResponse; }
64
65 private:
66 AWS_BEDROCKAGENTRUNTIME_API void HandleEventInMessage();
67 AWS_BEDROCKAGENTRUNTIME_API void HandleErrorInMessage();
68 AWS_BEDROCKAGENTRUNTIME_API void MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage);
69
70 InvokeAgentInitialResponseCallbackEx m_onInitialResponse;
71 PayloadPartCallback m_onPayloadPart;
72 FilePartCallback m_onFilePart;
73 ReturnControlPayloadCallback m_onReturnControlPayload;
74 TracePartCallback m_onTracePart;
75 ErrorCallback m_onError;
76};
77
78namespace InvokeAgentEventMapper {
80
82} // namespace InvokeAgentEventMapper
83} // namespace Model
84} // namespace BedrockAgentRuntime
85} // namespace Aws
virtual AWS_BEDROCKAGENTRUNTIME_API void OnEvent() override
AWS_BEDROCKAGENTRUNTIME_API InvokeAgentHandler & operator=(const InvokeAgentHandler &)=default
void SetPayloadPartCallback(const PayloadPartCallback &callback)
void SetReturnControlPayloadCallback(const ReturnControlPayloadCallback &callback)
void SetFilePartCallback(const FilePartCallback &callback)
void SetOnErrorCallback(const ErrorCallback &callback)
InvokeAgentInitialResponseCallbackEx & GetInitialResponseCallbackEx()
void SetTracePartCallback(const TracePartCallback &callback)
void SetInitialResponseCallbackEx(const InvokeAgentInitialResponseCallbackEx &callback)
AWS_BEDROCKAGENTRUNTIME_API InvokeAgentHandler()
AWS_BEDROCKAGENTRUNTIME_API InvokeAgentHandler(const InvokeAgentHandler &)=default
void SetInitialResponseCallback(const InvokeAgentInitialResponseCallback &noArgCallback)
AWS_BEDROCKAGENTRUNTIME_API InvokeAgentEventType GetInvokeAgentEventTypeForName(const Aws::String &name)
AWS_BEDROCKAGENTRUNTIME_API Aws::String GetNameForInvokeAgentEventType(InvokeAgentEventType value)
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String