AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
S3DataSourceConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/kendra/Kendra_EXPORTS.h>
10#include <aws/kendra/model/AccessControlListConfiguration.h>
11#include <aws/kendra/model/DocumentsMetadataConfiguration.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace kendra {
23namespace Model {
24
42 public:
43 AWS_KENDRA_API S3DataSourceConfiguration() = default;
46 AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const;
47
49
52 inline const Aws::String& GetBucketName() const { return m_bucketName; }
53 inline bool BucketNameHasBeenSet() const { return m_bucketNameHasBeenSet; }
54 template <typename BucketNameT = Aws::String>
55 void SetBucketName(BucketNameT&& value) {
56 m_bucketNameHasBeenSet = true;
57 m_bucketName = std::forward<BucketNameT>(value);
58 }
59 template <typename BucketNameT = Aws::String>
61 SetBucketName(std::forward<BucketNameT>(value));
62 return *this;
63 }
65
67
71 inline const Aws::Vector<Aws::String>& GetInclusionPrefixes() const { return m_inclusionPrefixes; }
72 inline bool InclusionPrefixesHasBeenSet() const { return m_inclusionPrefixesHasBeenSet; }
73 template <typename InclusionPrefixesT = Aws::Vector<Aws::String>>
74 void SetInclusionPrefixes(InclusionPrefixesT&& value) {
75 m_inclusionPrefixesHasBeenSet = true;
76 m_inclusionPrefixes = std::forward<InclusionPrefixesT>(value);
77 }
78 template <typename InclusionPrefixesT = Aws::Vector<Aws::String>>
79 S3DataSourceConfiguration& WithInclusionPrefixes(InclusionPrefixesT&& value) {
80 SetInclusionPrefixes(std::forward<InclusionPrefixesT>(value));
81 return *this;
82 }
83 template <typename InclusionPrefixesT = Aws::String>
84 S3DataSourceConfiguration& AddInclusionPrefixes(InclusionPrefixesT&& value) {
85 m_inclusionPrefixesHasBeenSet = true;
86 m_inclusionPrefixes.emplace_back(std::forward<InclusionPrefixesT>(value));
87 return *this;
88 }
90
92
114 inline const Aws::Vector<Aws::String>& GetInclusionPatterns() const { return m_inclusionPatterns; }
115 inline bool InclusionPatternsHasBeenSet() const { return m_inclusionPatternsHasBeenSet; }
116 template <typename InclusionPatternsT = Aws::Vector<Aws::String>>
117 void SetInclusionPatterns(InclusionPatternsT&& value) {
118 m_inclusionPatternsHasBeenSet = true;
119 m_inclusionPatterns = std::forward<InclusionPatternsT>(value);
120 }
121 template <typename InclusionPatternsT = Aws::Vector<Aws::String>>
123 SetInclusionPatterns(std::forward<InclusionPatternsT>(value));
124 return *this;
125 }
126 template <typename InclusionPatternsT = Aws::String>
127 S3DataSourceConfiguration& AddInclusionPatterns(InclusionPatternsT&& value) {
128 m_inclusionPatternsHasBeenSet = true;
129 m_inclusionPatterns.emplace_back(std::forward<InclusionPatternsT>(value));
130 return *this;
131 }
133
135
157 inline const Aws::Vector<Aws::String>& GetExclusionPatterns() const { return m_exclusionPatterns; }
158 inline bool ExclusionPatternsHasBeenSet() const { return m_exclusionPatternsHasBeenSet; }
159 template <typename ExclusionPatternsT = Aws::Vector<Aws::String>>
160 void SetExclusionPatterns(ExclusionPatternsT&& value) {
161 m_exclusionPatternsHasBeenSet = true;
162 m_exclusionPatterns = std::forward<ExclusionPatternsT>(value);
163 }
164 template <typename ExclusionPatternsT = Aws::Vector<Aws::String>>
166 SetExclusionPatterns(std::forward<ExclusionPatternsT>(value));
167 return *this;
168 }
169 template <typename ExclusionPatternsT = Aws::String>
170 S3DataSourceConfiguration& AddExclusionPatterns(ExclusionPatternsT&& value) {
171 m_exclusionPatternsHasBeenSet = true;
172 m_exclusionPatterns.emplace_back(std::forward<ExclusionPatternsT>(value));
173 return *this;
174 }
176
178
179 inline const DocumentsMetadataConfiguration& GetDocumentsMetadataConfiguration() const { return m_documentsMetadataConfiguration; }
180 inline bool DocumentsMetadataConfigurationHasBeenSet() const { return m_documentsMetadataConfigurationHasBeenSet; }
181 template <typename DocumentsMetadataConfigurationT = DocumentsMetadataConfiguration>
182 void SetDocumentsMetadataConfiguration(DocumentsMetadataConfigurationT&& value) {
183 m_documentsMetadataConfigurationHasBeenSet = true;
184 m_documentsMetadataConfiguration = std::forward<DocumentsMetadataConfigurationT>(value);
185 }
186 template <typename DocumentsMetadataConfigurationT = DocumentsMetadataConfiguration>
187 S3DataSourceConfiguration& WithDocumentsMetadataConfiguration(DocumentsMetadataConfigurationT&& value) {
188 SetDocumentsMetadataConfiguration(std::forward<DocumentsMetadataConfigurationT>(value));
189 return *this;
190 }
192
194
200 inline const AccessControlListConfiguration& GetAccessControlListConfiguration() const { return m_accessControlListConfiguration; }
201 inline bool AccessControlListConfigurationHasBeenSet() const { return m_accessControlListConfigurationHasBeenSet; }
202 template <typename AccessControlListConfigurationT = AccessControlListConfiguration>
203 void SetAccessControlListConfiguration(AccessControlListConfigurationT&& value) {
204 m_accessControlListConfigurationHasBeenSet = true;
205 m_accessControlListConfiguration = std::forward<AccessControlListConfigurationT>(value);
206 }
207 template <typename AccessControlListConfigurationT = AccessControlListConfiguration>
208 S3DataSourceConfiguration& WithAccessControlListConfiguration(AccessControlListConfigurationT&& value) {
209 SetAccessControlListConfiguration(std::forward<AccessControlListConfigurationT>(value));
210 return *this;
211 }
213 private:
214 Aws::String m_bucketName;
215
216 Aws::Vector<Aws::String> m_inclusionPrefixes;
217
218 Aws::Vector<Aws::String> m_inclusionPatterns;
219
220 Aws::Vector<Aws::String> m_exclusionPatterns;
221
222 DocumentsMetadataConfiguration m_documentsMetadataConfiguration;
223
224 AccessControlListConfiguration m_accessControlListConfiguration;
225 bool m_bucketNameHasBeenSet = false;
226 bool m_inclusionPrefixesHasBeenSet = false;
227 bool m_inclusionPatternsHasBeenSet = false;
228 bool m_exclusionPatternsHasBeenSet = false;
229 bool m_documentsMetadataConfigurationHasBeenSet = false;
230 bool m_accessControlListConfigurationHasBeenSet = false;
231};
232
233} // namespace Model
234} // namespace kendra
235} // namespace Aws
AWS_KENDRA_API S3DataSourceConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
S3DataSourceConfiguration & AddInclusionPatterns(InclusionPatternsT &&value)
S3DataSourceConfiguration & WithBucketName(BucketNameT &&value)
const DocumentsMetadataConfiguration & GetDocumentsMetadataConfiguration() const
S3DataSourceConfiguration & WithInclusionPrefixes(InclusionPrefixesT &&value)
S3DataSourceConfiguration & AddExclusionPatterns(ExclusionPatternsT &&value)
AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const
void SetDocumentsMetadataConfiguration(DocumentsMetadataConfigurationT &&value)
void SetAccessControlListConfiguration(AccessControlListConfigurationT &&value)
const Aws::Vector< Aws::String > & GetExclusionPatterns() const
const Aws::Vector< Aws::String > & GetInclusionPatterns() const
AWS_KENDRA_API S3DataSourceConfiguration(Aws::Utils::Json::JsonView jsonValue)
S3DataSourceConfiguration & WithInclusionPatterns(InclusionPatternsT &&value)
S3DataSourceConfiguration & AddInclusionPrefixes(InclusionPrefixesT &&value)
const Aws::Vector< Aws::String > & GetInclusionPrefixes() const
S3DataSourceConfiguration & WithExclusionPatterns(ExclusionPatternsT &&value)
S3DataSourceConfiguration & WithDocumentsMetadataConfiguration(DocumentsMetadataConfigurationT &&value)
AWS_KENDRA_API S3DataSourceConfiguration()=default
const AccessControlListConfiguration & GetAccessControlListConfiguration() const
S3DataSourceConfiguration & WithAccessControlListConfiguration(AccessControlListConfigurationT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue