7#include <aws/qbusiness/QBusiness_EXPORTS.h>
8#include <aws/qbusiness/QBusinessRequest.h>
9#include <aws/qbusiness/model/ChatHandler.h>
10#include <aws/core/utils/event/EventStreamDecoder.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14#include <aws/qbusiness/model/ChatInputStream.h>
16#include <aws/core/utils/UUID.h>
47 AWS_QBUSINESS_API std::shared_ptr<Aws::IOStream>
GetBody()
const override;
78 template<
typename ApplicationIdT = Aws::String>
80 template<
typename ApplicationIdT = Aws::String>
90 template<
typename UserIdT = Aws::String>
91 void SetUserId(
UserIdT&& value) { m_userIdHasBeenSet =
true; m_userId = std::forward<UserIdT>(value); }
92 template<
typename UserIdT = Aws::String>
102 template<
typename UserGroupsT = Aws::Vector<Aws::String>>
104 template<
typename UserGroupsT = Aws::Vector<Aws::String>>
106 template<
typename UserGroupsT = Aws::String>
116 template<
typename ConversationIdT = Aws::String>
118 template<
typename ConversationIdT = Aws::String>
129 template<
typename ParentMessageIdT = Aws::String>
131 template<
typename ParentMessageIdT = Aws::String>
141 template<
typename ClientTokenT = Aws::String>
143 template<
typename ClientTokenT = Aws::String>
151 AWS_QBUSINESS_API std::shared_ptr<ChatInputStream>
GetInputStream()
const {
return m_inputStream; }
152 AWS_QBUSINESS_API
void SetInputStream(
const std::shared_ptr<ChatInputStream>& value) { m_inputStreamHasBeenSet =
true; m_inputStream = value; }
159 bool m_applicationIdHasBeenSet =
false;
162 bool m_userIdHasBeenSet =
false;
165 bool m_userGroupsHasBeenSet =
false;
168 bool m_conversationIdHasBeenSet =
false;
171 bool m_parentMessageIdHasBeenSet =
false;
174 bool m_clientTokenHasBeenSet =
true;
176 std::shared_ptr<ChatInputStream> m_inputStream;
177 bool m_inputStreamHasBeenSet =
false;
178 ChatHandler m_handler;
ChatRequest & AddUserGroups(UserGroupsT &&value)
bool ConversationIdHasBeenSet() const
ChatRequest & WithEventStreamHandler(const ChatHandler &value)
bool UserIdHasBeenSet() const
ChatRequest & WithParentMessageId(ParentMessageIdT &&value)
const Aws::String & GetUserId() const
const Aws::Vector< Aws::String > & GetUserGroups() const
ChatHandler & GetEventStreamHandler()
bool ApplicationIdHasBeenSet() const
ChatRequest & WithApplicationId(ApplicationIdT &&value)
AWS_QBUSINESS_API std::shared_ptr< ChatInputStream > GetInputStream() const
void SetConversationId(ConversationIdT &&value)
AWS_QBUSINESS_API void SetInputStream(const std::shared_ptr< ChatInputStream > &value)
const Aws::String & GetConversationId() const
const Aws::String & GetParentMessageId() const
AWS_QBUSINESS_API std::shared_ptr< Aws::IOStream > GetBody() const override
bool ParentMessageIdHasBeenSet() const
bool UserGroupsHasBeenSet() const
void SetApplicationId(ApplicationIdT &&value)
const Aws::String & GetApplicationId() const
Aws::Utils::Event::EventStreamDecoder & GetEventStreamDecoder()
virtual bool IsEventStreamRequest() const override
ChatRequest & WithClientToken(ClientTokenT &&value)
AWS_QBUSINESS_API void AddQueryStringParameters(Aws::Http::URI &uri) const override
virtual bool HasEventStreamResponse() const override
virtual const char * GetServiceRequestName() const override
const Aws::String & GetClientToken() const
ChatRequest & WithUserGroups(UserGroupsT &&value)
AWS_QBUSINESS_API ChatRequest()=default
AWS_QBUSINESS_API ChatRequest & WithInputStream(const std::shared_ptr< ChatInputStream > &value)
void SetClientToken(ClientTokenT &&value)
void SetEventStreamHandler(const ChatHandler &value)
void SetParentMessageId(ParentMessageIdT &&value)
bool ClientTokenHasBeenSet() const
AWS_QBUSINESS_API Aws::String SerializePayload() const override
ChatRequest & WithConversationId(ConversationIdT &&value)
ChatRequest & WithUserId(UserIdT &&value)
void SetUserId(UserIdT &&value)
void SetUserGroups(UserGroupsT &&value)
void ResetEventStreamHandler(EventStreamHandler *handler)
static Aws::Utils::UUID PseudoRandomUUID()
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector