AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
Message.h
1
6#pragma once
7#include <aws/bedrock-agent/BedrockAgent_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/bedrock-agent/model/ConversationRole.h>
10#include <aws/bedrock-agent/model/ContentBlock.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace BedrockAgent
24{
25namespace Model
26{
27
35 class Message
36 {
37 public:
38 AWS_BEDROCKAGENT_API Message() = default;
39 AWS_BEDROCKAGENT_API Message(Aws::Utils::Json::JsonView jsonValue);
40 AWS_BEDROCKAGENT_API Message& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::Vector<ContentBlock>& GetContent() const { return m_content; }
49 inline bool ContentHasBeenSet() const { return m_contentHasBeenSet; }
50 template<typename ContentT = Aws::Vector<ContentBlock>>
51 void SetContent(ContentT&& value) { m_contentHasBeenSet = true; m_content = std::forward<ContentT>(value); }
52 template<typename ContentT = Aws::Vector<ContentBlock>>
53 Message& WithContent(ContentT&& value) { SetContent(std::forward<ContentT>(value)); return *this;}
54 template<typename ContentT = ContentBlock>
55 Message& AddContent(ContentT&& value) { m_contentHasBeenSet = true; m_content.emplace_back(std::forward<ContentT>(value)); return *this; }
57
59
62 inline ConversationRole GetRole() const { return m_role; }
63 inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; }
64 inline void SetRole(ConversationRole value) { m_roleHasBeenSet = true; m_role = value; }
65 inline Message& WithRole(ConversationRole value) { SetRole(value); return *this;}
67 private:
68
70 bool m_contentHasBeenSet = false;
71
73 bool m_roleHasBeenSet = false;
74 };
75
76} // namespace Model
77} // namespace BedrockAgent
78} // namespace Aws
AWS_BEDROCKAGENT_API Message & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< ContentBlock > & GetContent() const
Definition Message.h:48
Message & WithRole(ConversationRole value)
Definition Message.h:65
Message & AddContent(ContentT &&value)
Definition Message.h:55
void SetContent(ContentT &&value)
Definition Message.h:51
AWS_BEDROCKAGENT_API Message()=default
AWS_BEDROCKAGENT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetRole(ConversationRole value)
Definition Message.h:64
AWS_BEDROCKAGENT_API Message(Aws::Utils::Json::JsonView jsonValue)
Message & WithContent(ContentT &&value)
Definition Message.h:53
ConversationRole GetRole() const
Definition Message.h:62
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue