AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
CreateResourceConfigurationRequest.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/core/utils/memory/stl/AWSVector.h>
11#include <aws/vpc-lattice/model/ProtocolType.h>
12#include <aws/vpc-lattice/model/ResourceConfigurationDefinition.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/vpc-lattice/model/ResourceConfigurationType.h>
15#include <utility>
16#include <aws/core/utils/UUID.h>
17
18namespace Aws
19{
20namespace VPCLattice
21{
22namespace Model
23{
24
28 {
29 public:
30 AWS_VPCLATTICE_API CreateResourceConfigurationRequest() = 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 "CreateResourceConfiguration"; }
37
38 AWS_VPCLATTICE_API Aws::String SerializePayload() const override;
39
40
42
46 inline bool GetAllowAssociationToShareableServiceNetwork() const { return m_allowAssociationToShareableServiceNetwork; }
47 inline bool AllowAssociationToShareableServiceNetworkHasBeenSet() const { return m_allowAssociationToShareableServiceNetworkHasBeenSet; }
48 inline void SetAllowAssociationToShareableServiceNetwork(bool value) { m_allowAssociationToShareableServiceNetworkHasBeenSet = true; m_allowAssociationToShareableServiceNetwork = value; }
51
53
59 inline const Aws::String& GetClientToken() const { return m_clientToken; }
60 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
61 template<typename ClientTokenT = Aws::String>
62 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet = true; m_clientToken = std::forward<ClientTokenT>(value); }
63 template<typename ClientTokenT = Aws::String>
64 CreateResourceConfigurationRequest& WithClientToken(ClientTokenT&& value) { SetClientToken(std::forward<ClientTokenT>(value)); return *this;}
66
68
73 inline const Aws::String& GetName() const { return m_name; }
74 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
75 template<typename NameT = Aws::String>
76 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
77 template<typename NameT = Aws::String>
78 CreateResourceConfigurationRequest& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
80
82
87 inline const Aws::Vector<Aws::String>& GetPortRanges() const { return m_portRanges; }
88 inline bool PortRangesHasBeenSet() const { return m_portRangesHasBeenSet; }
89 template<typename PortRangesT = Aws::Vector<Aws::String>>
90 void SetPortRanges(PortRangesT&& value) { m_portRangesHasBeenSet = true; m_portRanges = std::forward<PortRangesT>(value); }
91 template<typename PortRangesT = Aws::Vector<Aws::String>>
92 CreateResourceConfigurationRequest& WithPortRanges(PortRangesT&& value) { SetPortRanges(std::forward<PortRangesT>(value)); return *this;}
93 template<typename PortRangesT = Aws::String>
94 CreateResourceConfigurationRequest& AddPortRanges(PortRangesT&& value) { m_portRangesHasBeenSet = true; m_portRanges.emplace_back(std::forward<PortRangesT>(value)); return *this; }
96
98
101 inline ProtocolType GetProtocol() const { return m_protocol; }
102 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
103 inline void SetProtocol(ProtocolType value) { m_protocolHasBeenSet = true; m_protocol = value; }
106
108
111 inline const ResourceConfigurationDefinition& GetResourceConfigurationDefinition() const { return m_resourceConfigurationDefinition; }
112 inline bool ResourceConfigurationDefinitionHasBeenSet() const { return m_resourceConfigurationDefinitionHasBeenSet; }
113 template<typename ResourceConfigurationDefinitionT = ResourceConfigurationDefinition>
114 void SetResourceConfigurationDefinition(ResourceConfigurationDefinitionT&& value) { m_resourceConfigurationDefinitionHasBeenSet = true; m_resourceConfigurationDefinition = std::forward<ResourceConfigurationDefinitionT>(value); }
115 template<typename ResourceConfigurationDefinitionT = ResourceConfigurationDefinition>
116 CreateResourceConfigurationRequest& WithResourceConfigurationDefinition(ResourceConfigurationDefinitionT&& value) { SetResourceConfigurationDefinition(std::forward<ResourceConfigurationDefinitionT>(value)); return *this;}
118
120
125 inline const Aws::String& GetResourceConfigurationGroupIdentifier() const { return m_resourceConfigurationGroupIdentifier; }
126 inline bool ResourceConfigurationGroupIdentifierHasBeenSet() const { return m_resourceConfigurationGroupIdentifierHasBeenSet; }
127 template<typename ResourceConfigurationGroupIdentifierT = Aws::String>
128 void SetResourceConfigurationGroupIdentifier(ResourceConfigurationGroupIdentifierT&& value) { m_resourceConfigurationGroupIdentifierHasBeenSet = true; m_resourceConfigurationGroupIdentifier = std::forward<ResourceConfigurationGroupIdentifierT>(value); }
129 template<typename ResourceConfigurationGroupIdentifierT = Aws::String>
130 CreateResourceConfigurationRequest& WithResourceConfigurationGroupIdentifier(ResourceConfigurationGroupIdentifierT&& value) { SetResourceConfigurationGroupIdentifier(std::forward<ResourceConfigurationGroupIdentifierT>(value)); return *this;}
132
134
139 inline const Aws::String& GetResourceGatewayIdentifier() const { return m_resourceGatewayIdentifier; }
140 inline bool ResourceGatewayIdentifierHasBeenSet() const { return m_resourceGatewayIdentifierHasBeenSet; }
141 template<typename ResourceGatewayIdentifierT = Aws::String>
142 void SetResourceGatewayIdentifier(ResourceGatewayIdentifierT&& value) { m_resourceGatewayIdentifierHasBeenSet = true; m_resourceGatewayIdentifier = std::forward<ResourceGatewayIdentifierT>(value); }
143 template<typename ResourceGatewayIdentifierT = Aws::String>
144 CreateResourceConfigurationRequest& WithResourceGatewayIdentifier(ResourceGatewayIdentifierT&& value) { SetResourceGatewayIdentifier(std::forward<ResourceGatewayIdentifierT>(value)); return *this;}
146
148
151 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
152 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
153 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
154 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
155 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
156 CreateResourceConfigurationRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
157 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
158 CreateResourceConfigurationRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
159 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
160 }
162
164
172 inline ResourceConfigurationType GetType() const { return m_type; }
173 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
174 inline void SetType(ResourceConfigurationType value) { m_typeHasBeenSet = true; m_type = value; }
177 private:
178
179 bool m_allowAssociationToShareableServiceNetwork{false};
180 bool m_allowAssociationToShareableServiceNetworkHasBeenSet = false;
181
183 bool m_clientTokenHasBeenSet = true;
184
185 Aws::String m_name;
186 bool m_nameHasBeenSet = false;
187
188 Aws::Vector<Aws::String> m_portRanges;
189 bool m_portRangesHasBeenSet = false;
190
192 bool m_protocolHasBeenSet = false;
193
194 ResourceConfigurationDefinition m_resourceConfigurationDefinition;
195 bool m_resourceConfigurationDefinitionHasBeenSet = false;
196
197 Aws::String m_resourceConfigurationGroupIdentifier;
198 bool m_resourceConfigurationGroupIdentifierHasBeenSet = false;
199
200 Aws::String m_resourceGatewayIdentifier;
201 bool m_resourceGatewayIdentifierHasBeenSet = false;
202
204 bool m_tagsHasBeenSet = false;
205
207 bool m_typeHasBeenSet = false;
208 };
209
210} // namespace Model
211} // namespace VPCLattice
212} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
AWS_VPCLATTICE_API Aws::String SerializePayload() const override
CreateResourceConfigurationRequest & WithType(ResourceConfigurationType value)
void SetResourceConfigurationGroupIdentifier(ResourceConfigurationGroupIdentifierT &&value)
CreateResourceConfigurationRequest & WithProtocol(ProtocolType value)
CreateResourceConfigurationRequest & AddPortRanges(PortRangesT &&value)
CreateResourceConfigurationRequest & WithPortRanges(PortRangesT &&value)
void SetResourceConfigurationDefinition(ResourceConfigurationDefinitionT &&value)
CreateResourceConfigurationRequest & WithResourceConfigurationGroupIdentifier(ResourceConfigurationGroupIdentifierT &&value)
CreateResourceConfigurationRequest & WithResourceGatewayIdentifier(ResourceGatewayIdentifierT &&value)
CreateResourceConfigurationRequest & WithResourceConfigurationDefinition(ResourceConfigurationDefinitionT &&value)
CreateResourceConfigurationRequest & WithAllowAssociationToShareableServiceNetwork(bool value)
CreateResourceConfigurationRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const ResourceConfigurationDefinition & GetResourceConfigurationDefinition() const
CreateResourceConfigurationRequest & WithClientToken(ClientTokenT &&value)
AWS_VPCLATTICE_API CreateResourceConfigurationRequest()=default
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