AWS SDK for C++

AWS SDK for C++ Version 1.11.810

Loading...
Searching...
No Matches
ChatInputStream.h
1
6#pragma once
7#include <aws/core/utils/event/EventStream.h>
8#include <aws/core/utils/json/JsonSerializer.h>
9#include <aws/core/utils/stream/HttpWriteDataStreamBuf.h>
10#include <aws/qbusiness/QBusiness_EXPORTS.h>
11#include <aws/qbusiness/model/ActionExecutionEvent.h>
12#include <aws/qbusiness/model/AttachmentInputEvent.h>
13#include <aws/qbusiness/model/AuthChallengeResponseEvent.h>
14#include <aws/qbusiness/model/ConfigurationEvent.h>
15#include <aws/qbusiness/model/EndOfInputEvent.h>
16#include <aws/qbusiness/model/TextInputEvent.h>
17
18#include <utility>
19
20namespace Aws {
21namespace QBusiness {
22namespace Model {
23
31 public:
32 ChatInputStream() = default;
33 explicit ChatInputStream(std::shared_ptr<Aws::Utils::Stream::HttpWriteDataStreamBuf> streambuf)
34 : Aws::Utils::Event::EventEncoderStream(std::move(streambuf)) {}
37 msg.InsertEventHeader(":message-type", Aws::String("event"));
38 msg.InsertEventHeader(":event-type", Aws::String("configurationEvent"));
39 msg.InsertEventHeader(":content-type", Aws::String("application/json"));
41 WriteEvent(msg);
42 return *this;
43 }
46 msg.InsertEventHeader(":message-type", Aws::String("event"));
47 msg.InsertEventHeader(":event-type", Aws::String("textEvent"));
48 msg.InsertEventHeader(":content-type", Aws::String("text/plain"));
50 WriteEvent(msg);
51 return *this;
52 }
55 msg.InsertEventHeader(":message-type", Aws::String("event"));
56 msg.InsertEventHeader(":event-type", Aws::String("attachmentEvent"));
57 msg.InsertEventHeader(":content-type", Aws::String("application/json"));
59 WriteEvent(msg);
60 return *this;
61 }
64 msg.InsertEventHeader(":message-type", Aws::String("event"));
65 msg.InsertEventHeader(":event-type", Aws::String("actionExecutionEvent"));
66 msg.InsertEventHeader(":content-type", Aws::String("application/json"));
68 WriteEvent(msg);
69 return *this;
70 }
73 msg.InsertEventHeader(":message-type", Aws::String("event"));
74 msg.InsertEventHeader(":event-type", Aws::String("endOfInputEvent"));
75 AWS_UNREFERENCED_PARAM(value);
76 WriteEvent(msg);
77 return *this;
78 }
81 msg.InsertEventHeader(":message-type", Aws::String("event"));
82 msg.InsertEventHeader(":event-type", Aws::String("authChallengeResponseEvent"));
83 msg.InsertEventHeader(":content-type", Aws::String("application/json"));
85 WriteEvent(msg);
86 return *this;
87 }
88};
89
90} // namespace Model
91} // namespace QBusiness
92} // namespace Aws
AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const
ChatInputStream & WriteConfigurationEvent(const ConfigurationEvent &value)
ChatInputStream & WriteTextInputEvent(const TextInputEvent &value)
ChatInputStream & WriteAuthChallengeResponseEvent(const AuthChallengeResponseEvent &value)
ChatInputStream & WriteAttachmentInputEvent(const AttachmentInputEvent &value)
ChatInputStream & WriteActionExecutionEvent(const ActionExecutionEvent &value)
ChatInputStream & WriteEndOfInputEvent(const EndOfInputEvent &value)
ChatInputStream(std::shared_ptr< Aws::Utils::Stream::HttpWriteDataStreamBuf > streambuf)
AWS_QBUSINESS_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::String & GetUserMessage() const
void WriteEventPayload(const unsigned char *data, size_t length)
void InsertEventHeader(const Aws::String &headerName, const EventHeaderValue &eventHeaderValue)
Aws::String WriteCompact(bool treatAsObject=true) const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String