AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ResolverRule.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/route53resolver/Route53Resolver_EXPORTS.h>
10#include <aws/route53resolver/model/ResolverRuleStatus.h>
11#include <aws/route53resolver/model/RuleTypeOption.h>
12#include <aws/route53resolver/model/ShareStatus.h>
13#include <aws/route53resolver/model/TargetAddress.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Route53Resolver {
25namespace Model {
26
45 public:
46 AWS_ROUTE53RESOLVER_API ResolverRule() = default;
47 AWS_ROUTE53RESOLVER_API ResolverRule(Aws::Utils::Json::JsonView jsonValue);
48 AWS_ROUTE53RESOLVER_API ResolverRule& operator=(Aws::Utils::Json::JsonView jsonValue);
49 AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const;
50
52
55 inline const Aws::String& GetId() const { return m_id; }
56 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
57 template <typename IdT = Aws::String>
58 void SetId(IdT&& value) {
59 m_idHasBeenSet = true;
60 m_id = std::forward<IdT>(value);
61 }
62 template <typename IdT = Aws::String>
63 ResolverRule& WithId(IdT&& value) {
64 SetId(std::forward<IdT>(value));
65 return *this;
66 }
68
70
75 inline const Aws::String& GetCreatorRequestId() const { return m_creatorRequestId; }
76 inline bool CreatorRequestIdHasBeenSet() const { return m_creatorRequestIdHasBeenSet; }
77 template <typename CreatorRequestIdT = Aws::String>
78 void SetCreatorRequestId(CreatorRequestIdT&& value) {
79 m_creatorRequestIdHasBeenSet = true;
80 m_creatorRequestId = std::forward<CreatorRequestIdT>(value);
81 }
82 template <typename CreatorRequestIdT = Aws::String>
83 ResolverRule& WithCreatorRequestId(CreatorRequestIdT&& value) {
84 SetCreatorRequestId(std::forward<CreatorRequestIdT>(value));
85 return *this;
86 }
88
90
94 inline const Aws::String& GetArn() const { return m_arn; }
95 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
96 template <typename ArnT = Aws::String>
97 void SetArn(ArnT&& value) {
98 m_arnHasBeenSet = true;
99 m_arn = std::forward<ArnT>(value);
100 }
101 template <typename ArnT = Aws::String>
102 ResolverRule& WithArn(ArnT&& value) {
103 SetArn(std::forward<ArnT>(value));
104 return *this;
105 }
107
109
115 inline const Aws::String& GetDomainName() const { return m_domainName; }
116 inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; }
117 template <typename DomainNameT = Aws::String>
118 void SetDomainName(DomainNameT&& value) {
119 m_domainNameHasBeenSet = true;
120 m_domainName = std::forward<DomainNameT>(value);
121 }
122 template <typename DomainNameT = Aws::String>
123 ResolverRule& WithDomainName(DomainNameT&& value) {
124 SetDomainName(std::forward<DomainNameT>(value));
125 return *this;
126 }
128
130
133 inline ResolverRuleStatus GetStatus() const { return m_status; }
134 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
135 inline void SetStatus(ResolverRuleStatus value) {
136 m_statusHasBeenSet = true;
137 m_status = value;
138 }
140 SetStatus(value);
141 return *this;
142 }
144
146
149 inline const Aws::String& GetStatusMessage() const { return m_statusMessage; }
150 inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; }
151 template <typename StatusMessageT = Aws::String>
152 void SetStatusMessage(StatusMessageT&& value) {
153 m_statusMessageHasBeenSet = true;
154 m_statusMessage = std::forward<StatusMessageT>(value);
155 }
156 template <typename StatusMessageT = Aws::String>
157 ResolverRule& WithStatusMessage(StatusMessageT&& value) {
158 SetStatusMessage(std::forward<StatusMessageT>(value));
159 return *this;
160 }
162
164
179 inline RuleTypeOption GetRuleType() const { return m_ruleType; }
180 inline bool RuleTypeHasBeenSet() const { return m_ruleTypeHasBeenSet; }
181 inline void SetRuleType(RuleTypeOption value) {
182 m_ruleTypeHasBeenSet = true;
183 m_ruleType = value;
184 }
186 SetRuleType(value);
187 return *this;
188 }
190
192
198 inline const Aws::String& GetName() const { return m_name; }
199 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
200 template <typename NameT = Aws::String>
201 void SetName(NameT&& value) {
202 m_nameHasBeenSet = true;
203 m_name = std::forward<NameT>(value);
204 }
205 template <typename NameT = Aws::String>
206 ResolverRule& WithName(NameT&& value) {
207 SetName(std::forward<NameT>(value));
208 return *this;
209 }
211
213
218 inline const Aws::Vector<TargetAddress>& GetTargetIps() const { return m_targetIps; }
219 inline bool TargetIpsHasBeenSet() const { return m_targetIpsHasBeenSet; }
220 template <typename TargetIpsT = Aws::Vector<TargetAddress>>
221 void SetTargetIps(TargetIpsT&& value) {
222 m_targetIpsHasBeenSet = true;
223 m_targetIps = std::forward<TargetIpsT>(value);
224 }
225 template <typename TargetIpsT = Aws::Vector<TargetAddress>>
226 ResolverRule& WithTargetIps(TargetIpsT&& value) {
227 SetTargetIps(std::forward<TargetIpsT>(value));
228 return *this;
229 }
230 template <typename TargetIpsT = TargetAddress>
231 ResolverRule& AddTargetIps(TargetIpsT&& value) {
232 m_targetIpsHasBeenSet = true;
233 m_targetIps.emplace_back(std::forward<TargetIpsT>(value));
234 return *this;
235 }
237
239
242 inline const Aws::String& GetResolverEndpointId() const { return m_resolverEndpointId; }
243 inline bool ResolverEndpointIdHasBeenSet() const { return m_resolverEndpointIdHasBeenSet; }
244 template <typename ResolverEndpointIdT = Aws::String>
245 void SetResolverEndpointId(ResolverEndpointIdT&& value) {
246 m_resolverEndpointIdHasBeenSet = true;
247 m_resolverEndpointId = std::forward<ResolverEndpointIdT>(value);
248 }
249 template <typename ResolverEndpointIdT = Aws::String>
250 ResolverRule& WithResolverEndpointId(ResolverEndpointIdT&& value) {
251 SetResolverEndpointId(std::forward<ResolverEndpointIdT>(value));
252 return *this;
253 }
255
257
261 inline const Aws::String& GetOwnerId() const { return m_ownerId; }
262 inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; }
263 template <typename OwnerIdT = Aws::String>
264 void SetOwnerId(OwnerIdT&& value) {
265 m_ownerIdHasBeenSet = true;
266 m_ownerId = std::forward<OwnerIdT>(value);
267 }
268 template <typename OwnerIdT = Aws::String>
269 ResolverRule& WithOwnerId(OwnerIdT&& value) {
270 SetOwnerId(std::forward<OwnerIdT>(value));
271 return *this;
272 }
274
276
281 inline ShareStatus GetShareStatus() const { return m_shareStatus; }
282 inline bool ShareStatusHasBeenSet() const { return m_shareStatusHasBeenSet; }
283 inline void SetShareStatus(ShareStatus value) {
284 m_shareStatusHasBeenSet = true;
285 m_shareStatus = value;
286 }
288 SetShareStatus(value);
289 return *this;
290 }
292
294
298 inline const Aws::String& GetCreationTime() const { return m_creationTime; }
299 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
300 template <typename CreationTimeT = Aws::String>
301 void SetCreationTime(CreationTimeT&& value) {
302 m_creationTimeHasBeenSet = true;
303 m_creationTime = std::forward<CreationTimeT>(value);
304 }
305 template <typename CreationTimeT = Aws::String>
306 ResolverRule& WithCreationTime(CreationTimeT&& value) {
307 SetCreationTime(std::forward<CreationTimeT>(value));
308 return *this;
309 }
311
313
317 inline const Aws::String& GetModificationTime() const { return m_modificationTime; }
318 inline bool ModificationTimeHasBeenSet() const { return m_modificationTimeHasBeenSet; }
319 template <typename ModificationTimeT = Aws::String>
320 void SetModificationTime(ModificationTimeT&& value) {
321 m_modificationTimeHasBeenSet = true;
322 m_modificationTime = std::forward<ModificationTimeT>(value);
323 }
324 template <typename ModificationTimeT = Aws::String>
325 ResolverRule& WithModificationTime(ModificationTimeT&& value) {
326 SetModificationTime(std::forward<ModificationTimeT>(value));
327 return *this;
328 }
330
332
336 inline const Aws::String& GetDelegationRecord() const { return m_delegationRecord; }
337 inline bool DelegationRecordHasBeenSet() const { return m_delegationRecordHasBeenSet; }
338 template <typename DelegationRecordT = Aws::String>
339 void SetDelegationRecord(DelegationRecordT&& value) {
340 m_delegationRecordHasBeenSet = true;
341 m_delegationRecord = std::forward<DelegationRecordT>(value);
342 }
343 template <typename DelegationRecordT = Aws::String>
344 ResolverRule& WithDelegationRecord(DelegationRecordT&& value) {
345 SetDelegationRecord(std::forward<DelegationRecordT>(value));
346 return *this;
347 }
349 private:
350 Aws::String m_id;
351
352 Aws::String m_creatorRequestId;
353
354 Aws::String m_arn;
355
356 Aws::String m_domainName;
357
359
360 Aws::String m_statusMessage;
361
363
364 Aws::String m_name;
365
366 Aws::Vector<TargetAddress> m_targetIps;
367
368 Aws::String m_resolverEndpointId;
369
370 Aws::String m_ownerId;
371
372 ShareStatus m_shareStatus{ShareStatus::NOT_SET};
373
374 Aws::String m_creationTime;
375
376 Aws::String m_modificationTime;
377
378 Aws::String m_delegationRecord;
379 bool m_idHasBeenSet = false;
380 bool m_creatorRequestIdHasBeenSet = false;
381 bool m_arnHasBeenSet = false;
382 bool m_domainNameHasBeenSet = false;
383 bool m_statusHasBeenSet = false;
384 bool m_statusMessageHasBeenSet = false;
385 bool m_ruleTypeHasBeenSet = false;
386 bool m_nameHasBeenSet = false;
387 bool m_targetIpsHasBeenSet = false;
388 bool m_resolverEndpointIdHasBeenSet = false;
389 bool m_ownerIdHasBeenSet = false;
390 bool m_shareStatusHasBeenSet = false;
391 bool m_creationTimeHasBeenSet = false;
392 bool m_modificationTimeHasBeenSet = false;
393 bool m_delegationRecordHasBeenSet = false;
394};
395
396} // namespace Model
397} // namespace Route53Resolver
398} // namespace Aws
void SetRuleType(RuleTypeOption value)
const Aws::String & GetName() const
AWS_ROUTE53RESOLVER_API ResolverRule()=default
ResolverRule & WithCreatorRequestId(CreatorRequestIdT &&value)
ResolverRule & WithDelegationRecord(DelegationRecordT &&value)
const Aws::String & GetCreationTime() const
void SetStatusMessage(StatusMessageT &&value)
void SetCreationTime(CreationTimeT &&value)
const Aws::String & GetModificationTime() const
ResolverRule & WithStatusMessage(StatusMessageT &&value)
const Aws::String & GetOwnerId() const
ResolverRule & WithId(IdT &&value)
ResolverRule & WithResolverEndpointId(ResolverEndpointIdT &&value)
AWS_ROUTE53RESOLVER_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< TargetAddress > & GetTargetIps() const
const Aws::String & GetStatusMessage() const
void SetResolverEndpointId(ResolverEndpointIdT &&value)
ResolverRule & WithOwnerId(OwnerIdT &&value)
const Aws::String & GetDelegationRecord() const
void SetDelegationRecord(DelegationRecordT &&value)
ResolverRule & WithShareStatus(ShareStatus value)
ResolverRule & AddTargetIps(TargetIpsT &&value)
ResolverRule & WithModificationTime(ModificationTimeT &&value)
void SetStatus(ResolverRuleStatus value)
ResolverRule & WithRuleType(RuleTypeOption value)
const Aws::String & GetDomainName() const
ResolverRule & WithCreationTime(CreationTimeT &&value)
const Aws::String & GetCreatorRequestId() const
ResolverRule & WithName(NameT &&value)
AWS_ROUTE53RESOLVER_API ResolverRule(Aws::Utils::Json::JsonView jsonValue)
void SetDomainName(DomainNameT &&value)
ResolverRule & WithTargetIps(TargetIpsT &&value)
ResolverRule & WithDomainName(DomainNameT &&value)
const Aws::String & GetArn() const
void SetCreatorRequestId(CreatorRequestIdT &&value)
const Aws::String & GetId() const
const Aws::String & GetResolverEndpointId() const
AWS_ROUTE53RESOLVER_API ResolverRule & operator=(Aws::Utils::Json::JsonView jsonValue)
ResolverRuleStatus GetStatus() const
ResolverRule & WithStatus(ResolverRuleStatus value)
ResolverRule & WithArn(ArnT &&value)
void SetModificationTime(ModificationTimeT &&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