7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.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/ContainerFleetLocationAttributes.h>
14#include <aws/gamelift/model/ContainerFleetStatus.h>
15#include <aws/gamelift/model/DeploymentDetails.h>
16#include <aws/gamelift/model/GameSessionCreationLimitPolicy.h>
17#include <aws/gamelift/model/IpPermission.h>
18#include <aws/gamelift/model/LogConfiguration.h>
19#include <aws/gamelift/model/ProtectionPolicy.h>
52 template <
typename FleetIdT = Aws::String>
54 m_fleetIdHasBeenSet =
true;
55 m_fleetId = std::forward<FleetIdT>(value);
57 template <
typename FleetIdT = Aws::String>
76 template <
typename FleetArnT = Aws::String>
78 m_fleetArnHasBeenSet =
true;
79 m_fleetArn = std::forward<FleetArnT>(value);
81 template <
typename FleetArnT = Aws::String>
98 template <
typename FleetRoleArnT = Aws::String>
100 m_fleetRoleArnHasBeenSet =
true;
101 m_fleetRoleArn = std::forward<FleetRoleArnT>(value);
103 template <
typename FleetRoleArnT = Aws::String>
118 template <
typename GameServerContainerGroupDefinitionNameT = Aws::String>
120 m_gameServerContainerGroupDefinitionNameHasBeenSet =
true;
121 m_gameServerContainerGroupDefinitionName = std::forward<GameServerContainerGroupDefinitionNameT>(value);
123 template <
typename GameServerContainerGroupDefinitionNameT = Aws::String>
139 template <
typename GameServerContainerGroupDefinitionArnT = Aws::String>
141 m_gameServerContainerGroupDefinitionArnHasBeenSet =
true;
142 m_gameServerContainerGroupDefinitionArn = std::forward<GameServerContainerGroupDefinitionArnT>(value);
144 template <
typename GameServerContainerGroupDefinitionArnT = Aws::String>
157 template <
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
159 m_perInstanceContainerGroupDefinitionNameHasBeenSet =
true;
160 m_perInstanceContainerGroupDefinitionName = std::forward<PerInstanceContainerGroupDefinitionNameT>(value);
162 template <
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
178 template <
typename PerInstanceContainerGroupDefinitionArnT = Aws::String>
180 m_perInstanceContainerGroupDefinitionArnHasBeenSet =
true;
181 m_perInstanceContainerGroupDefinitionArn = std::forward<PerInstanceContainerGroupDefinitionArnT>(value);
183 template <
typename PerInstanceContainerGroupDefinitionArnT = Aws::String>
194 template <
typename InstanceConnectionPortRangeT = ConnectionPortRange>
196 m_instanceConnectionPortRangeHasBeenSet =
true;
197 m_instanceConnectionPortRange = std::forward<InstanceConnectionPortRangeT>(value);
199 template <
typename InstanceConnectionPortRangeT = ConnectionPortRange>
213 template <
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
215 m_instanceInboundPermissionsHasBeenSet =
true;
216 m_instanceInboundPermissions = std::forward<InstanceInboundPermissionsT>(value);
218 template <
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
223 template <
typename InstanceInboundPermissionsT = IpPermission>
225 m_instanceInboundPermissionsHasBeenSet =
true;
226 m_instanceInboundPermissions.emplace_back(std::forward<InstanceInboundPermissionsT>(value));
239 m_gameServerContainerGroupsPerInstanceHasBeenSet =
true;
240 m_gameServerContainerGroupsPerInstance = value;
257 return m_maximumGameServerContainerGroupsPerInstanceHasBeenSet;
260 m_maximumGameServerContainerGroupsPerInstanceHasBeenSet =
true;
261 m_maximumGameServerContainerGroupsPerInstance = value;
278 template <
typename InstanceTypeT = Aws::String>
280 m_instanceTypeHasBeenSet =
true;
281 m_instanceType = std::forward<InstanceTypeT>(value);
283 template <
typename InstanceTypeT = Aws::String>
301 m_billingTypeHasBeenSet =
true;
302 m_billingType = value;
316 template <
typename DescriptionT = Aws::String>
318 m_descriptionHasBeenSet =
true;
319 m_description = std::forward<DescriptionT>(value);
321 template <
typename DescriptionT = Aws::String>
336 template <
typename CreationTimeT = Aws::Utils::DateTime>
338 m_creationTimeHasBeenSet =
true;
339 m_creationTime = std::forward<CreationTimeT>(value);
341 template <
typename CreationTimeT = Aws::Utils::DateTime>
355 template <
typename MetricGroupsT = Aws::Vector<Aws::String>>
357 m_metricGroupsHasBeenSet =
true;
358 m_metricGroups = std::forward<MetricGroupsT>(value);
360 template <
typename MetricGroupsT = Aws::Vector<Aws::String>>
365 template <
typename MetricGroupsT = Aws::String>
367 m_metricGroupsHasBeenSet =
true;
368 m_metricGroups.emplace_back(std::forward<MetricGroupsT>(value));
388 m_newGameSessionProtectionPolicyHasBeenSet =
true;
389 m_newGameSessionProtectionPolicy = value;
405 template <
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
407 m_gameSessionCreationLimitPolicyHasBeenSet =
true;
408 m_gameSessionCreationLimitPolicy = std::forward<GameSessionCreationLimitPolicyT>(value);
410 template <
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
433 m_statusHasBeenSet =
true;
448 template <
typename DeploymentDetailsT = DeploymentDetails>
450 m_deploymentDetailsHasBeenSet =
true;
451 m_deploymentDetails = std::forward<DeploymentDetailsT>(value);
453 template <
typename DeploymentDetailsT = DeploymentDetails>
472 template <
typename LogConfigurationT = LogConfiguration>
474 m_logConfigurationHasBeenSet =
true;
475 m_logConfiguration = std::forward<LogConfigurationT>(value);
477 template <
typename LogConfigurationT = LogConfiguration>
491 template <
typename LocationAttributesT = Aws::Vector<ContainerFleetLocationAttributes>>
493 m_locationAttributesHasBeenSet =
true;
494 m_locationAttributes = std::forward<LocationAttributesT>(value);
496 template <
typename LocationAttributesT = Aws::Vector<ContainerFleetLocationAttributes>>
501 template <
typename LocationAttributesT = ContainerFleetLocationAttributes>
503 m_locationAttributesHasBeenSet =
true;
504 m_locationAttributes.emplace_back(std::forward<LocationAttributesT>(value));
515 Aws::String m_gameServerContainerGroupDefinitionName;
517 Aws::String m_gameServerContainerGroupDefinitionArn;
519 Aws::String m_perInstanceContainerGroupDefinitionName;
521 Aws::String m_perInstanceContainerGroupDefinitionArn;
527 int m_gameServerContainerGroupsPerInstance{0};
529 int m_maximumGameServerContainerGroupsPerInstance{0};
543 GameSessionCreationLimitPolicy m_gameSessionCreationLimitPolicy;
547 DeploymentDetails m_deploymentDetails;
549 LogConfiguration m_logConfiguration;
552 bool m_fleetIdHasBeenSet =
false;
553 bool m_fleetArnHasBeenSet =
false;
554 bool m_fleetRoleArnHasBeenSet =
false;
555 bool m_gameServerContainerGroupDefinitionNameHasBeenSet =
false;
556 bool m_gameServerContainerGroupDefinitionArnHasBeenSet =
false;
557 bool m_perInstanceContainerGroupDefinitionNameHasBeenSet =
false;
558 bool m_perInstanceContainerGroupDefinitionArnHasBeenSet =
false;
559 bool m_instanceConnectionPortRangeHasBeenSet =
false;
560 bool m_instanceInboundPermissionsHasBeenSet =
false;
561 bool m_gameServerContainerGroupsPerInstanceHasBeenSet =
false;
562 bool m_maximumGameServerContainerGroupsPerInstanceHasBeenSet =
false;
563 bool m_instanceTypeHasBeenSet =
false;
564 bool m_billingTypeHasBeenSet =
false;
565 bool m_descriptionHasBeenSet =
false;
566 bool m_creationTimeHasBeenSet =
false;
567 bool m_metricGroupsHasBeenSet =
false;
568 bool m_newGameSessionProtectionPolicyHasBeenSet =
false;
569 bool m_gameSessionCreationLimitPolicyHasBeenSet =
false;
570 bool m_statusHasBeenSet =
false;
571 bool m_deploymentDetailsHasBeenSet =
false;
572 bool m_logConfigurationHasBeenSet =
false;
573 bool m_locationAttributesHasBeenSet =
false;
ContainerFleet & WithGameServerContainerGroupDefinitionArn(GameServerContainerGroupDefinitionArnT &&value)
bool PerInstanceContainerGroupDefinitionArnHasBeenSet() const
ContainerFleet & WithMetricGroups(MetricGroupsT &&value)
ContainerFleet & WithFleetArn(FleetArnT &&value)
bool FleetRoleArnHasBeenSet() const
ContainerFleet & WithPerInstanceContainerGroupDefinitionName(PerInstanceContainerGroupDefinitionNameT &&value)
AWS_GAMELIFT_API ContainerFleet()=default
void SetGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT &&value)
void SetLocationAttributes(LocationAttributesT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
ContainerFleet & WithLocationAttributes(LocationAttributesT &&value)
const Aws::String & GetDescription() const
ContainerFleet & WithCreationTime(CreationTimeT &&value)
const Aws::String & GetFleetArn() const
void SetDeploymentDetails(DeploymentDetailsT &&value)
ContainerFleet & WithGameServerContainerGroupDefinitionName(GameServerContainerGroupDefinitionNameT &&value)
bool GameServerContainerGroupDefinitionArnHasBeenSet() const
void SetFleetId(FleetIdT &&value)
ProtectionPolicy GetNewGameSessionProtectionPolicy() const
ContainerFleetStatus GetStatus() const
void SetLogConfiguration(LogConfigurationT &&value)
ContainerFleet & WithFleetRoleArn(FleetRoleArnT &&value)
const Aws::String & GetGameServerContainerGroupDefinitionName() const
bool BillingTypeHasBeenSet() const
void SetCreationTime(CreationTimeT &&value)
ContainerFleetBillingType GetBillingType() const
bool StatusHasBeenSet() const
AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const
bool InstanceInboundPermissionsHasBeenSet() const
void SetGameServerContainerGroupDefinitionArn(GameServerContainerGroupDefinitionArnT &&value)
bool MetricGroupsHasBeenSet() const
bool LocationAttributesHasBeenSet() const
ContainerFleet & AddLocationAttributes(LocationAttributesT &&value)
const LogConfiguration & GetLogConfiguration() const
const GameSessionCreationLimitPolicy & GetGameSessionCreationLimitPolicy() const
void SetDescription(DescriptionT &&value)
ContainerFleet & WithGameServerContainerGroupsPerInstance(int value)
ContainerFleet & WithNewGameSessionProtectionPolicy(ProtectionPolicy value)
const DeploymentDetails & GetDeploymentDetails() const
bool GameServerContainerGroupDefinitionNameHasBeenSet() const
ContainerFleet & WithInstanceInboundPermissions(InstanceInboundPermissionsT &&value)
const Aws::String & GetPerInstanceContainerGroupDefinitionName() const
const Aws::Vector< Aws::String > & GetMetricGroups() const
void SetBillingType(ContainerFleetBillingType value)
const Aws::Vector< IpPermission > & GetInstanceInboundPermissions() const
const Aws::String & GetGameServerContainerGroupDefinitionArn() const
const Aws::Vector< ContainerFleetLocationAttributes > & GetLocationAttributes() const
ContainerFleet & WithStatus(ContainerFleetStatus value)
const Aws::String & GetInstanceType() const
bool NewGameSessionProtectionPolicyHasBeenSet() const
ContainerFleet & WithMaximumGameServerContainerGroupsPerInstance(int value)
void SetInstanceType(InstanceTypeT &&value)
bool MaximumGameServerContainerGroupsPerInstanceHasBeenSet() const
ContainerFleet & WithDeploymentDetails(DeploymentDetailsT &&value)
ContainerFleet & WithBillingType(ContainerFleetBillingType value)
bool FleetIdHasBeenSet() const
bool DeploymentDetailsHasBeenSet() const
void SetFleetArn(FleetArnT &&value)
void SetMaximumGameServerContainerGroupsPerInstance(int value)
bool CreationTimeHasBeenSet() const
void SetNewGameSessionProtectionPolicy(ProtectionPolicy value)
const ConnectionPortRange & GetInstanceConnectionPortRange() const
void SetStatus(ContainerFleetStatus value)
bool GameSessionCreationLimitPolicyHasBeenSet() const
bool InstanceTypeHasBeenSet() const
void SetInstanceInboundPermissions(InstanceInboundPermissionsT &&value)
ContainerFleet & WithPerInstanceContainerGroupDefinitionArn(PerInstanceContainerGroupDefinitionArnT &&value)
bool DescriptionHasBeenSet() const
ContainerFleet & WithLogConfiguration(LogConfigurationT &&value)
void SetGameServerContainerGroupsPerInstance(int value)
void SetInstanceConnectionPortRange(InstanceConnectionPortRangeT &&value)
ContainerFleet & WithFleetId(FleetIdT &&value)
const Aws::String & GetFleetId() const
int GetGameServerContainerGroupsPerInstance() const
const Aws::String & GetPerInstanceContainerGroupDefinitionArn() const
bool GameServerContainerGroupsPerInstanceHasBeenSet() const
const Aws::String & GetFleetRoleArn() const
void SetPerInstanceContainerGroupDefinitionName(PerInstanceContainerGroupDefinitionNameT &&value)
ContainerFleet & AddMetricGroups(MetricGroupsT &&value)
ContainerFleet & WithInstanceType(InstanceTypeT &&value)
bool LogConfigurationHasBeenSet() const
ContainerFleet & WithDescription(DescriptionT &&value)
bool FleetArnHasBeenSet() const
ContainerFleet & AddInstanceInboundPermissions(InstanceInboundPermissionsT &&value)
int GetMaximumGameServerContainerGroupsPerInstance() const
AWS_GAMELIFT_API ContainerFleet & operator=(Aws::Utils::Json::JsonView jsonValue)
ContainerFleet & WithInstanceConnectionPortRange(InstanceConnectionPortRangeT &&value)
bool InstanceConnectionPortRangeHasBeenSet() const
void SetFleetRoleArn(FleetRoleArnT &&value)
AWS_GAMELIFT_API ContainerFleet(Aws::Utils::Json::JsonView jsonValue)
ContainerFleet & WithGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT &&value)
void SetGameServerContainerGroupDefinitionName(GameServerContainerGroupDefinitionNameT &&value)
void SetPerInstanceContainerGroupDefinitionArn(PerInstanceContainerGroupDefinitionArnT &&value)
void SetMetricGroups(MetricGroupsT &&value)
bool PerInstanceContainerGroupDefinitionNameHasBeenSet() const
ContainerFleetBillingType
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue