AWS SDK for C++

AWS SDK for C++ Version 1.11.610

Loading...
Searching...
No Matches
Message.h
1
6#pragma once
7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/bedrock-runtime/model/ConversationRole.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/bedrock-runtime/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 BedrockRuntime
24{
25namespace Model
26{
27
37 class Message
38 {
39 public:
40 AWS_BEDROCKRUNTIME_API Message() = default;
41 AWS_BEDROCKRUNTIME_API Message(Aws::Utils::Json::JsonView jsonValue);
42 AWS_BEDROCKRUNTIME_API Message& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
50 inline ConversationRole GetRole() const { return m_role; }
51 inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; }
52 inline void SetRole(ConversationRole value) { m_roleHasBeenSet = true; m_role = value; }
53 inline Message& WithRole(ConversationRole value) { SetRole(value); return *this;}
55
57
68 inline const Aws::Vector<ContentBlock>& GetContent() const { return m_content; }
69 inline bool ContentHasBeenSet() const { return m_contentHasBeenSet; }
70 template<typename ContentT = Aws::Vector<ContentBlock>>
71 void SetContent(ContentT&& value) { m_contentHasBeenSet = true; m_content = std::forward<ContentT>(value); }
72 template<typename ContentT = Aws::Vector<ContentBlock>>
73 Message& WithContent(ContentT&& value) { SetContent(std::forward<ContentT>(value)); return *this;}
74 template<typename ContentT = ContentBlock>
75 Message& AddContent(ContentT&& value) { m_contentHasBeenSet = true; m_content.emplace_back(std::forward<ContentT>(value)); return *this; }
77 private:
78
80 bool m_roleHasBeenSet = false;
81
83 bool m_contentHasBeenSet = false;
84 };
85
86} // namespace Model
87} // namespace BedrockRuntime
88} // namespace Aws
const Aws::Vector< ContentBlock > & GetContent() const
Definition Message.h:68
AWS_BEDROCKRUNTIME_API Message()=default
Message & AddContent(ContentT &&value)
Definition Message.h:75
ConversationRole GetRole() const
Definition Message.h:50
AWS_BEDROCKRUNTIME_API Message & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetContent(ContentT &&value)
Definition Message.h:71
AWS_BEDROCKRUNTIME_API Message(Aws::Utils::Json::JsonView jsonValue)
Message & WithContent(ContentT &&value)
Definition Message.h:73
void SetRole(ConversationRole value)
Definition Message.h:52
AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const
Message & WithRole(ConversationRole value)
Definition Message.h:53
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue