AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
Message.h
1
6#pragma once
7#include <aws/bedrock-agent/BedrockAgent_EXPORTS.h>
8#include <aws/bedrock-agent/model/ContentBlock.h>
9#include <aws/bedrock-agent/model/ConversationRole.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace BedrockAgent {
22namespace Model {
23
31class Message {
32 public:
33 AWS_BEDROCKAGENT_API Message() = default;
36 AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline ConversationRole GetRole() const { return m_role; }
43 inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; }
44 inline void SetRole(ConversationRole value) {
45 m_roleHasBeenSet = true;
46 m_role = value;
47 }
49 SetRole(value);
50 return *this;
51 }
53
55
58 inline const Aws::Vector<ContentBlock>& GetContent() const { return m_content; }
59 inline bool ContentHasBeenSet() const { return m_contentHasBeenSet; }
60 template <typename ContentT = Aws::Vector<ContentBlock>>
61 void SetContent(ContentT&& value) {
62 m_contentHasBeenSet = true;
63 m_content = std::forward<ContentT>(value);
64 }
65 template <typename ContentT = Aws::Vector<ContentBlock>>
67 SetContent(std::forward<ContentT>(value));
68 return *this;
69 }
70 template <typename ContentT = ContentBlock>
72 m_contentHasBeenSet = true;
73 m_content.emplace_back(std::forward<ContentT>(value));
74 return *this;
75 }
77 private:
79
81 bool m_roleHasBeenSet = false;
82 bool m_contentHasBeenSet = false;
83};
84
85} // namespace Model
86} // namespace BedrockAgent
87} // namespace Aws
AWS_BEDROCKAGENT_API Message & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< ContentBlock > & GetContent() const
Definition Message.h:58
Message & WithRole(ConversationRole value)
Definition Message.h:48
Message & AddContent(ContentT &&value)
Definition Message.h:71
void SetContent(ContentT &&value)
Definition Message.h:61
AWS_BEDROCKAGENT_API Message()=default
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetRole(ConversationRole value)
Definition Message.h:44
AWS_BEDROCKAGENT_API Message(Aws::Utils::Json::JsonView jsonValue)
Message & WithContent(ContentT &&value)
Definition Message.h:66
ConversationRole GetRole() const
Definition Message.h:42
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue