AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CreateResourceGatewayRequest.h
1
6#pragma once
7#include <aws/vpc-lattice/VPCLattice_EXPORTS.h>
8#include <aws/vpc-lattice/VPCLatticeRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/vpc-lattice/model/ResourceGatewayIpAddressType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <utility>
14#include <aws/core/utils/UUID.h>
15
16namespace Aws
17{
18namespace VPCLattice
19{
20namespace Model
21{
22
26 {
27 public:
28 AWS_VPCLATTICE_API CreateResourceGatewayRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateResourceGateway"; }
35
36 AWS_VPCLATTICE_API Aws::String SerializePayload() const override;
37
38
40
46 inline const Aws::String& GetClientToken() const { return m_clientToken; }
47 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
48 template<typename ClientTokenT = Aws::String>
49 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
50 template<typename ClientTokenT = Aws::String>
51 CreateResourceGatewayRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
53
55
58 inline ResourceGatewayIpAddressType GetIpAddressType() const { return m_ipAddressType; }
59 inline bool IpAddressTypeHasBeenSet() const { return m_ipAddressTypeHasBeenSet; }
60 inline void SetIpAddressType(ResourceGatewayIpAddressType value) { m_ipAddressTypeHasBeenSet = true; m_ipAddressType = value; }
63
65
68 inline const Aws::String& GetName() const { return m_name; }
69 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
70 template<typename NameT = Aws::String>
71 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
72 template<typename NameT = Aws::String>
73 CreateResourceGatewayRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
75
77
81 inline const Aws::Vector<Aws::String>& GetSecurityGroupIds() const { return m_securityGroupIds; }
82 inline bool SecurityGroupIdsHasBeenSet() const { return m_securityGroupIdsHasBeenSet; }
83 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
84 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
85 template<typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
86 CreateResourceGatewayRequest& WithSecurityGroupIds(SecurityGroupIdsT&& value) { SetSecurityGroupIds(std::forward<SecurityGroupIdsT>(value)); return *this;}
87 template<typename SecurityGroupIdsT = Aws::String>
88 CreateResourceGatewayRequest& AddSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet = true; m_securityGroupIds.emplace_back(std::forward<SecurityGroupIdsT>(value)); return *this; }
90
92
95 inline const Aws::Vector<Aws::String>& GetSubnetIds() const { return m_subnetIds; }
96 inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; }
97 template<typename SubnetIdsT = Aws::Vector<Aws::String>>
98 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::forward<SubnetIdsT>(value); }
99 template<typename SubnetIdsT = Aws::Vector<Aws::String>>
100 CreateResourceGatewayRequest& WithSubnetIds(SubnetIdsT&& value) { SetSubnetIds(std::forward<SubnetIdsT>(value)); return *this;}
101 template<typename SubnetIdsT = Aws::String>
102 CreateResourceGatewayRequest& AddSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value)); return *this; }
104
106
109 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
110 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
111 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
112 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
113 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
114 CreateResourceGatewayRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
115 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
116 CreateResourceGatewayRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
117 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
118 }
120
122
125 inline const Aws::String& GetVpcIdentifier() const { return m_vpcIdentifier; }
126 inline bool VpcIdentifierHasBeenSet() const { return m_vpcIdentifierHasBeenSet; }
127 template<typename VpcIdentifierT = Aws::String>
128 void SetVpcIdentifier(VpcIdentifierT&& value) { m_vpcIdentifierHasBeenSet = true; m_vpcIdentifier = std::forward<VpcIdentifierT>(value); }
129 template<typename VpcIdentifierT = Aws::String>
130 CreateResourceGatewayRequest& WithVpcIdentifier(VpcIdentifierT&& value) { SetVpcIdentifier(std::forward<VpcIdentifierT>(value)); return *this;}
132 private:
133
135 bool m_clientTokenHasBeenSet = true;
136
138 bool m_ipAddressTypeHasBeenSet = false;
139
140 Aws::String m_name;
141 bool m_nameHasBeenSet = false;
142
143 Aws::Vector<Aws::String> m_securityGroupIds;
144 bool m_securityGroupIdsHasBeenSet = false;
145
146 Aws::Vector<Aws::String> m_subnetIds;
147 bool m_subnetIdsHasBeenSet = false;
148
150 bool m_tagsHasBeenSet = false;
151
152 Aws::String m_vpcIdentifier;
153 bool m_vpcIdentifierHasBeenSet = false;
154 };
155
156} // namespace Model
157} // namespace VPCLattice
158} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
CreateResourceGatewayRequest & WithIpAddressType(ResourceGatewayIpAddressType value)
AWS_VPCLATTICE_API Aws::String SerializePayload() const override
CreateResourceGatewayRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateResourceGatewayRequest & AddSubnetIds(SubnetIdsT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
CreateResourceGatewayRequest & WithName(NameT &&value)
CreateResourceGatewayRequest & WithSubnetIds(SubnetIdsT &&value)
CreateResourceGatewayRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
CreateResourceGatewayRequest & WithClientToken(ClientTokenT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
CreateResourceGatewayRequest & WithTags(TagsT &&value)
CreateResourceGatewayRequest & WithVpcIdentifier(VpcIdentifierT &&value)
AWS_VPCLATTICE_API CreateResourceGatewayRequest()=default
CreateResourceGatewayRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector