7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/securityhub/model/AwsEcsServiceDeploymentConfigurationDetails.h>
11#include <aws/securityhub/model/AwsEcsServiceDeploymentControllerDetails.h>
12#include <aws/securityhub/model/AwsEcsServiceNetworkConfigurationDetails.h>
13#include <aws/securityhub/model/AwsEcsServiceCapacityProviderStrategyDetails.h>
14#include <aws/securityhub/model/AwsEcsServiceLoadBalancersDetails.h>
15#include <aws/securityhub/model/AwsEcsServicePlacementConstraintsDetails.h>
16#include <aws/securityhub/model/AwsEcsServicePlacementStrategiesDetails.h>
17#include <aws/securityhub/model/AwsEcsServiceServiceRegistriesDetails.h>
56 template<
typename CapacityProv
iderStrategyT = Aws::Vector<AwsEcsServiceCapacityProv
iderStrategyDetails>>
57 void SetCapacityProviderStrategy(CapacityProviderStrategyT&& value) { m_capacityProviderStrategyHasBeenSet =
true; m_capacityProviderStrategy = std::forward<CapacityProviderStrategyT>(value); }
58 template<
typename CapacityProv
iderStrategyT = Aws::Vector<AwsEcsServiceCapacityProv
iderStrategyDetails>>
60 template<
typename CapacityProv
iderStrategyT = AwsEcsServiceCapacityProv
iderStrategyDetails>
70 template<
typename ClusterT = Aws::String>
71 void SetCluster(ClusterT&& value) { m_clusterHasBeenSet =
true; m_cluster = std::forward<ClusterT>(value); }
72 template<
typename ClusterT = Aws::String>
83 template<
typename DeploymentConfigurationT = AwsEcsServiceDeploymentConfigurationDetails>
84 void SetDeploymentConfiguration(DeploymentConfigurationT&& value) { m_deploymentConfigurationHasBeenSet =
true; m_deploymentConfiguration = std::forward<DeploymentConfigurationT>(value); }
85 template<
typename DeploymentConfigurationT = AwsEcsServiceDeploymentConfigurationDetails>
95 template<
typename DeploymentControllerT = AwsEcsServiceDeploymentControllerDetails>
96 void SetDeploymentController(DeploymentControllerT&& value) { m_deploymentControllerHasBeenSet =
true; m_deploymentController = std::forward<DeploymentControllerT>(value); }
97 template<
typename DeploymentControllerT = AwsEcsServiceDeploymentControllerDetails>
108 inline void SetDesiredCount(
int value) { m_desiredCountHasBeenSet =
true; m_desiredCount = value; }
151 template<
typename LaunchTypeT = Aws::String>
152 void SetLaunchType(LaunchTypeT&& value) { m_launchTypeHasBeenSet =
true; m_launchType = std::forward<LaunchTypeT>(value); }
153 template<
typename LaunchTypeT = Aws::String>
163 template<
typename LoadBalancersT = Aws::Vector<AwsEcsServiceLoadBalancersDetails>>
164 void SetLoadBalancers(LoadBalancersT&& value) { m_loadBalancersHasBeenSet =
true; m_loadBalancers = std::forward<LoadBalancersT>(value); }
165 template<
typename LoadBalancersT = Aws::Vector<AwsEcsServiceLoadBalancersDetails>>
167 template<
typename LoadBalancersT = AwsEcsServiceLoadBalancersDetails>
177 template<
typename NameT = Aws::String>
178 void SetName(NameT&& value) { m_nameHasBeenSet =
true; m_name = std::forward<NameT>(value); }
179 template<
typename NameT = Aws::String>
190 template<
typename NetworkConfigurationT = AwsEcsServiceNetworkConfigurationDetails>
191 void SetNetworkConfiguration(NetworkConfigurationT&& value) { m_networkConfigurationHasBeenSet =
true; m_networkConfiguration = std::forward<NetworkConfigurationT>(value); }
192 template<
typename NetworkConfigurationT = AwsEcsServiceNetworkConfigurationDetails>
202 template<
typename PlacementConstra
intsT = Aws::Vector<AwsEcsServicePlacementConstra
intsDetails>>
203 void SetPlacementConstraints(PlacementConstraintsT&& value) { m_placementConstraintsHasBeenSet =
true; m_placementConstraints = std::forward<PlacementConstraintsT>(value); }
204 template<
typename PlacementConstra
intsT = Aws::Vector<AwsEcsServicePlacementConstra
intsDetails>>
206 template<
typename PlacementConstra
intsT = AwsEcsServicePlacementConstra
intsDetails>
216 template<
typename PlacementStrategiesT = Aws::Vector<AwsEcsServicePlacementStrategiesDetails>>
217 void SetPlacementStrategies(PlacementStrategiesT&& value) { m_placementStrategiesHasBeenSet =
true; m_placementStrategies = std::forward<PlacementStrategiesT>(value); }
218 template<
typename PlacementStrategiesT = Aws::Vector<AwsEcsServicePlacementStrategiesDetails>>
220 template<
typename PlacementStrategiesT = AwsEcsServicePlacementStrategiesDetails>
232 template<
typename PlatformVersionT = Aws::String>
233 void SetPlatformVersion(PlatformVersionT&& value) { m_platformVersionHasBeenSet =
true; m_platformVersion = std::forward<PlatformVersionT>(value); }
234 template<
typename PlatformVersionT = Aws::String>
247 template<
typename PropagateTagsT = Aws::String>
248 void SetPropagateTags(PropagateTagsT&& value) { m_propagateTagsHasBeenSet =
true; m_propagateTags = std::forward<PropagateTagsT>(value); }
249 template<
typename PropagateTagsT = Aws::String>
261 template<
typename RoleT = Aws::String>
262 void SetRole(RoleT&& value) { m_roleHasBeenSet =
true; m_role = std::forward<RoleT>(value); }
263 template<
typename RoleT = Aws::String>
282 template<
typename SchedulingStrategyT = Aws::String>
283 void SetSchedulingStrategy(SchedulingStrategyT&& value) { m_schedulingStrategyHasBeenSet =
true; m_schedulingStrategy = std::forward<SchedulingStrategyT>(value); }
284 template<
typename SchedulingStrategyT = Aws::String>
294 template<
typename ServiceArnT = Aws::String>
295 void SetServiceArn(ServiceArnT&& value) { m_serviceArnHasBeenSet =
true; m_serviceArn = std::forward<ServiceArnT>(value); }
296 template<
typename ServiceArnT = Aws::String>
307 template<
typename ServiceNameT = Aws::String>
308 void SetServiceName(ServiceNameT&& value) { m_serviceNameHasBeenSet =
true; m_serviceName = std::forward<ServiceNameT>(value); }
309 template<
typename ServiceNameT = Aws::String>
320 template<
typename ServiceRegistriesT = Aws::Vector<AwsEcsServiceServiceRegistriesDetails>>
321 void SetServiceRegistries(ServiceRegistriesT&& value) { m_serviceRegistriesHasBeenSet =
true; m_serviceRegistries = std::forward<ServiceRegistriesT>(value); }
322 template<
typename ServiceRegistriesT = Aws::Vector<AwsEcsServiceServiceRegistriesDetails>>
324 template<
typename ServiceRegistriesT = AwsEcsServiceServiceRegistriesDetails>
334 template<
typename TaskDefinitionT = Aws::String>
335 void SetTaskDefinition(TaskDefinitionT&& value) { m_taskDefinitionHasBeenSet =
true; m_taskDefinition = std::forward<TaskDefinitionT>(value); }
336 template<
typename TaskDefinitionT = Aws::String>
342 bool m_capacityProviderStrategyHasBeenSet =
false;
345 bool m_clusterHasBeenSet =
false;
348 bool m_deploymentConfigurationHasBeenSet =
false;
351 bool m_deploymentControllerHasBeenSet =
false;
353 int m_desiredCount{0};
354 bool m_desiredCountHasBeenSet =
false;
356 bool m_enableEcsManagedTags{
false};
357 bool m_enableEcsManagedTagsHasBeenSet =
false;
359 bool m_enableExecuteCommand{
false};
360 bool m_enableExecuteCommandHasBeenSet =
false;
362 int m_healthCheckGracePeriodSeconds{0};
363 bool m_healthCheckGracePeriodSecondsHasBeenSet =
false;
366 bool m_launchTypeHasBeenSet =
false;
369 bool m_loadBalancersHasBeenSet =
false;
372 bool m_nameHasBeenSet =
false;
374 AwsEcsServiceNetworkConfigurationDetails m_networkConfiguration;
375 bool m_networkConfigurationHasBeenSet =
false;
378 bool m_placementConstraintsHasBeenSet =
false;
381 bool m_placementStrategiesHasBeenSet =
false;
384 bool m_platformVersionHasBeenSet =
false;
387 bool m_propagateTagsHasBeenSet =
false;
390 bool m_roleHasBeenSet =
false;
393 bool m_schedulingStrategyHasBeenSet =
false;
396 bool m_serviceArnHasBeenSet =
false;
399 bool m_serviceNameHasBeenSet =
false;
402 bool m_serviceRegistriesHasBeenSet =
false;
405 bool m_taskDefinitionHasBeenSet =
false;
AwsEcsServiceDetails & WithNetworkConfiguration(NetworkConfigurationT &&value)
bool NetworkConfigurationHasBeenSet() const
AWS_SECURITYHUB_API AwsEcsServiceDetails()=default
int GetHealthCheckGracePeriodSeconds() const
AwsEcsServiceDetails & WithServiceRegistries(ServiceRegistriesT &&value)
void SetPlacementConstraints(PlacementConstraintsT &&value)
AwsEcsServiceDetails & WithServiceName(ServiceNameT &&value)
const Aws::String & GetSchedulingStrategy() const
bool DesiredCountHasBeenSet() const
AwsEcsServiceDetails & WithServiceArn(ServiceArnT &&value)
bool RoleHasBeenSet() const
AwsEcsServiceDetails & WithDeploymentController(DeploymentControllerT &&value)
bool PlacementConstraintsHasBeenSet() const
bool SchedulingStrategyHasBeenSet() const
bool ServiceNameHasBeenSet() const
void SetServiceName(ServiceNameT &&value)
const Aws::String & GetServiceArn() const
AwsEcsServiceDetails & WithCapacityProviderStrategy(CapacityProviderStrategyT &&value)
const Aws::String & GetPlatformVersion() const
bool GetEnableExecuteCommand() const
const Aws::Vector< AwsEcsServicePlacementConstraintsDetails > & GetPlacementConstraints() const
AWS_SECURITYHUB_API AwsEcsServiceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AwsEcsServiceDetails & WithDesiredCount(int value)
AwsEcsServiceDetails & WithSchedulingStrategy(SchedulingStrategyT &&value)
bool DeploymentConfigurationHasBeenSet() const
void SetSchedulingStrategy(SchedulingStrategyT &&value)
bool ServiceArnHasBeenSet() const
void SetLoadBalancers(LoadBalancersT &&value)
bool PropagateTagsHasBeenSet() const
const Aws::Vector< AwsEcsServiceServiceRegistriesDetails > & GetServiceRegistries() const
bool HealthCheckGracePeriodSecondsHasBeenSet() const
void SetCapacityProviderStrategy(CapacityProviderStrategyT &&value)
const Aws::String & GetLaunchType() const
AwsEcsServiceDetails & WithHealthCheckGracePeriodSeconds(int value)
bool LaunchTypeHasBeenSet() const
const Aws::String & GetRole() const
void SetHealthCheckGracePeriodSeconds(int value)
void SetEnableEcsManagedTags(bool value)
void SetDeploymentController(DeploymentControllerT &&value)
AwsEcsServiceDetails & WithPlacementStrategies(PlacementStrategiesT &&value)
const Aws::Vector< AwsEcsServiceCapacityProviderStrategyDetails > & GetCapacityProviderStrategy() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
bool TaskDefinitionHasBeenSet() const
const AwsEcsServiceDeploymentConfigurationDetails & GetDeploymentConfiguration() const
AwsEcsServiceDetails & WithEnableExecuteCommand(bool value)
void SetDesiredCount(int value)
void SetPropagateTags(PropagateTagsT &&value)
AwsEcsServiceDetails & AddServiceRegistries(ServiceRegistriesT &&value)
bool ClusterHasBeenSet() const
void SetName(NameT &&value)
const AwsEcsServiceNetworkConfigurationDetails & GetNetworkConfiguration() const
AwsEcsServiceDetails & WithName(NameT &&value)
void SetServiceArn(ServiceArnT &&value)
bool EnableEcsManagedTagsHasBeenSet() const
void SetPlatformVersion(PlatformVersionT &&value)
bool ServiceRegistriesHasBeenSet() const
void SetNetworkConfiguration(NetworkConfigurationT &&value)
void SetDeploymentConfiguration(DeploymentConfigurationT &&value)
bool LoadBalancersHasBeenSet() const
void SetLaunchType(LaunchTypeT &&value)
void SetPlacementStrategies(PlacementStrategiesT &&value)
AwsEcsServiceDetails & WithRole(RoleT &&value)
const Aws::Vector< AwsEcsServicePlacementStrategiesDetails > & GetPlacementStrategies() const
AwsEcsServiceDetails & WithCluster(ClusterT &&value)
const Aws::String & GetCluster() const
bool NameHasBeenSet() const
void SetServiceRegistries(ServiceRegistriesT &&value)
const Aws::String & GetServiceName() const
void SetTaskDefinition(TaskDefinitionT &&value)
bool PlacementStrategiesHasBeenSet() const
bool CapacityProviderStrategyHasBeenSet() const
const Aws::Vector< AwsEcsServiceLoadBalancersDetails > & GetLoadBalancers() const
void SetEnableExecuteCommand(bool value)
bool EnableExecuteCommandHasBeenSet() const
AwsEcsServiceDetails & WithPlatformVersion(PlatformVersionT &&value)
bool GetEnableEcsManagedTags() const
AwsEcsServiceDetails & WithPlacementConstraints(PlacementConstraintsT &&value)
AwsEcsServiceDetails & WithDeploymentConfiguration(DeploymentConfigurationT &&value)
const Aws::String & GetTaskDefinition() const
bool DeploymentControllerHasBeenSet() const
const Aws::String & GetName() const
void SetRole(RoleT &&value)
AwsEcsServiceDetails & WithTaskDefinition(TaskDefinitionT &&value)
void SetCluster(ClusterT &&value)
AwsEcsServiceDetails & WithEnableEcsManagedTags(bool value)
const AwsEcsServiceDeploymentControllerDetails & GetDeploymentController() const
AwsEcsServiceDetails & AddCapacityProviderStrategy(CapacityProviderStrategyT &&value)
int GetDesiredCount() const
AwsEcsServiceDetails & WithLoadBalancers(LoadBalancersT &&value)
const Aws::String & GetPropagateTags() const
AWS_SECURITYHUB_API AwsEcsServiceDetails(Aws::Utils::Json::JsonView jsonValue)
AwsEcsServiceDetails & AddLoadBalancers(LoadBalancersT &&value)
AwsEcsServiceDetails & WithLaunchType(LaunchTypeT &&value)
AwsEcsServiceDetails & AddPlacementStrategies(PlacementStrategiesT &&value)
AwsEcsServiceDetails & WithPropagateTags(PropagateTagsT &&value)
bool PlatformVersionHasBeenSet() const
AwsEcsServiceDetails & AddPlacementConstraints(PlacementConstraintsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue