AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
Document.h
1
6#pragma once
7#include <aws/kendra/Kendra_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/Array.h>
10#include <aws/kendra/model/S3Path.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/kendra/model/ContentType.h>
13#include <aws/kendra/model/DocumentAttribute.h>
14#include <aws/kendra/model/Principal.h>
15#include <aws/kendra/model/HierarchicalPrincipal.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace kendra
29{
30namespace Model
31{
32
39 {
40 public:
41 AWS_KENDRA_API Document() = default;
42 AWS_KENDRA_API Document(Aws::Utils::Json::JsonView jsonValue);
43 AWS_KENDRA_API Document& operator=(Aws::Utils::Json::JsonView jsonValue);
44 AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
56 inline const Aws::String& GetId() const { return m_id; }
57 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
58 template<typename IdT = Aws::String>
59 void SetId(IdT&& value) { m_idHasBeenSet = true; m_id = std::forward<IdT>(value); }
60 template<typename IdT = Aws::String>
61 Document& WithId(IdT&& value) { SetId(std::forward<IdT>(value)); return *this;}
63
65
68 inline const Aws::String& GetTitle() const { return m_title; }
69 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
70 template<typename TitleT = Aws::String>
71 void SetTitle(TitleT&& value) { m_titleHasBeenSet = true; m_title = std::forward<TitleT>(value); }
72 template<typename TitleT = Aws::String>
73 Document& WithTitle(TitleT&& value) { SetTitle(std::forward<TitleT>(value)); return *this;}
75
77
84 inline const Aws::Utils::ByteBuffer& GetBlob() const { return m_blob; }
85 inline bool BlobHasBeenSet() const { return m_blobHasBeenSet; }
86 template<typename BlobT = Aws::Utils::ByteBuffer>
87 void SetBlob(BlobT&& value) { m_blobHasBeenSet = true; m_blob = std::forward<BlobT>(value); }
88 template<typename BlobT = Aws::Utils::ByteBuffer>
89 Document& WithBlob(BlobT&& value) { SetBlob(std::forward<BlobT>(value)); return *this;}
91
93
94 inline const S3Path& GetS3Path() const { return m_s3Path; }
95 inline bool S3PathHasBeenSet() const { return m_s3PathHasBeenSet; }
96 template<typename S3PathT = S3Path>
97 void SetS3Path(S3PathT&& value) { m_s3PathHasBeenSet = true; m_s3Path = std::forward<S3PathT>(value); }
98 template<typename S3PathT = S3Path>
99 Document& WithS3Path(S3PathT&& value) { SetS3Path(std::forward<S3PathT>(value)); return *this;}
101
103
112 inline const Aws::Vector<DocumentAttribute>& GetAttributes() const { return m_attributes; }
113 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
114 template<typename AttributesT = Aws::Vector<DocumentAttribute>>
115 void SetAttributes(AttributesT&& value) { m_attributesHasBeenSet = true; m_attributes = std::forward<AttributesT>(value); }
116 template<typename AttributesT = Aws::Vector<DocumentAttribute>>
117 Document& WithAttributes(AttributesT&& value) { SetAttributes(std::forward<AttributesT>(value)); return *this;}
118 template<typename AttributesT = DocumentAttribute>
119 Document& AddAttributes(AttributesT&& value) { m_attributesHasBeenSet = true; m_attributes.emplace_back(std::forward<AttributesT>(value)); return *this; }
121
123
128 inline const Aws::Vector<Principal>& GetAccessControlList() const { return m_accessControlList; }
129 inline bool AccessControlListHasBeenSet() const { return m_accessControlListHasBeenSet; }
130 template<typename AccessControlListT = Aws::Vector<Principal>>
131 void SetAccessControlList(AccessControlListT&& value) { m_accessControlListHasBeenSet = true; m_accessControlList = std::forward<AccessControlListT>(value); }
132 template<typename AccessControlListT = Aws::Vector<Principal>>
133 Document& WithAccessControlList(AccessControlListT&& value) { SetAccessControlList(std::forward<AccessControlListT>(value)); return *this;}
134 template<typename AccessControlListT = Principal>
135 Document& AddAccessControlList(AccessControlListT&& value) { m_accessControlListHasBeenSet = true; m_accessControlList.emplace_back(std::forward<AccessControlListT>(value)); return *this; }
137
139
145 inline const Aws::Vector<HierarchicalPrincipal>& GetHierarchicalAccessControlList() const { return m_hierarchicalAccessControlList; }
146 inline bool HierarchicalAccessControlListHasBeenSet() const { return m_hierarchicalAccessControlListHasBeenSet; }
147 template<typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
148 void SetHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { m_hierarchicalAccessControlListHasBeenSet = true; m_hierarchicalAccessControlList = std::forward<HierarchicalAccessControlListT>(value); }
149 template<typename HierarchicalAccessControlListT = Aws::Vector<HierarchicalPrincipal>>
150 Document& WithHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { SetHierarchicalAccessControlList(std::forward<HierarchicalAccessControlListT>(value)); return *this;}
151 template<typename HierarchicalAccessControlListT = HierarchicalPrincipal>
152 Document& AddHierarchicalAccessControlList(HierarchicalAccessControlListT&& value) { m_hierarchicalAccessControlListHasBeenSet = true; m_hierarchicalAccessControlList.emplace_back(std::forward<HierarchicalAccessControlListT>(value)); return *this; }
154
156
162 inline ContentType GetContentType() const { return m_contentType; }
163 inline bool ContentTypeHasBeenSet() const { return m_contentTypeHasBeenSet; }
164 inline void SetContentType(ContentType value) { m_contentTypeHasBeenSet = true; m_contentType = value; }
165 inline Document& WithContentType(ContentType value) { SetContentType(value); return *this;}
167
169
173 inline const Aws::String& GetAccessControlConfigurationId() const { return m_accessControlConfigurationId; }
174 inline bool AccessControlConfigurationIdHasBeenSet() const { return m_accessControlConfigurationIdHasBeenSet; }
175 template<typename AccessControlConfigurationIdT = Aws::String>
176 void SetAccessControlConfigurationId(AccessControlConfigurationIdT&& value) { m_accessControlConfigurationIdHasBeenSet = true; m_accessControlConfigurationId = std::forward<AccessControlConfigurationIdT>(value); }
177 template<typename AccessControlConfigurationIdT = Aws::String>
178 Document& WithAccessControlConfigurationId(AccessControlConfigurationIdT&& value) { SetAccessControlConfigurationId(std::forward<AccessControlConfigurationIdT>(value)); return *this;}
180 private:
181
182 Aws::String m_id;
183 bool m_idHasBeenSet = false;
184
185 Aws::String m_title;
186 bool m_titleHasBeenSet = false;
187
188 Aws::Utils::ByteBuffer m_blob{};
189 bool m_blobHasBeenSet = false;
190
191 S3Path m_s3Path;
192 bool m_s3PathHasBeenSet = false;
193
195 bool m_attributesHasBeenSet = false;
196
197 Aws::Vector<Principal> m_accessControlList;
198 bool m_accessControlListHasBeenSet = false;
199
200 Aws::Vector<HierarchicalPrincipal> m_hierarchicalAccessControlList;
201 bool m_hierarchicalAccessControlListHasBeenSet = false;
202
203 ContentType m_contentType{ContentType::NOT_SET};
204 bool m_contentTypeHasBeenSet = false;
205
206 Aws::String m_accessControlConfigurationId;
207 bool m_accessControlConfigurationIdHasBeenSet = false;
208 };
209
210} // namespace Model
211} // namespace kendra
212} // namespace Aws
AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const
bool TitleHasBeenSet() const
Definition Document.h:69
Document & WithId(IdT &&value)
Definition Document.h:61
bool BlobHasBeenSet() const
Definition Document.h:85
void SetId(IdT &&value)
Definition Document.h:59
Document & WithAttributes(AttributesT &&value)
Definition Document.h:117
void SetAccessControlList(AccessControlListT &&value)
Definition Document.h:131
Document & AddAccessControlList(AccessControlListT &&value)
Definition Document.h:135
void SetAttributes(AttributesT &&value)
Definition Document.h:115
Document & WithBlob(BlobT &&value)
Definition Document.h:89
bool S3PathHasBeenSet() const
Definition Document.h:95
Document & WithS3Path(S3PathT &&value)
Definition Document.h:99
Document & AddHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
Definition Document.h:152
Document & WithContentType(ContentType value)
Definition Document.h:165
const Aws::String & GetTitle() const
Definition Document.h:68
const Aws::String & GetAccessControlConfigurationId() const
Definition Document.h:173
ContentType GetContentType() const
Definition Document.h:162
bool AccessControlConfigurationIdHasBeenSet() const
Definition Document.h:174
const Aws::Vector< DocumentAttribute > & GetAttributes() const
Definition Document.h:112
void SetBlob(BlobT &&value)
Definition Document.h:87
Document & WithAccessControlConfigurationId(AccessControlConfigurationIdT &&value)
Definition Document.h:178
bool ContentTypeHasBeenSet() const
Definition Document.h:163
bool HierarchicalAccessControlListHasBeenSet() const
Definition Document.h:146
void SetHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
Definition Document.h:148
bool AttributesHasBeenSet() const
Definition Document.h:113
void SetAccessControlConfigurationId(AccessControlConfigurationIdT &&value)
Definition Document.h:176
Document & WithAccessControlList(AccessControlListT &&value)
Definition Document.h:133
Document & AddAttributes(AttributesT &&value)
Definition Document.h:119
void SetS3Path(S3PathT &&value)
Definition Document.h:97
const Aws::Vector< Principal > & GetAccessControlList() const
Definition Document.h:128
const Aws::String & GetId() const
Definition Document.h:56
Document & WithHierarchicalAccessControlList(HierarchicalAccessControlListT &&value)
Definition Document.h:150
AWS_KENDRA_API Document & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_KENDRA_API Document(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< HierarchicalPrincipal > & GetHierarchicalAccessControlList() const
Definition Document.h:145
Document & WithTitle(TitleT &&value)
Definition Document.h:73
AWS_KENDRA_API Document()=default
const Aws::Utils::ByteBuffer & GetBlob() const
Definition Document.h:84
void SetTitle(TitleT &&value)
Definition Document.h:71
bool AccessControlListHasBeenSet() const
Definition Document.h:129
void SetContentType(ContentType value)
Definition Document.h:164
const S3Path & GetS3Path() const
Definition Document.h:94
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue