AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateResolverEndpointRequest.h
1
6#pragma once
7#include <aws/route53resolver/Route53Resolver_EXPORTS.h>
8#include <aws/route53resolver/Route53ResolverRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/route53resolver/model/ResolverEndpointDirection.h>
12#include <aws/route53resolver/model/ResolverEndpointType.h>
13#include <aws/route53resolver/model/IpAddressRequest.h>
14#include <aws/route53resolver/model/Tag.h>
15#include <aws/route53resolver/model/Protocol.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Route53Resolver
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_ROUTE53RESOLVER_API CreateResolverEndpointRequest() = default;
31
32 // Service request name is the Operation name which will send this request out,
33 // each operation should has unique request name, so that we can get operation's name from this request.
34 // Note: this is not true for response, multiple operations may have the same response name,
35 // so we can not get operation's name from response.
36 inline virtual const char* GetServiceRequestName() const override { return "CreateResolverEndpoint"; }
37
38 AWS_ROUTE53RESOLVER_API Aws::String SerializePayload() const override;
39
40 AWS_ROUTE53RESOLVER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
41
42
44
50 inline const Aws::String& GetCreatorRequestId() const { return m_creatorRequestId; }
51 inline bool CreatorRequestIdHasBeenSet() const { return m_creatorRequestIdHasBeenSet; }
52 template<typename CreatorRequestIdT = Aws::String>
53 void SetCreatorRequestId(CreatorRequestIdT&& value) { m_creatorRequestIdHasBeenSet = true; m_creatorRequestId = std::forward<CreatorRequestIdT>(value); }
54 template<typename CreatorRequestIdT = Aws::String>
55 CreateResolverEndpointRequest& WithCreatorRequestId(CreatorRequestIdT&& value) { SetCreatorRequestId(std::forward<CreatorRequestIdT>(value)); return *this;}
57
59
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template<typename NameT = Aws::String>
66 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
67 template<typename NameT = Aws::String>
68 CreateResolverEndpointRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
70
72
87 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
88 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
89 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
90 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
91 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
92 CreateResolverEndpointRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
93 template<typename SecurityGroupIdsT = Aws::String>
94 CreateResolverEndpointRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
96
98
106 inline ResolverEndpointDirection GetDirection() const { return m_direction; }
107 inline bool DirectionHasBeenSet() const { return m_directionHasBeenSet; }
108 inline void SetDirection(ResolverEndpointDirection value) { m_directionHasBeenSet = true; m_direction = value; }
111
113
119 inline const Aws::Vector<IpAddressRequest>& GetIpAddresses() const { return m_ipAddresses; }
120 inline bool IpAddressesHasBeenSet() const { return m_ipAddressesHasBeenSet; }
121 template<typename IpAddressesT = Aws::Vector<IpAddressRequest>>
122 void SetIpAddresses(IpAddressesT&& value) { m_ipAddressesHasBeenSet = true; m_ipAddresses = std::forward<IpAddressesT>(value); }
123 template<typename IpAddressesT = Aws::Vector<IpAddressRequest>>
124 CreateResolverEndpointRequest& WithIpAddresses(IpAddressesT&& value) { SetIpAddresses(std::forward<IpAddressesT>(value)); return *this;}
125 template<typename IpAddressesT = IpAddressRequest>
126 CreateResolverEndpointRequest& AddIpAddresses(IpAddressesT&& value) { m_ipAddressesHasBeenSet = true; m_ipAddresses.emplace_back(std::forward<IpAddressesT>(value)); return *this; }
128
130
134 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
135 inline bool OutpostArnHasBeenSet() const { return m_outpostArnHasBeenSet; }
136 template<typename OutpostArnT = Aws::String>
137 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet = true; m_outpostArn = std::forward<OutpostArnT>(value); }
138 template<typename OutpostArnT = Aws::String>
139 CreateResolverEndpointRequest& WithOutpostArn(OutpostArnT&& value) { SetOutpostArn(std::forward<OutpostArnT>(value)); return *this;}
141
143
147 inline const Aws::String& GetPreferredInstanceType() const { return m_preferredInstanceType; }
148 inline bool PreferredInstanceTypeHasBeenSet() const { return m_preferredInstanceTypeHasBeenSet; }
149 template<typename PreferredInstanceTypeT = Aws::String>
150 void SetPreferredInstanceType(PreferredInstanceTypeT&& value) { m_preferredInstanceTypeHasBeenSet = true; m_preferredInstanceType = std::forward<PreferredInstanceTypeT>(value); }
151 template<typename PreferredInstanceTypeT = Aws::String>
152 CreateResolverEndpointRequest& WithPreferredInstanceType(PreferredInstanceTypeT&& value) { SetPreferredInstanceType(std::forward<PreferredInstanceTypeT>(value)); return *this;}
154
156
160 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
161 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
162 template<typename TagsT = Aws::Vector<Tag>>
163 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
164 template<typename TagsT = Aws::Vector<Tag>>
165 CreateResolverEndpointRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
166 template<typename TagsT = Tag>
167 CreateResolverEndpointRequest& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
169
171
176 inline ResolverEndpointType GetResolverEndpointType() const { return m_resolverEndpointType; }
177 inline bool ResolverEndpointTypeHasBeenSet() const { return m_resolverEndpointTypeHasBeenSet; }
178 inline void SetResolverEndpointType(ResolverEndpointType value) { m_resolverEndpointTypeHasBeenSet = true; m_resolverEndpointType = value; }
181
183
195 inline const Aws::Vector<Protocol>& GetProtocols() const { return m_protocols; }
196 inline bool ProtocolsHasBeenSet() const { return m_protocolsHasBeenSet; }
197 template<typename ProtocolsT = Aws::Vector<Protocol>>
198 void SetProtocols(ProtocolsT&& value) { m_protocolsHasBeenSet = true; m_protocols = std::forward<ProtocolsT>(value); }
199 template<typename ProtocolsT = Aws::Vector<Protocol>>
200 CreateResolverEndpointRequest& WithProtocols(ProtocolsT&& value) { SetProtocols(std::forward<ProtocolsT>(value)); return *this;}
201 inline CreateResolverEndpointRequest& AddProtocols(Protocol value) { m_protocolsHasBeenSet = true; m_protocols.push_back(value); return *this; }
203 private:
204
205 Aws::String m_creatorRequestId;
206 bool m_creatorRequestIdHasBeenSet = false;
207
208 Aws::String m_name;
209 bool m_nameHasBeenSet = false;
210
211 Aws::Vector<Aws::String> m_securityGroupIds;
212 bool m_securityGroupIdsHasBeenSet = false;
213
215 bool m_directionHasBeenSet = false;
216
217 Aws::Vector<IpAddressRequest> m_ipAddresses;
218 bool m_ipAddressesHasBeenSet = false;
219
220 Aws::String m_outpostArn;
221 bool m_outpostArnHasBeenSet = false;
222
223 Aws::String m_preferredInstanceType;
224 bool m_preferredInstanceTypeHasBeenSet = false;
225
226 Aws::Vector<Tag> m_tags;
227 bool m_tagsHasBeenSet = false;
228
230 bool m_resolverEndpointTypeHasBeenSet = false;
231
232 Aws::Vector<Protocol> m_protocols;
233 bool m_protocolsHasBeenSet = false;
234 };
235
236} // namespace Model
237} // namespace Route53Resolver
238} // namespace Aws
CreateResolverEndpointRequest & AddIpAddresses(IpAddressesT &&value)
CreateResolverEndpointRequest & WithCreatorRequestId(CreatorRequestIdT &&value)
const Aws::Vector< IpAddressRequest > & GetIpAddresses() const
AWS_ROUTE53RESOLVER_API CreateResolverEndpointRequest()=default
CreateResolverEndpointRequest & WithIpAddresses(IpAddressesT &&value)
CreateResolverEndpointRequest & WithOutpostArn(OutpostArnT &&value)
CreateResolverEndpointRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
CreateResolverEndpointRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
AWS_ROUTE53RESOLVER_API Aws::String SerializePayload() const override
CreateResolverEndpointRequest & WithProtocols(ProtocolsT &&value)
CreateResolverEndpointRequest & WithPreferredInstanceType(PreferredInstanceTypeT &&value)
AWS_ROUTE53RESOLVER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateResolverEndpointRequest & WithResolverEndpointType(ResolverEndpointType value)
CreateResolverEndpointRequest & WithDirection(ResolverEndpointDirection 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