AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
WebCrawlerConfiguration.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/AuthenticationConfiguration.h>
11#include <aws/kendra/model/ProxyConfiguration.h>
12#include <aws/kendra/model/Urls.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace kendra {
24namespace Model {
25
33 public:
34 AWS_KENDRA_API WebCrawlerConfiguration() = default;
37 AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
53 inline const Urls& GetUrls() const { return m_urls; }
54 inline bool UrlsHasBeenSet() const { return m_urlsHasBeenSet; }
55 template <typename UrlsT = Urls>
56 void SetUrls(UrlsT&& value) {
57 m_urlsHasBeenSet = true;
58 m_urls = std::forward<UrlsT>(value);
59 }
60 template <typename UrlsT = Urls>
62 SetUrls(std::forward<UrlsT>(value));
63 return *this;
64 }
66
68
73 inline int GetCrawlDepth() const { return m_crawlDepth; }
74 inline bool CrawlDepthHasBeenSet() const { return m_crawlDepthHasBeenSet; }
75 inline void SetCrawlDepth(int value) {
76 m_crawlDepthHasBeenSet = true;
77 m_crawlDepth = value;
78 }
80 SetCrawlDepth(value);
81 return *this;
82 }
84
86
92 inline int GetMaxLinksPerPage() const { return m_maxLinksPerPage; }
93 inline bool MaxLinksPerPageHasBeenSet() const { return m_maxLinksPerPageHasBeenSet; }
94 inline void SetMaxLinksPerPage(int value) {
95 m_maxLinksPerPageHasBeenSet = true;
96 m_maxLinksPerPage = value;
97 }
99 SetMaxLinksPerPage(value);
100 return *this;
101 }
103
105
110 inline double GetMaxContentSizePerPageInMegaBytes() const { return m_maxContentSizePerPageInMegaBytes; }
111 inline bool MaxContentSizePerPageInMegaBytesHasBeenSet() const { return m_maxContentSizePerPageInMegaBytesHasBeenSet; }
112 inline void SetMaxContentSizePerPageInMegaBytes(double value) {
113 m_maxContentSizePerPageInMegaBytesHasBeenSet = true;
114 m_maxContentSizePerPageInMegaBytes = value;
115 }
118 return *this;
119 }
121
123
128 inline int GetMaxUrlsPerMinuteCrawlRate() const { return m_maxUrlsPerMinuteCrawlRate; }
129 inline bool MaxUrlsPerMinuteCrawlRateHasBeenSet() const { return m_maxUrlsPerMinuteCrawlRateHasBeenSet; }
130 inline void SetMaxUrlsPerMinuteCrawlRate(int value) {
131 m_maxUrlsPerMinuteCrawlRateHasBeenSet = true;
132 m_maxUrlsPerMinuteCrawlRate = value;
133 }
136 return *this;
137 }
139
141
148 inline const Aws::Vector<Aws::String>& GetUrlInclusionPatterns() const { return m_urlInclusionPatterns; }
149 inline bool UrlInclusionPatternsHasBeenSet() const { return m_urlInclusionPatternsHasBeenSet; }
150 template <typename UrlInclusionPatternsT = Aws::Vector<Aws::String>>
151 void SetUrlInclusionPatterns(UrlInclusionPatternsT&& value) {
152 m_urlInclusionPatternsHasBeenSet = true;
153 m_urlInclusionPatterns = std::forward<UrlInclusionPatternsT>(value);
154 }
155 template <typename UrlInclusionPatternsT = Aws::Vector<Aws::String>>
156 WebCrawlerConfiguration& WithUrlInclusionPatterns(UrlInclusionPatternsT&& value) {
157 SetUrlInclusionPatterns(std::forward<UrlInclusionPatternsT>(value));
158 return *this;
159 }
160 template <typename UrlInclusionPatternsT = Aws::String>
161 WebCrawlerConfiguration& AddUrlInclusionPatterns(UrlInclusionPatternsT&& value) {
162 m_urlInclusionPatternsHasBeenSet = true;
163 m_urlInclusionPatterns.emplace_back(std::forward<UrlInclusionPatternsT>(value));
164 return *this;
165 }
167
169
176 inline const Aws::Vector<Aws::String>& GetUrlExclusionPatterns() const { return m_urlExclusionPatterns; }
177 inline bool UrlExclusionPatternsHasBeenSet() const { return m_urlExclusionPatternsHasBeenSet; }
178 template <typename UrlExclusionPatternsT = Aws::Vector<Aws::String>>
179 void SetUrlExclusionPatterns(UrlExclusionPatternsT&& value) {
180 m_urlExclusionPatternsHasBeenSet = true;
181 m_urlExclusionPatterns = std::forward<UrlExclusionPatternsT>(value);
182 }
183 template <typename UrlExclusionPatternsT = Aws::Vector<Aws::String>>
184 WebCrawlerConfiguration& WithUrlExclusionPatterns(UrlExclusionPatternsT&& value) {
185 SetUrlExclusionPatterns(std::forward<UrlExclusionPatternsT>(value));
186 return *this;
187 }
188 template <typename UrlExclusionPatternsT = Aws::String>
189 WebCrawlerConfiguration& AddUrlExclusionPatterns(UrlExclusionPatternsT&& value) {
190 m_urlExclusionPatternsHasBeenSet = true;
191 m_urlExclusionPatterns.emplace_back(std::forward<UrlExclusionPatternsT>(value));
192 return *this;
193 }
195
197
207 inline const ProxyConfiguration& GetProxyConfiguration() const { return m_proxyConfiguration; }
208 inline bool ProxyConfigurationHasBeenSet() const { return m_proxyConfigurationHasBeenSet; }
209 template <typename ProxyConfigurationT = ProxyConfiguration>
210 void SetProxyConfiguration(ProxyConfigurationT&& value) {
211 m_proxyConfigurationHasBeenSet = true;
212 m_proxyConfiguration = std::forward<ProxyConfigurationT>(value);
213 }
214 template <typename ProxyConfigurationT = ProxyConfiguration>
215 WebCrawlerConfiguration& WithProxyConfiguration(ProxyConfigurationT&& value) {
216 SetProxyConfiguration(std::forward<ProxyConfigurationT>(value));
217 return *this;
218 }
220
222
232 inline const AuthenticationConfiguration& GetAuthenticationConfiguration() const { return m_authenticationConfiguration; }
233 inline bool AuthenticationConfigurationHasBeenSet() const { return m_authenticationConfigurationHasBeenSet; }
234 template <typename AuthenticationConfigurationT = AuthenticationConfiguration>
235 void SetAuthenticationConfiguration(AuthenticationConfigurationT&& value) {
236 m_authenticationConfigurationHasBeenSet = true;
237 m_authenticationConfiguration = std::forward<AuthenticationConfigurationT>(value);
238 }
239 template <typename AuthenticationConfigurationT = AuthenticationConfiguration>
240 WebCrawlerConfiguration& WithAuthenticationConfiguration(AuthenticationConfigurationT&& value) {
241 SetAuthenticationConfiguration(std::forward<AuthenticationConfigurationT>(value));
242 return *this;
243 }
245 private:
246 Urls m_urls;
247
248 int m_crawlDepth{0};
249
250 int m_maxLinksPerPage{0};
251
252 double m_maxContentSizePerPageInMegaBytes{0.0};
253
254 int m_maxUrlsPerMinuteCrawlRate{0};
255
256 Aws::Vector<Aws::String> m_urlInclusionPatterns;
257
258 Aws::Vector<Aws::String> m_urlExclusionPatterns;
259
260 ProxyConfiguration m_proxyConfiguration;
261
262 AuthenticationConfiguration m_authenticationConfiguration;
263 bool m_urlsHasBeenSet = false;
264 bool m_crawlDepthHasBeenSet = false;
265 bool m_maxLinksPerPageHasBeenSet = false;
266 bool m_maxContentSizePerPageInMegaBytesHasBeenSet = false;
267 bool m_maxUrlsPerMinuteCrawlRateHasBeenSet = false;
268 bool m_urlInclusionPatternsHasBeenSet = false;
269 bool m_urlExclusionPatternsHasBeenSet = false;
270 bool m_proxyConfigurationHasBeenSet = false;
271 bool m_authenticationConfigurationHasBeenSet = false;
272};
273
274} // namespace Model
275} // namespace kendra
276} // namespace Aws
AWS_KENDRA_API Aws::Utils::Json::JsonValue Jsonize() const
WebCrawlerConfiguration & WithAuthenticationConfiguration(AuthenticationConfigurationT &&value)
WebCrawlerConfiguration & AddUrlExclusionPatterns(UrlExclusionPatternsT &&value)
const ProxyConfiguration & GetProxyConfiguration() const
WebCrawlerConfiguration & WithMaxLinksPerPage(int value)
const Aws::Vector< Aws::String > & GetUrlInclusionPatterns() const
AWS_KENDRA_API WebCrawlerConfiguration()=default
WebCrawlerConfiguration & WithMaxContentSizePerPageInMegaBytes(double value)
WebCrawlerConfiguration & WithUrls(UrlsT &&value)
void SetUrlExclusionPatterns(UrlExclusionPatternsT &&value)
WebCrawlerConfiguration & WithCrawlDepth(int value)
void SetProxyConfiguration(ProxyConfigurationT &&value)
AWS_KENDRA_API WebCrawlerConfiguration(Aws::Utils::Json::JsonView jsonValue)
WebCrawlerConfiguration & WithProxyConfiguration(ProxyConfigurationT &&value)
void SetUrlInclusionPatterns(UrlInclusionPatternsT &&value)
WebCrawlerConfiguration & AddUrlInclusionPatterns(UrlInclusionPatternsT &&value)
WebCrawlerConfiguration & WithUrlExclusionPatterns(UrlExclusionPatternsT &&value)
WebCrawlerConfiguration & WithUrlInclusionPatterns(UrlInclusionPatternsT &&value)
WebCrawlerConfiguration & WithMaxUrlsPerMinuteCrawlRate(int value)
AWS_KENDRA_API WebCrawlerConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
const AuthenticationConfiguration & GetAuthenticationConfiguration() const
const Aws::Vector< Aws::String > & GetUrlExclusionPatterns() const
void SetAuthenticationConfiguration(AuthenticationConfigurationT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue