7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/gamelift/GameLiftRequest.h>
10#include <aws/gamelift/GameLift_EXPORTS.h>
11#include <aws/gamelift/model/ConnectionPortRange.h>
12#include <aws/gamelift/model/ContainerFleetBillingType.h>
13#include <aws/gamelift/model/GameSessionCreationLimitPolicy.h>
14#include <aws/gamelift/model/IpPermission.h>
15#include <aws/gamelift/model/LocationConfiguration.h>
16#include <aws/gamelift/model/LogConfiguration.h>
17#include <aws/gamelift/model/PlayerGatewayMode.h>
18#include <aws/gamelift/model/ProtectionPolicy.h>
19#include <aws/gamelift/model/Tag.h>
57 template <
typename FleetRoleArnT = Aws::String>
59 m_fleetRoleArnHasBeenSet =
true;
60 m_fleetRoleArn = std::forward<FleetRoleArnT>(value);
62 template <
typename FleetRoleArnT = Aws::String>
75 template <
typename DescriptionT = Aws::String>
77 m_descriptionHasBeenSet =
true;
78 m_description = std::forward<DescriptionT>(value);
80 template <
typename DescriptionT = Aws::String>
101 template <
typename GameServerContainerGroupDefinitionNameT = Aws::String>
103 m_gameServerContainerGroupDefinitionNameHasBeenSet =
true;
104 m_gameServerContainerGroupDefinitionName = std::forward<GameServerContainerGroupDefinitionNameT>(value);
106 template <
typename GameServerContainerGroupDefinitionNameT = Aws::String>
129 template <
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
131 m_perInstanceContainerGroupDefinitionNameHasBeenSet =
true;
132 m_perInstanceContainerGroupDefinitionName = std::forward<PerInstanceContainerGroupDefinitionNameT>(value);
134 template <
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
163 template <
typename InstanceConnectionPortRangeT = ConnectionPortRange>
165 m_instanceConnectionPortRangeHasBeenSet =
true;
166 m_instanceConnectionPortRange = std::forward<InstanceConnectionPortRangeT>(value);
168 template <
typename InstanceConnectionPortRangeT = ConnectionPortRange>
199 template <
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
201 m_instanceInboundPermissionsHasBeenSet =
true;
202 m_instanceInboundPermissions = std::forward<InstanceInboundPermissionsT>(value);
204 template <
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
209 template <
typename InstanceInboundPermissionsT = IpPermission>
211 m_instanceInboundPermissionsHasBeenSet =
true;
212 m_instanceInboundPermissions.emplace_back(std::forward<InstanceInboundPermissionsT>(value));
230 m_gameServerContainerGroupsPerInstanceHasBeenSet =
true;
231 m_gameServerContainerGroupsPerInstance = value;
255 template <
typename InstanceTypeT = Aws::String>
257 m_instanceTypeHasBeenSet =
true;
258 m_instanceType = std::forward<InstanceTypeT>(value);
260 template <
typename InstanceTypeT = Aws::String>
279 m_billingTypeHasBeenSet =
true;
280 m_billingType = value;
301 template <
typename LocationsT = Aws::Vector<LocationConfiguration>>
303 m_locationsHasBeenSet =
true;
304 m_locations = std::forward<LocationsT>(value);
306 template <
typename LocationsT = Aws::Vector<LocationConfiguration>>
311 template <
typename LocationsT = LocationConfiguration>
313 m_locationsHasBeenSet =
true;
314 m_locations.emplace_back(std::forward<LocationsT>(value));
329 template <
typename MetricGroupsT = Aws::Vector<Aws::String>>
331 m_metricGroupsHasBeenSet =
true;
332 m_metricGroups = std::forward<MetricGroupsT>(value);
334 template <
typename MetricGroupsT = Aws::Vector<Aws::String>>
339 template <
typename MetricGroupsT = Aws::String>
341 m_metricGroupsHasBeenSet =
true;
342 m_metricGroups.emplace_back(std::forward<MetricGroupsT>(value));
363 m_newGameSessionProtectionPolicyHasBeenSet =
true;
364 m_newGameSessionProtectionPolicy = value;
380 template <
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
382 m_gameSessionCreationLimitPolicyHasBeenSet =
true;
383 m_gameSessionCreationLimitPolicy = std::forward<GameSessionCreationLimitPolicyT>(value);
385 template <
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
409 template <
typename LogConfigurationT = LogConfiguration>
411 m_logConfigurationHasBeenSet =
true;
412 m_logConfiguration = std::forward<LogConfigurationT>(value);
414 template <
typename LogConfigurationT = LogConfiguration>
433 template <
typename TagsT = Aws::Vector<Tag>>
435 m_tagsHasBeenSet =
true;
436 m_tags = std::forward<TagsT>(value);
438 template <
typename TagsT = Aws::Vector<Tag>>
440 SetTags(std::forward<TagsT>(value));
443 template <
typename TagsT = Tag>
445 m_tagsHasBeenSet =
true;
446 m_tags.emplace_back(std::forward<TagsT>(value));
481 m_playerGatewayModeHasBeenSet =
true;
482 m_playerGatewayMode = value;
494 Aws::String m_gameServerContainerGroupDefinitionName;
496 Aws::String m_perInstanceContainerGroupDefinitionName;
502 int m_gameServerContainerGroupsPerInstance{0};
514 GameSessionCreationLimitPolicy m_gameSessionCreationLimitPolicy;
516 LogConfiguration m_logConfiguration;
521 bool m_fleetRoleArnHasBeenSet =
false;
522 bool m_descriptionHasBeenSet =
false;
523 bool m_gameServerContainerGroupDefinitionNameHasBeenSet =
false;
524 bool m_perInstanceContainerGroupDefinitionNameHasBeenSet =
false;
525 bool m_instanceConnectionPortRangeHasBeenSet =
false;
526 bool m_instanceInboundPermissionsHasBeenSet =
false;
527 bool m_gameServerContainerGroupsPerInstanceHasBeenSet =
false;
528 bool m_instanceTypeHasBeenSet =
false;
529 bool m_billingTypeHasBeenSet =
false;
530 bool m_locationsHasBeenSet =
false;
531 bool m_metricGroupsHasBeenSet =
false;
532 bool m_newGameSessionProtectionPolicyHasBeenSet =
false;
533 bool m_gameSessionCreationLimitPolicyHasBeenSet =
false;
534 bool m_logConfigurationHasBeenSet =
false;
535 bool m_tagsHasBeenSet =
false;
536 bool m_playerGatewayModeHasBeenSet =
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
bool PlayerGatewayModeHasBeenSet() 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
PlayerGatewayMode GetPlayerGatewayMode() const
const Aws::Vector< IpPermission > & GetInstanceInboundPermissions() const
void SetGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT &&value)
bool PerInstanceContainerGroupDefinitionNameHasBeenSet() const
const Aws::String & GetInstanceType() const
CreateContainerFleetRequest & WithInstanceType(InstanceTypeT &&value)
void SetPlayerGatewayMode(PlayerGatewayMode 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)
CreateContainerFleetRequest & WithPlayerGatewayMode(PlayerGatewayMode 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