7#include <aws/gamelift/GameLift_EXPORTS.h>
8#include <aws/gamelift/GameLiftRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/gamelift/model/ConnectionPortRange.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/gamelift/model/ContainerFleetBillingType.h>
13#include <aws/gamelift/model/ProtectionPolicy.h>
14#include <aws/gamelift/model/GameSessionCreationLimitPolicy.h>
15#include <aws/gamelift/model/LogConfiguration.h>
16#include <aws/gamelift/model/IpPermission.h>
17#include <aws/gamelift/model/LocationConfiguration.h>
18#include <aws/gamelift/model/Tag.h>
60 template<
typename FleetRoleArnT = Aws::String>
61 void SetFleetRoleArn(FleetRoleArnT&& value) { m_fleetRoleArnHasBeenSet =
true; m_fleetRoleArn = std::forward<FleetRoleArnT>(value); }
62 template<
typename FleetRoleArnT = Aws::String>
72 template<
typename DescriptionT = Aws::String>
73 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
74 template<
typename DescriptionT = Aws::String>
92 template<
typename GameServerContainerGroupDefinitionNameT = Aws::String>
93 void SetGameServerContainerGroupDefinitionName(GameServerContainerGroupDefinitionNameT&& value) { m_gameServerContainerGroupDefinitionNameHasBeenSet =
true; m_gameServerContainerGroupDefinitionName = std::forward<GameServerContainerGroupDefinitionNameT>(value); }
94 template<
typename GameServerContainerGroupDefinitionNameT = Aws::String>
114 template<
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
115 void SetPerInstanceContainerGroupDefinitionName(PerInstanceContainerGroupDefinitionNameT&& value) { m_perInstanceContainerGroupDefinitionNameHasBeenSet =
true; m_perInstanceContainerGroupDefinitionName = std::forward<PerInstanceContainerGroupDefinitionNameT>(value); }
116 template<
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
139 template<
typename InstanceConnectionPortRangeT = ConnectionPortRange>
140 void SetInstanceConnectionPortRange(InstanceConnectionPortRangeT&& value) { m_instanceConnectionPortRangeHasBeenSet =
true; m_instanceConnectionPortRange = std::forward<InstanceConnectionPortRangeT>(value); }
141 template<
typename InstanceConnectionPortRangeT = ConnectionPortRange>
166 template<
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
167 void SetInstanceInboundPermissions(InstanceInboundPermissionsT&& value) { m_instanceInboundPermissionsHasBeenSet =
true; m_instanceInboundPermissions = std::forward<InstanceInboundPermissionsT>(value); }
168 template<
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
170 template<
typename InstanceInboundPermissionsT = IpPermission>
206 template<
typename InstanceTypeT = Aws::String>
207 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
208 template<
typename InstanceTypeT = Aws::String>
240 template<
typename LocationsT = Aws::Vector<LocationConfiguration>>
241 void SetLocations(LocationsT&& value) { m_locationsHasBeenSet =
true; m_locations = std::forward<LocationsT>(value); }
242 template<
typename LocationsT = Aws::Vector<LocationConfiguration>>
244 template<
typename LocationsT = LocationConfiguration>
258 template<
typename MetricGroupsT = Aws::Vector<Aws::String>>
259 void SetMetricGroups(MetricGroupsT&& value) { m_metricGroupsHasBeenSet =
true; m_metricGroups = std::forward<MetricGroupsT>(value); }
260 template<
typename MetricGroupsT = Aws::Vector<Aws::String>>
262 template<
typename MetricGroupsT = Aws::String>
293 template<
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
294 void SetGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT&& value) { m_gameSessionCreationLimitPolicyHasBeenSet =
true; m_gameSessionCreationLimitPolicy = std::forward<GameSessionCreationLimitPolicyT>(value); }
295 template<
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
316 template<
typename LogConfigurationT = LogConfiguration>
317 void SetLogConfiguration(LogConfigurationT&& value) { m_logConfigurationHasBeenSet =
true; m_logConfiguration = std::forward<LogConfigurationT>(value); }
318 template<
typename LogConfigurationT = LogConfiguration>
334 template<
typename TagsT = Aws::Vector<Tag>>
335 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
336 template<
typename TagsT = Aws::Vector<Tag>>
338 template<
typename TagsT = Tag>
344 bool m_fleetRoleArnHasBeenSet =
false;
347 bool m_descriptionHasBeenSet =
false;
349 Aws::String m_gameServerContainerGroupDefinitionName;
350 bool m_gameServerContainerGroupDefinitionNameHasBeenSet =
false;
352 Aws::String m_perInstanceContainerGroupDefinitionName;
353 bool m_perInstanceContainerGroupDefinitionNameHasBeenSet =
false;
356 bool m_instanceConnectionPortRangeHasBeenSet =
false;
359 bool m_instanceInboundPermissionsHasBeenSet =
false;
361 int m_gameServerContainerGroupsPerInstance{0};
362 bool m_gameServerContainerGroupsPerInstanceHasBeenSet =
false;
365 bool m_instanceTypeHasBeenSet =
false;
368 bool m_billingTypeHasBeenSet =
false;
371 bool m_locationsHasBeenSet =
false;
374 bool m_metricGroupsHasBeenSet =
false;
377 bool m_newGameSessionProtectionPolicyHasBeenSet =
false;
379 GameSessionCreationLimitPolicy m_gameSessionCreationLimitPolicy;
380 bool m_gameSessionCreationLimitPolicyHasBeenSet =
false;
382 LogConfiguration m_logConfiguration;
383 bool m_logConfigurationHasBeenSet =
false;
386 bool m_tagsHasBeenSet =
false;
virtual const char * GetServiceRequestName() const override
void SetTags(TagsT &&value)
CreateContainerFleetRequest & WithPerInstanceContainerGroupDefinitionName(PerInstanceContainerGroupDefinitionNameT &&value)
CreateContainerFleetRequest & WithGameServerContainerGroupsPerInstance(int value)
bool GameSessionCreationLimitPolicyHasBeenSet() const
void SetBillingType(ContainerFleetBillingType value)
bool GameServerContainerGroupDefinitionNameHasBeenSet() const
const Aws::Vector< Tag > & GetTags() const
CreateContainerFleetRequest & AddLocations(LocationsT &&value)
int GetGameServerContainerGroupsPerInstance() const
const ConnectionPortRange & GetInstanceConnectionPortRange() const
void SetGameServerContainerGroupsPerInstance(int value)
CreateContainerFleetRequest & WithGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT &&value)
void SetGameServerContainerGroupDefinitionName(GameServerContainerGroupDefinitionNameT &&value)
CreateContainerFleetRequest & WithInstanceConnectionPortRange(InstanceConnectionPortRangeT &&value)
bool BillingTypeHasBeenSet() const
bool LogConfigurationHasBeenSet() const
bool FleetRoleArnHasBeenSet() const
void SetLocations(LocationsT &&value)
CreateContainerFleetRequest & WithDescription(DescriptionT &&value)
const LogConfiguration & GetLogConfiguration() const
CreateContainerFleetRequest & WithLogConfiguration(LogConfigurationT &&value)
CreateContainerFleetRequest & AddMetricGroups(MetricGroupsT &&value)
void SetMetricGroups(MetricGroupsT &&value)
void SetDescription(DescriptionT &&value)
const Aws::String & GetGameServerContainerGroupDefinitionName() const
bool TagsHasBeenSet() const
bool DescriptionHasBeenSet() const
CreateContainerFleetRequest & WithBillingType(ContainerFleetBillingType value)
void SetPerInstanceContainerGroupDefinitionName(PerInstanceContainerGroupDefinitionNameT &&value)
bool LocationsHasBeenSet() const
CreateContainerFleetRequest & WithInstanceInboundPermissions(InstanceInboundPermissionsT &&value)
CreateContainerFleetRequest & WithLocations(LocationsT &&value)
AWS_GAMELIFT_API CreateContainerFleetRequest()=default
ContainerFleetBillingType GetBillingType() const
bool InstanceInboundPermissionsHasBeenSet() const
void SetLogConfiguration(LogConfigurationT &&value)
bool MetricGroupsHasBeenSet() const
CreateContainerFleetRequest & WithFleetRoleArn(FleetRoleArnT &&value)
const Aws::String & GetFleetRoleArn() const
void SetInstanceType(InstanceTypeT &&value)
void SetInstanceInboundPermissions(InstanceInboundPermissionsT &&value)
CreateContainerFleetRequest & AddTags(TagsT &&value)
AWS_GAMELIFT_API Aws::String SerializePayload() const override
CreateContainerFleetRequest & WithTags(TagsT &&value)
const Aws::Vector< Aws::String > & GetMetricGroups() const
bool NewGameSessionProtectionPolicyHasBeenSet() const
bool InstanceTypeHasBeenSet() const
AWS_GAMELIFT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
CreateContainerFleetRequest & AddInstanceInboundPermissions(InstanceInboundPermissionsT &&value)
const GameSessionCreationLimitPolicy & GetGameSessionCreationLimitPolicy() const
const Aws::Vector< IpPermission > & GetInstanceInboundPermissions() const
void SetGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT &&value)
bool PerInstanceContainerGroupDefinitionNameHasBeenSet() const
const Aws::String & GetInstanceType() const
CreateContainerFleetRequest & WithInstanceType(InstanceTypeT &&value)
const Aws::Vector< LocationConfiguration > & GetLocations() const
bool InstanceConnectionPortRangeHasBeenSet() const
ProtectionPolicy GetNewGameSessionProtectionPolicy() const
CreateContainerFleetRequest & WithNewGameSessionProtectionPolicy(ProtectionPolicy value)
void SetNewGameSessionProtectionPolicy(ProtectionPolicy value)
const Aws::String & GetPerInstanceContainerGroupDefinitionName() const
void SetInstanceConnectionPortRange(InstanceConnectionPortRangeT &&value)
CreateContainerFleetRequest & WithGameServerContainerGroupDefinitionName(GameServerContainerGroupDefinitionNameT &&value)
const Aws::String & GetDescription() const
CreateContainerFleetRequest & WithMetricGroups(MetricGroupsT &&value)
void SetFleetRoleArn(FleetRoleArnT &&value)
bool GameServerContainerGroupsPerInstanceHasBeenSet() const
ContainerFleetBillingType
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