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>
16#include <aws/core/utils/UUID.h>
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>
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>
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>>
93 template<
typename PortRangesT = Aws::String>
113 template<
typename ResourceConfigurationDefinitionT = ResourceConfigurationDefinition>
114 void SetResourceConfigurationDefinition(ResourceConfigurationDefinitionT&& value) { m_resourceConfigurationDefinitionHasBeenSet =
true; m_resourceConfigurationDefinition = std::forward<ResourceConfigurationDefinitionT>(value); }
115 template<
typename ResourceConfigurationDefinitionT = ResourceConfigurationDefinition>
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>
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>
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>>
157 template<
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
159 m_tagsHasBeenSet =
true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
return *
this;
179 bool m_allowAssociationToShareableServiceNetwork{
false};
180 bool m_allowAssociationToShareableServiceNetworkHasBeenSet =
false;
183 bool m_clientTokenHasBeenSet =
true;
186 bool m_nameHasBeenSet =
false;
189 bool m_portRangesHasBeenSet =
false;
192 bool m_protocolHasBeenSet =
false;
194 ResourceConfigurationDefinition m_resourceConfigurationDefinition;
195 bool m_resourceConfigurationDefinitionHasBeenSet =
false;
197 Aws::String m_resourceConfigurationGroupIdentifier;
198 bool m_resourceConfigurationGroupIdentifierHasBeenSet =
false;
201 bool m_resourceGatewayIdentifierHasBeenSet =
false;
204 bool m_tagsHasBeenSet =
false;
207 bool m_typeHasBeenSet =
false;
static Aws::Utils::UUID PseudoRandomUUID()
const Aws::String & GetResourceConfigurationGroupIdentifier() const
bool PortRangesHasBeenSet() const
void SetAllowAssociationToShareableServiceNetwork(bool value)
AWS_VPCLATTICE_API Aws::String SerializePayload() const override
void SetPortRanges(PortRangesT &&value)
CreateResourceConfigurationRequest & WithType(ResourceConfigurationType value)
bool ResourceGatewayIdentifierHasBeenSet() const
void SetResourceConfigurationGroupIdentifier(ResourceConfigurationGroupIdentifierT &&value)
const Aws::Vector< Aws::String > & GetPortRanges() const
virtual const char * GetServiceRequestName() const override
CreateResourceConfigurationRequest & WithTags(TagsT &&value)
CreateResourceConfigurationRequest & WithProtocol(ProtocolType value)
const Aws::String & GetResourceGatewayIdentifier() const
bool TypeHasBeenSet() const
void SetClientToken(ClientTokenT &&value)
CreateResourceConfigurationRequest & AddPortRanges(PortRangesT &&value)
const Aws::String & GetName() const
CreateResourceConfigurationRequest & WithPortRanges(PortRangesT &&value)
bool NameHasBeenSet() const
bool ClientTokenHasBeenSet() const
bool ResourceConfigurationDefinitionHasBeenSet() const
void SetResourceConfigurationDefinition(ResourceConfigurationDefinitionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateResourceConfigurationRequest & WithResourceConfigurationGroupIdentifier(ResourceConfigurationGroupIdentifierT &&value)
void SetResourceGatewayIdentifier(ResourceGatewayIdentifierT &&value)
ResourceConfigurationType GetType() const
CreateResourceConfigurationRequest & WithResourceGatewayIdentifier(ResourceGatewayIdentifierT &&value)
void SetTags(TagsT &&value)
ProtocolType GetProtocol() const
bool TagsHasBeenSet() const
bool ProtocolHasBeenSet() const
const Aws::String & GetClientToken() const
void SetName(NameT &&value)
void SetProtocol(ProtocolType value)
CreateResourceConfigurationRequest & WithResourceConfigurationDefinition(ResourceConfigurationDefinitionT &&value)
bool AllowAssociationToShareableServiceNetworkHasBeenSet() const
CreateResourceConfigurationRequest & WithAllowAssociationToShareableServiceNetwork(bool value)
bool ResourceConfigurationGroupIdentifierHasBeenSet() const
CreateResourceConfigurationRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const ResourceConfigurationDefinition & GetResourceConfigurationDefinition() const
void SetType(ResourceConfigurationType value)
CreateResourceConfigurationRequest & WithClientToken(ClientTokenT &&value)
bool GetAllowAssociationToShareableServiceNetwork() const
CreateResourceConfigurationRequest & WithName(NameT &&value)
AWS_VPCLATTICE_API CreateResourceConfigurationRequest()=default
ResourceConfigurationType
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