7#include <aws/gamelift/GameLift_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/gamelift/model/ConnectionPortRange.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/gamelift/model/ContainerFleetBillingType.h>
12#include <aws/core/utils/DateTime.h>
13#include <aws/gamelift/model/ProtectionPolicy.h>
14#include <aws/gamelift/model/GameSessionCreationLimitPolicy.h>
15#include <aws/gamelift/model/ContainerFleetStatus.h>
16#include <aws/gamelift/model/DeploymentDetails.h>
17#include <aws/gamelift/model/LogConfiguration.h>
18#include <aws/gamelift/model/IpPermission.h>
19#include <aws/gamelift/model/ContainerFleetLocationAttributes.h>
58 template<
typename FleetIdT = Aws::String>
59 void SetFleetId(FleetIdT&& value) { m_fleetIdHasBeenSet =
true; m_fleetId = std::forward<FleetIdT>(value); }
60 template<
typename FleetIdT = Aws::String>
76 template<
typename FleetArnT = Aws::String>
77 void SetFleetArn(FleetArnT&& value) { m_fleetArnHasBeenSet =
true; m_fleetArn = std::forward<FleetArnT>(value); }
78 template<
typename FleetArnT = Aws::String>
92 template<
typename FleetRoleArnT = Aws::String>
93 void SetFleetRoleArn(FleetRoleArnT&& value) { m_fleetRoleArnHasBeenSet =
true; m_fleetRoleArn = std::forward<FleetRoleArnT>(value); }
94 template<
typename FleetRoleArnT = Aws::String>
106 template<
typename GameServerContainerGroupDefinitionNameT = Aws::String>
107 void SetGameServerContainerGroupDefinitionName(GameServerContainerGroupDefinitionNameT&& value) { m_gameServerContainerGroupDefinitionNameHasBeenSet =
true; m_gameServerContainerGroupDefinitionName = std::forward<GameServerContainerGroupDefinitionNameT>(value); }
108 template<
typename GameServerContainerGroupDefinitionNameT = Aws::String>
121 template<
typename GameServerContainerGroupDefinitionArnT = Aws::String>
122 void SetGameServerContainerGroupDefinitionArn(GameServerContainerGroupDefinitionArnT&& value) { m_gameServerContainerGroupDefinitionArnHasBeenSet =
true; m_gameServerContainerGroupDefinitionArn = std::forward<GameServerContainerGroupDefinitionArnT>(value); }
123 template<
typename GameServerContainerGroupDefinitionArnT = Aws::String>
133 template<
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
134 void SetPerInstanceContainerGroupDefinitionName(PerInstanceContainerGroupDefinitionNameT&& value) { m_perInstanceContainerGroupDefinitionNameHasBeenSet =
true; m_perInstanceContainerGroupDefinitionName = std::forward<PerInstanceContainerGroupDefinitionNameT>(value); }
135 template<
typename PerInstanceContainerGroupDefinitionNameT = Aws::String>
148 template<
typename PerInstanceContainerGroupDefinitionArnT = Aws::String>
149 void SetPerInstanceContainerGroupDefinitionArn(PerInstanceContainerGroupDefinitionArnT&& value) { m_perInstanceContainerGroupDefinitionArnHasBeenSet =
true; m_perInstanceContainerGroupDefinitionArn = std::forward<PerInstanceContainerGroupDefinitionArnT>(value); }
150 template<
typename PerInstanceContainerGroupDefinitionArnT = Aws::String>
158 template<
typename InstanceConnectionPortRangeT = ConnectionPortRange>
159 void SetInstanceConnectionPortRange(InstanceConnectionPortRangeT&& value) { m_instanceConnectionPortRangeHasBeenSet =
true; m_instanceConnectionPortRange = std::forward<InstanceConnectionPortRangeT>(value); }
160 template<
typename InstanceConnectionPortRangeT = ConnectionPortRange>
171 template<
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
172 void SetInstanceInboundPermissions(InstanceInboundPermissionsT&& value) { m_instanceInboundPermissionsHasBeenSet =
true; m_instanceInboundPermissions = std::forward<InstanceInboundPermissionsT>(value); }
173 template<
typename InstanceInboundPermissionsT = Aws::Vector<IpPermission>>
175 template<
typename InstanceInboundPermissionsT = IpPermission>
176 ContainerFleet&
AddInstanceInboundPermissions(InstanceInboundPermissionsT&& value) { m_instanceInboundPermissionsHasBeenSet =
true; m_instanceInboundPermissions.emplace_back(std::forward<InstanceInboundPermissionsT>(value));
return *
this; }
212 template<
typename InstanceTypeT = Aws::String>
213 void SetInstanceType(InstanceTypeT&& value) { m_instanceTypeHasBeenSet =
true; m_instanceType = std::forward<InstanceTypeT>(value); }
214 template<
typename InstanceTypeT = Aws::String>
238 template<
typename DescriptionT = Aws::String>
239 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet =
true; m_description = std::forward<DescriptionT>(value); }
240 template<
typename DescriptionT = Aws::String>
252 template<
typename CreationTimeT = Aws::Utils::DateTime>
253 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet =
true; m_creationTime = std::forward<CreationTimeT>(value); }
254 template<
typename CreationTimeT = Aws::Utils::DateTime>
265 template<
typename MetricGroupsT = Aws::Vector<Aws::String>>
266 void SetMetricGroups(MetricGroupsT&& value) { m_metricGroupsHasBeenSet =
true; m_metricGroups = std::forward<MetricGroupsT>(value); }
267 template<
typename MetricGroupsT = Aws::Vector<Aws::String>>
269 template<
typename MetricGroupsT = Aws::String>
270 ContainerFleet&
AddMetricGroups(MetricGroupsT&& value) { m_metricGroupsHasBeenSet =
true; m_metricGroups.emplace_back(std::forward<MetricGroupsT>(value));
return *
this; }
299 template<
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
300 void SetGameSessionCreationLimitPolicy(GameSessionCreationLimitPolicyT&& value) { m_gameSessionCreationLimitPolicyHasBeenSet =
true; m_gameSessionCreationLimitPolicy = std::forward<GameSessionCreationLimitPolicyT>(value); }
301 template<
typename GameSessionCreationLimitPolicyT = GameSessionCreationLimitPolicy>
330 template<
typename DeploymentDetailsT = DeploymentDetails>
331 void SetDeploymentDetails(DeploymentDetailsT&& value) { m_deploymentDetailsHasBeenSet =
true; m_deploymentDetails = std::forward<DeploymentDetailsT>(value); }
332 template<
typename DeploymentDetailsT = DeploymentDetails>
348 template<
typename LogConfigurationT = LogConfiguration>
349 void SetLogConfiguration(LogConfigurationT&& value) { m_logConfigurationHasBeenSet =
true; m_logConfiguration = std::forward<LogConfigurationT>(value); }
350 template<
typename LogConfigurationT = LogConfiguration>
361 template<
typename LocationAttributesT = Aws::Vector<ContainerFleetLocationAttributes>>
362 void SetLocationAttributes(LocationAttributesT&& value) { m_locationAttributesHasBeenSet =
true; m_locationAttributes = std::forward<LocationAttributesT>(value); }
363 template<
typename LocationAttributesT = Aws::Vector<ContainerFleetLocationAttributes>>
365 template<
typename LocationAttributesT = ContainerFleetLocationAttributes>
366 ContainerFleet&
AddLocationAttributes(LocationAttributesT&& value) { m_locationAttributesHasBeenSet =
true; m_locationAttributes.emplace_back(std::forward<LocationAttributesT>(value));
return *
this; }
371 bool m_fleetIdHasBeenSet =
false;
374 bool m_fleetArnHasBeenSet =
false;
377 bool m_fleetRoleArnHasBeenSet =
false;
379 Aws::String m_gameServerContainerGroupDefinitionName;
380 bool m_gameServerContainerGroupDefinitionNameHasBeenSet =
false;
382 Aws::String m_gameServerContainerGroupDefinitionArn;
383 bool m_gameServerContainerGroupDefinitionArnHasBeenSet =
false;
385 Aws::String m_perInstanceContainerGroupDefinitionName;
386 bool m_perInstanceContainerGroupDefinitionNameHasBeenSet =
false;
388 Aws::String m_perInstanceContainerGroupDefinitionArn;
389 bool m_perInstanceContainerGroupDefinitionArnHasBeenSet =
false;
392 bool m_instanceConnectionPortRangeHasBeenSet =
false;
395 bool m_instanceInboundPermissionsHasBeenSet =
false;
397 int m_gameServerContainerGroupsPerInstance{0};
398 bool m_gameServerContainerGroupsPerInstanceHasBeenSet =
false;
400 int m_maximumGameServerContainerGroupsPerInstance{0};
401 bool m_maximumGameServerContainerGroupsPerInstanceHasBeenSet =
false;
404 bool m_instanceTypeHasBeenSet =
false;
407 bool m_billingTypeHasBeenSet =
false;
410 bool m_descriptionHasBeenSet =
false;
413 bool m_creationTimeHasBeenSet =
false;
416 bool m_metricGroupsHasBeenSet =
false;
419 bool m_newGameSessionProtectionPolicyHasBeenSet =
false;
421 GameSessionCreationLimitPolicy m_gameSessionCreationLimitPolicy;
422 bool m_gameSessionCreationLimitPolicyHasBeenSet =
false;
425 bool m_statusHasBeenSet =
false;
427 DeploymentDetails m_deploymentDetails;
428 bool m_deploymentDetailsHasBeenSet =
false;
430 LogConfiguration m_logConfiguration;
431 bool m_logConfigurationHasBeenSet =
false;
434 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