AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateResolverRuleRequest.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/Route53ResolverRequest.h>
10#include <aws/route53resolver/Route53Resolver_EXPORTS.h>
11#include <aws/route53resolver/model/RuleTypeOption.h>
12#include <aws/route53resolver/model/Tag.h>
13#include <aws/route53resolver/model/TargetAddress.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Route53Resolver {
19namespace Model {
20
24 public:
25 AWS_ROUTE53RESOLVER_API CreateResolverRuleRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateResolverRule"; }
32
33 AWS_ROUTE53RESOLVER_API Aws::String SerializePayload() const override;
34
35 AWS_ROUTE53RESOLVER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
36
38
44 inline const Aws::String& GetCreatorRequestId() const { return m_creatorRequestId; }
45 inline bool CreatorRequestIdHasBeenSet() const { return m_creatorRequestIdHasBeenSet; }
46 template <typename CreatorRequestIdT = Aws::String>
47 void SetCreatorRequestId(CreatorRequestIdT&& value) {
48 m_creatorRequestIdHasBeenSet = true;
49 m_creatorRequestId = std::forward<CreatorRequestIdT>(value);
50 }
51 template <typename CreatorRequestIdT = Aws::String>
52 CreateResolverRuleRequest& WithCreatorRequestId(CreatorRequestIdT&& value) {
53 SetCreatorRequestId(std::forward<CreatorRequestIdT>(value));
54 return *this;
55 }
57
59
65 inline const Aws::String& GetName() const { return m_name; }
66 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
67 template <typename NameT = Aws::String>
68 void SetName(NameT&& value) {
69 m_nameHasBeenSet = true;
70 m_name = std::forward<NameT>(value);
71 }
72 template <typename NameT = Aws::String>
74 SetName(std::forward<NameT>(value));
75 return *this;
76 }
78
80
92 inline RuleTypeOption GetRuleType() const { return m_ruleType; }
93 inline bool RuleTypeHasBeenSet() const { return m_ruleTypeHasBeenSet; }
94 inline void SetRuleType(RuleTypeOption value) {
95 m_ruleTypeHasBeenSet = true;
96 m_ruleType = value;
97 }
99 SetRuleType(value);
100 return *this;
101 }
103
105
111 inline const Aws::String& GetDomainName() const { return m_domainName; }
112 inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; }
113 template <typename DomainNameT = Aws::String>
114 void SetDomainName(DomainNameT&& value) {
115 m_domainNameHasBeenSet = true;
116 m_domainName = std::forward<DomainNameT>(value);
117 }
118 template <typename DomainNameT = Aws::String>
120 SetDomainName(std::forward<DomainNameT>(value));
121 return *this;
122 }
124
126
138 inline const Aws::Vector<TargetAddress>& GetTargetIps() const { return m_targetIps; }
139 inline bool TargetIpsHasBeenSet() const { return m_targetIpsHasBeenSet; }
140 template <typename TargetIpsT = Aws::Vector<TargetAddress>>
141 void SetTargetIps(TargetIpsT&& value) {
142 m_targetIpsHasBeenSet = true;
143 m_targetIps = std::forward<TargetIpsT>(value);
144 }
145 template <typename TargetIpsT = Aws::Vector<TargetAddress>>
147 SetTargetIps(std::forward<TargetIpsT>(value));
148 return *this;
149 }
150 template <typename TargetIpsT = TargetAddress>
152 m_targetIpsHasBeenSet = true;
153 m_targetIps.emplace_back(std::forward<TargetIpsT>(value));
154 return *this;
155 }
157
159
163 inline const Aws::String& GetResolverEndpointId() const { return m_resolverEndpointId; }
164 inline bool ResolverEndpointIdHasBeenSet() const { return m_resolverEndpointIdHasBeenSet; }
165 template <typename ResolverEndpointIdT = Aws::String>
166 void SetResolverEndpointId(ResolverEndpointIdT&& value) {
167 m_resolverEndpointIdHasBeenSet = true;
168 m_resolverEndpointId = std::forward<ResolverEndpointIdT>(value);
169 }
170 template <typename ResolverEndpointIdT = Aws::String>
171 CreateResolverRuleRequest& WithResolverEndpointId(ResolverEndpointIdT&& value) {
172 SetResolverEndpointId(std::forward<ResolverEndpointIdT>(value));
173 return *this;
174 }
176
178
182 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
183 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
184 template <typename TagsT = Aws::Vector<Tag>>
185 void SetTags(TagsT&& value) {
186 m_tagsHasBeenSet = true;
187 m_tags = std::forward<TagsT>(value);
188 }
189 template <typename TagsT = Aws::Vector<Tag>>
191 SetTags(std::forward<TagsT>(value));
192 return *this;
193 }
194 template <typename TagsT = Tag>
196 m_tagsHasBeenSet = true;
197 m_tags.emplace_back(std::forward<TagsT>(value));
198 return *this;
199 }
201
203
207 inline const Aws::String& GetDelegationRecord() const { return m_delegationRecord; }
208 inline bool DelegationRecordHasBeenSet() const { return m_delegationRecordHasBeenSet; }
209 template <typename DelegationRecordT = Aws::String>
210 void SetDelegationRecord(DelegationRecordT&& value) {
211 m_delegationRecordHasBeenSet = true;
212 m_delegationRecord = std::forward<DelegationRecordT>(value);
213 }
214 template <typename DelegationRecordT = Aws::String>
216 SetDelegationRecord(std::forward<DelegationRecordT>(value));
217 return *this;
218 }
220 private:
221 Aws::String m_creatorRequestId;
222
223 Aws::String m_name;
224
226
227 Aws::String m_domainName;
228
229 Aws::Vector<TargetAddress> m_targetIps;
230
231 Aws::String m_resolverEndpointId;
232
233 Aws::Vector<Tag> m_tags;
234
235 Aws::String m_delegationRecord;
236 bool m_creatorRequestIdHasBeenSet = false;
237 bool m_nameHasBeenSet = false;
238 bool m_ruleTypeHasBeenSet = false;
239 bool m_domainNameHasBeenSet = false;
240 bool m_targetIpsHasBeenSet = false;
241 bool m_resolverEndpointIdHasBeenSet = false;
242 bool m_tagsHasBeenSet = false;
243 bool m_delegationRecordHasBeenSet = false;
244};
245
246} // namespace Model
247} // namespace Route53Resolver
248} // namespace Aws
CreateResolverRuleRequest & WithResolverEndpointId(ResolverEndpointIdT &&value)
CreateResolverRuleRequest & WithDomainName(DomainNameT &&value)
AWS_ROUTE53RESOLVER_API CreateResolverRuleRequest()=default
CreateResolverRuleRequest & WithCreatorRequestId(CreatorRequestIdT &&value)
CreateResolverRuleRequest & WithDelegationRecord(DelegationRecordT &&value)
const Aws::Vector< TargetAddress > & GetTargetIps() const
CreateResolverRuleRequest & AddTargetIps(TargetIpsT &&value)
AWS_ROUTE53RESOLVER_API Aws::String SerializePayload() const override
CreateResolverRuleRequest & WithTargetIps(TargetIpsT &&value)
AWS_ROUTE53RESOLVER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateResolverRuleRequest & WithRuleType(RuleTypeOption value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector