AWS SDK for C++

AWS SDK for C++ Version 1.11.787

Loading...
Searching...
No Matches
SendMessageHandler.h
1
6#pragma once
7#include <aws/core/client/AWSError.h>
8#include <aws/core/utils/HashingUtils.h>
9#include <aws/core/utils/event/EventStreamHandler.h>
10#include <aws/devops-agent/DevOpsAgentErrors.h>
11#include <aws/devops-agent/DevOpsAgent_EXPORTS.h>
12#include <aws/devops-agent/model/SendMessageContentBlockDeltaEvent.h>
13#include <aws/devops-agent/model/SendMessageContentBlockStartEvent.h>
14#include <aws/devops-agent/model/SendMessageContentBlockStopEvent.h>
15#include <aws/devops-agent/model/SendMessageInitialResponse.h>
16#include <aws/devops-agent/model/SendMessageResponseCompletedEvent.h>
17#include <aws/devops-agent/model/SendMessageResponseCreatedEvent.h>
18#include <aws/devops-agent/model/SendMessageResponseFailedEvent.h>
19#include <aws/devops-agent/model/SendMessageResponseInProgressEvent.h>
20#include <aws/devops-agent/model/SendMessageSummaryEvent.h>
21
22namespace Aws {
23namespace DevOpsAgent {
24namespace Model {
31 SUMMARY,
37};
38
40 typedef std::function<void(const SendMessageInitialResponse&)> SendMessageInitialResponseCallback;
41 typedef std::function<void(const SendMessageInitialResponse&, const Utils::Event::InitialResponseType)>
42 SendMessageInitialResponseCallbackEx;
43 typedef std::function<void(const SendMessageResponseCreatedEvent&)> SendMessageResponseCreatedEventCallback;
44 typedef std::function<void(const SendMessageResponseInProgressEvent&)> SendMessageResponseInProgressEventCallback;
45 typedef std::function<void(const SendMessageResponseCompletedEvent&)> SendMessageResponseCompletedEventCallback;
46 typedef std::function<void(const SendMessageResponseFailedEvent&)> SendMessageResponseFailedEventCallback;
47 typedef std::function<void(const SendMessageSummaryEvent&)> SendMessageSummaryEventCallback;
48 typedef std::function<void()> SendMessageHeartbeatEventCallback;
49 typedef std::function<void(const SendMessageContentBlockStartEvent&)> SendMessageContentBlockStartEventCallback;
50 typedef std::function<void(const SendMessageContentBlockDeltaEvent&)> SendMessageContentBlockDeltaEventCallback;
51 typedef std::function<void(const SendMessageContentBlockStopEvent&)> SendMessageContentBlockStopEventCallback;
52 typedef std::function<void(const Aws::Client::AWSError<DevOpsAgentErrors>& error)> ErrorCallback;
53
54 public:
55 AWS_DEVOPSAGENT_API SendMessageHandler();
56 AWS_DEVOPSAGENT_API SendMessageHandler& operator=(const SendMessageHandler&) = default;
57 AWS_DEVOPSAGENT_API SendMessageHandler(const SendMessageHandler&) = default;
58
59 AWS_DEVOPSAGENT_API virtual void OnEvent() override;
60
62
68 inline void SetInitialResponseCallbackEx(const SendMessageInitialResponseCallbackEx& callback) { m_onInitialResponse = callback; }
72 inline void SetInitialResponseCallback(const SendMessageInitialResponseCallback& noArgCallback) {
73 m_onInitialResponse = [noArgCallback](const SendMessageInitialResponse& rs, const Utils::Event::InitialResponseType) {
74 return noArgCallback(rs);
75 };
76 }
78 inline void SetSendMessageResponseCreatedEventCallback(const SendMessageResponseCreatedEventCallback& callback) {
79 m_onSendMessageResponseCreatedEvent = callback;
80 }
81 inline void SetSendMessageResponseInProgressEventCallback(const SendMessageResponseInProgressEventCallback& callback) {
82 m_onSendMessageResponseInProgressEvent = callback;
83 }
84 inline void SetSendMessageResponseCompletedEventCallback(const SendMessageResponseCompletedEventCallback& callback) {
85 m_onSendMessageResponseCompletedEvent = callback;
86 }
87 inline void SetSendMessageResponseFailedEventCallback(const SendMessageResponseFailedEventCallback& callback) {
88 m_onSendMessageResponseFailedEvent = callback;
89 }
90 inline void SetSendMessageSummaryEventCallback(const SendMessageSummaryEventCallback& callback) {
91 m_onSendMessageSummaryEvent = callback;
92 }
93 inline void SetSendMessageHeartbeatEventCallback(const SendMessageHeartbeatEventCallback& callback) {
94 m_onSendMessageHeartbeatEvent = callback;
95 }
96 inline void SetSendMessageContentBlockStartEventCallback(const SendMessageContentBlockStartEventCallback& callback) {
97 m_onSendMessageContentBlockStartEvent = callback;
98 }
99 inline void SetSendMessageContentBlockDeltaEventCallback(const SendMessageContentBlockDeltaEventCallback& callback) {
100 m_onSendMessageContentBlockDeltaEvent = callback;
101 }
102 inline void SetSendMessageContentBlockStopEventCallback(const SendMessageContentBlockStopEventCallback& callback) {
103 m_onSendMessageContentBlockStopEvent = callback;
104 }
105 inline void SetOnErrorCallback(const ErrorCallback& callback) { m_onError = callback; }
106
107 inline SendMessageInitialResponseCallbackEx& GetInitialResponseCallbackEx() { return m_onInitialResponse; }
108
109 private:
110 AWS_DEVOPSAGENT_API void HandleEventInMessage();
111 AWS_DEVOPSAGENT_API void HandleErrorInMessage();
112 AWS_DEVOPSAGENT_API void MarshallError(const Aws::String& errorCode, const Aws::String& errorMessage);
113
114 SendMessageInitialResponseCallbackEx m_onInitialResponse;
115 SendMessageResponseCreatedEventCallback m_onSendMessageResponseCreatedEvent;
116 SendMessageResponseInProgressEventCallback m_onSendMessageResponseInProgressEvent;
117 SendMessageResponseCompletedEventCallback m_onSendMessageResponseCompletedEvent;
118 SendMessageResponseFailedEventCallback m_onSendMessageResponseFailedEvent;
119 SendMessageSummaryEventCallback m_onSendMessageSummaryEvent;
120 SendMessageHeartbeatEventCallback m_onSendMessageHeartbeatEvent;
121 SendMessageContentBlockStartEventCallback m_onSendMessageContentBlockStartEvent;
122 SendMessageContentBlockDeltaEventCallback m_onSendMessageContentBlockDeltaEvent;
123 SendMessageContentBlockStopEventCallback m_onSendMessageContentBlockStopEvent;
124 ErrorCallback m_onError;
125};
126
127namespace SendMessageEventMapper {
129
131} // namespace SendMessageEventMapper
132} // namespace Model
133} // namespace DevOpsAgent
134} // namespace Aws
void SetSendMessageHeartbeatEventCallback(const SendMessageHeartbeatEventCallback &callback)
void SetSendMessageResponseFailedEventCallback(const SendMessageResponseFailedEventCallback &callback)
void SetInitialResponseCallbackEx(const SendMessageInitialResponseCallbackEx &callback)
AWS_DEVOPSAGENT_API SendMessageHandler & operator=(const SendMessageHandler &)=default
void SetSendMessageContentBlockDeltaEventCallback(const SendMessageContentBlockDeltaEventCallback &callback)
AWS_DEVOPSAGENT_API SendMessageHandler(const SendMessageHandler &)=default
void SetSendMessageSummaryEventCallback(const SendMessageSummaryEventCallback &callback)
void SetSendMessageContentBlockStartEventCallback(const SendMessageContentBlockStartEventCallback &callback)
void SetInitialResponseCallback(const SendMessageInitialResponseCallback &noArgCallback)
void SetOnErrorCallback(const ErrorCallback &callback)
void SetSendMessageContentBlockStopEventCallback(const SendMessageContentBlockStopEventCallback &callback)
SendMessageInitialResponseCallbackEx & GetInitialResponseCallbackEx()
void SetSendMessageResponseInProgressEventCallback(const SendMessageResponseInProgressEventCallback &callback)
virtual AWS_DEVOPSAGENT_API void OnEvent() override
void SetSendMessageResponseCompletedEventCallback(const SendMessageResponseCompletedEventCallback &callback)
void SetSendMessageResponseCreatedEventCallback(const SendMessageResponseCreatedEventCallback &callback)
AWS_DEVOPSAGENT_API Aws::String GetNameForSendMessageEventType(SendMessageEventType value)
AWS_DEVOPSAGENT_API SendMessageEventType GetSendMessageEventTypeForName(const Aws::String &name)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String