7#include <aws/ecs/ECS_EXPORTS.h>
8#include <aws/ecs/ECSRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ecs/model/AvailabilityZoneRebalancing.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ecs/model/LaunchType.h>
13#include <aws/ecs/model/DeploymentConfiguration.h>
14#include <aws/ecs/model/NetworkConfiguration.h>
15#include <aws/ecs/model/SchedulingStrategy.h>
16#include <aws/ecs/model/DeploymentController.h>
17#include <aws/ecs/model/PropagateTags.h>
18#include <aws/ecs/model/ServiceConnectConfiguration.h>
19#include <aws/ecs/model/LoadBalancer.h>
20#include <aws/ecs/model/ServiceRegistry.h>
21#include <aws/ecs/model/CapacityProviderStrategyItem.h>
22#include <aws/ecs/model/PlacementConstraint.h>
23#include <aws/ecs/model/PlacementStrategy.h>
24#include <aws/ecs/model/Tag.h>
25#include <aws/ecs/model/ServiceVolumeConfiguration.h>
26#include <aws/ecs/model/VpcLatticeConfiguration.h>
62 template<
typename ClusterT = Aws::String>
63 void SetCluster(ClusterT&& value) { m_clusterHasBeenSet =
true; m_cluster = std::forward<ClusterT>(value); }
64 template<
typename ClusterT = Aws::String>
77 template<
typename ServiceNameT = Aws::String>
78 void SetServiceName(ServiceNameT&& value) { m_serviceNameHasBeenSet =
true; m_serviceName = std::forward<ServiceNameT>(value); }
79 template<
typename ServiceNameT = Aws::String>
97 template<
typename TaskDefinitionT = Aws::String>
98 void SetTaskDefinition(TaskDefinitionT&& value) { m_taskDefinitionHasBeenSet =
true; m_taskDefinition = std::forward<TaskDefinitionT>(value); }
99 template<
typename TaskDefinitionT = Aws::String>
172 template<
typename LoadBalancersT = Aws::Vector<LoadBalancer>>
173 void SetLoadBalancers(LoadBalancersT&& value) { m_loadBalancersHasBeenSet =
true; m_loadBalancers = std::forward<LoadBalancersT>(value); }
174 template<
typename LoadBalancersT = Aws::Vector<LoadBalancer>>
176 template<
typename LoadBalancersT = LoadBalancer>
191 template<
typename ServiceRegistriesT = Aws::Vector<ServiceRegistry>>
192 void SetServiceRegistries(ServiceRegistriesT&& value) { m_serviceRegistriesHasBeenSet =
true; m_serviceRegistries = std::forward<ServiceRegistriesT>(value); }
193 template<
typename ServiceRegistriesT = Aws::Vector<ServiceRegistry>>
195 template<
typename ServiceRegistriesT = ServiceRegistry>
209 inline void SetDesiredCount(
int value) { m_desiredCountHasBeenSet =
true; m_desiredCount = value; }
221 template<
typename ClientTokenT = Aws::String>
222 void SetClientToken(ClientTokenT&& value) { m_clientTokenHasBeenSet =
true; m_clientToken = std::forward<ClientTokenT>(value); }
223 template<
typename ClientTokenT = Aws::String>
262 template<
typename CapacityProv
iderStrategyT = Aws::Vector<CapacityProv
iderStrategyItem>>
263 void SetCapacityProviderStrategy(CapacityProviderStrategyT&& value) { m_capacityProviderStrategyHasBeenSet =
true; m_capacityProviderStrategy = std::forward<CapacityProviderStrategyT>(value); }
264 template<
typename CapacityProv
iderStrategyT = Aws::Vector<CapacityProv
iderStrategyItem>>
266 template<
typename CapacityProv
iderStrategyT = CapacityProv
iderStrategyItem>
282 template<
typename PlatformVersionT = Aws::String>
283 void SetPlatformVersion(PlatformVersionT&& value) { m_platformVersionHasBeenSet =
true; m_platformVersion = std::forward<PlatformVersionT>(value); }
284 template<
typename PlatformVersionT = Aws::String>
315 template<
typename RoleT = Aws::String>
316 void SetRole(RoleT&& value) { m_roleHasBeenSet =
true; m_role = std::forward<RoleT>(value); }
317 template<
typename RoleT = Aws::String>
328 template<
typename DeploymentConfigurationT = DeploymentConfiguration>
329 void SetDeploymentConfiguration(DeploymentConfigurationT&& value) { m_deploymentConfigurationHasBeenSet =
true; m_deploymentConfiguration = std::forward<DeploymentConfigurationT>(value); }
330 template<
typename DeploymentConfigurationT = DeploymentConfiguration>
342 template<
typename PlacementConstra
intsT = Aws::Vector<PlacementConstra
int>>
343 void SetPlacementConstraints(PlacementConstraintsT&& value) { m_placementConstraintsHasBeenSet =
true; m_placementConstraints = std::forward<PlacementConstraintsT>(value); }
344 template<
typename PlacementConstra
intsT = Aws::Vector<PlacementConstra
int>>
346 template<
typename PlacementConstra
intsT = PlacementConstra
int>
357 template<
typename PlacementStrategyT = Aws::Vector<PlacementStrategy>>
358 void SetPlacementStrategy(PlacementStrategyT&& value) { m_placementStrategyHasBeenSet =
true; m_placementStrategy = std::forward<PlacementStrategyT>(value); }
359 template<
typename PlacementStrategyT = Aws::Vector<PlacementStrategy>>
361 template<
typename PlacementStrategyT = PlacementStrategy>
377 template<
typename NetworkConfigurationT = NetworkConfiguration>
378 void SetNetworkConfiguration(NetworkConfigurationT&& value) { m_networkConfigurationHasBeenSet =
true; m_networkConfiguration = std::forward<NetworkConfigurationT>(value); }
379 template<
typename NetworkConfigurationT = NetworkConfiguration>
432 template<
typename DeploymentControllerT = DeploymentController>
433 void SetDeploymentController(DeploymentControllerT&& value) { m_deploymentControllerHasBeenSet =
true; m_deploymentController = std::forward<DeploymentControllerT>(value); }
434 template<
typename DeploymentControllerT = DeploymentController>
460 template<
typename TagsT = Aws::Vector<Tag>>
461 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
462 template<
typename TagsT = Aws::Vector<Tag>>
464 template<
typename TagsT = Tag>
528 template<
typename ServiceConnectConfigurationT = ServiceConnectConfiguration>
529 void SetServiceConnectConfiguration(ServiceConnectConfigurationT&& value) { m_serviceConnectConfigurationHasBeenSet =
true; m_serviceConnectConfiguration = std::forward<ServiceConnectConfigurationT>(value); }
530 template<
typename ServiceConnectConfigurationT = ServiceConnectConfiguration>
542 template<
typename VolumeConfigurationsT = Aws::Vector<ServiceVolumeConfiguration>>
543 void SetVolumeConfigurations(VolumeConfigurationsT&& value) { m_volumeConfigurationsHasBeenSet =
true; m_volumeConfigurations = std::forward<VolumeConfigurationsT>(value); }
544 template<
typename VolumeConfigurationsT = Aws::Vector<ServiceVolumeConfiguration>>
546 template<
typename VolumeConfigurationsT = ServiceVolumeConfiguration>
556 template<
typename VpcLatticeConfigurationsT = Aws::Vector<VpcLatticeConfiguration>>
557 void SetVpcLatticeConfigurations(VpcLatticeConfigurationsT&& value) { m_vpcLatticeConfigurationsHasBeenSet =
true; m_vpcLatticeConfigurations = std::forward<VpcLatticeConfigurationsT>(value); }
558 template<
typename VpcLatticeConfigurationsT = Aws::Vector<VpcLatticeConfiguration>>
560 template<
typename VpcLatticeConfigurationsT = VpcLatticeConfiguration>
566 bool m_clusterHasBeenSet =
false;
569 bool m_serviceNameHasBeenSet =
false;
572 bool m_taskDefinitionHasBeenSet =
false;
575 bool m_availabilityZoneRebalancingHasBeenSet =
false;
578 bool m_loadBalancersHasBeenSet =
false;
581 bool m_serviceRegistriesHasBeenSet =
false;
583 int m_desiredCount{0};
584 bool m_desiredCountHasBeenSet =
false;
587 bool m_clientTokenHasBeenSet =
false;
590 bool m_launchTypeHasBeenSet =
false;
593 bool m_capacityProviderStrategyHasBeenSet =
false;
596 bool m_platformVersionHasBeenSet =
false;
599 bool m_roleHasBeenSet =
false;
601 DeploymentConfiguration m_deploymentConfiguration;
602 bool m_deploymentConfigurationHasBeenSet =
false;
605 bool m_placementConstraintsHasBeenSet =
false;
608 bool m_placementStrategyHasBeenSet =
false;
610 NetworkConfiguration m_networkConfiguration;
611 bool m_networkConfigurationHasBeenSet =
false;
613 int m_healthCheckGracePeriodSeconds{0};
614 bool m_healthCheckGracePeriodSecondsHasBeenSet =
false;
617 bool m_schedulingStrategyHasBeenSet =
false;
619 DeploymentController m_deploymentController;
620 bool m_deploymentControllerHasBeenSet =
false;
623 bool m_tagsHasBeenSet =
false;
625 bool m_enableECSManagedTags{
false};
626 bool m_enableECSManagedTagsHasBeenSet =
false;
629 bool m_propagateTagsHasBeenSet =
false;
631 bool m_enableExecuteCommand{
false};
632 bool m_enableExecuteCommandHasBeenSet =
false;
634 ServiceConnectConfiguration m_serviceConnectConfiguration;
635 bool m_serviceConnectConfigurationHasBeenSet =
false;
638 bool m_volumeConfigurationsHasBeenSet =
false;
641 bool m_vpcLatticeConfigurationsHasBeenSet =
false;
LaunchType GetLaunchType() const
bool PlacementStrategyHasBeenSet() const
void SetTaskDefinition(TaskDefinitionT &&value)
AWS_ECS_API CreateServiceRequest()=default
void SetCluster(ClusterT &&value)
void SetHealthCheckGracePeriodSeconds(int value)
void SetDeploymentController(DeploymentControllerT &&value)
CreateServiceRequest & AddPlacementStrategy(PlacementStrategyT &&value)
void SetCapacityProviderStrategy(CapacityProviderStrategyT &&value)
CreateServiceRequest & WithLoadBalancers(LoadBalancersT &&value)
void SetRole(RoleT &&value)
void SetPlacementConstraints(PlacementConstraintsT &&value)
void SetEnableExecuteCommand(bool value)
bool RoleHasBeenSet() const
void SetVpcLatticeConfigurations(VpcLatticeConfigurationsT &&value)
const Aws::Vector< LoadBalancer > & GetLoadBalancers() const
void SetNetworkConfiguration(NetworkConfigurationT &&value)
CreateServiceRequest & WithPropagateTags(PropagateTags value)
bool HealthCheckGracePeriodSecondsHasBeenSet() const
bool TagsHasBeenSet() const
bool AvailabilityZoneRebalancingHasBeenSet() const
CreateServiceRequest & AddVpcLatticeConfigurations(VpcLatticeConfigurationsT &&value)
void SetTags(TagsT &&value)
void SetServiceConnectConfiguration(ServiceConnectConfigurationT &&value)
CreateServiceRequest & WithVolumeConfigurations(VolumeConfigurationsT &&value)
bool CapacityProviderStrategyHasBeenSet() const
bool PropagateTagsHasBeenSet() const
CreateServiceRequest & AddCapacityProviderStrategy(CapacityProviderStrategyT &&value)
CreateServiceRequest & WithRole(RoleT &&value)
bool PlacementConstraintsHasBeenSet() const
CreateServiceRequest & AddServiceRegistries(ServiceRegistriesT &&value)
const DeploymentConfiguration & GetDeploymentConfiguration() const
bool GetEnableExecuteCommand() const
bool DeploymentControllerHasBeenSet() const
CreateServiceRequest & WithDeploymentController(DeploymentControllerT &&value)
CreateServiceRequest & WithPlacementConstraints(PlacementConstraintsT &&value)
CreateServiceRequest & AddVolumeConfigurations(VolumeConfigurationsT &&value)
const NetworkConfiguration & GetNetworkConfiguration() const
int GetHealthCheckGracePeriodSeconds() const
void SetPropagateTags(PropagateTags value)
CreateServiceRequest & AddLoadBalancers(LoadBalancersT &&value)
void SetLaunchType(LaunchType value)
CreateServiceRequest & WithEnableExecuteCommand(bool value)
AWS_ECS_API Aws::String SerializePayload() const override
bool LaunchTypeHasBeenSet() const
CreateServiceRequest & WithDeploymentConfiguration(DeploymentConfigurationT &&value)
CreateServiceRequest & WithClientToken(ClientTokenT &&value)
CreateServiceRequest & WithSchedulingStrategy(SchedulingStrategy value)
void SetDeploymentConfiguration(DeploymentConfigurationT &&value)
CreateServiceRequest & WithLaunchType(LaunchType value)
CreateServiceRequest & WithServiceConnectConfiguration(ServiceConnectConfigurationT &&value)
bool PlatformVersionHasBeenSet() const
CreateServiceRequest & WithEnableECSManagedTags(bool value)
bool ServiceConnectConfigurationHasBeenSet() const
const Aws::String & GetTaskDefinition() const
void SetClientToken(ClientTokenT &&value)
CreateServiceRequest & AddPlacementConstraints(PlacementConstraintsT &&value)
CreateServiceRequest & WithCapacityProviderStrategy(CapacityProviderStrategyT &&value)
void SetServiceRegistries(ServiceRegistriesT &&value)
CreateServiceRequest & WithHealthCheckGracePeriodSeconds(int value)
virtual const char * GetServiceRequestName() const override
const Aws::Vector< PlacementConstraint > & GetPlacementConstraints() const
SchedulingStrategy GetSchedulingStrategy() const
bool ClientTokenHasBeenSet() const
CreateServiceRequest & WithDesiredCount(int value)
const Aws::Vector< VpcLatticeConfiguration > & GetVpcLatticeConfigurations() const
bool EnableExecuteCommandHasBeenSet() const
AWS_ECS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::Vector< ServiceRegistry > & GetServiceRegistries() const
const DeploymentController & GetDeploymentController() const
const Aws::Vector< Tag > & GetTags() const
bool DeploymentConfigurationHasBeenSet() const
const Aws::Vector< PlacementStrategy > & GetPlacementStrategy() const
void SetLoadBalancers(LoadBalancersT &&value)
const Aws::String & GetServiceName() const
bool VpcLatticeConfigurationsHasBeenSet() const
bool GetEnableECSManagedTags() const
CreateServiceRequest & WithServiceName(ServiceNameT &&value)
void SetAvailabilityZoneRebalancing(AvailabilityZoneRebalancing value)
bool DesiredCountHasBeenSet() const
void SetEnableECSManagedTags(bool value)
CreateServiceRequest & AddTags(TagsT &&value)
PropagateTags GetPropagateTags() const
bool ClusterHasBeenSet() const
void SetDesiredCount(int value)
CreateServiceRequest & WithCluster(ClusterT &&value)
void SetVolumeConfigurations(VolumeConfigurationsT &&value)
CreateServiceRequest & WithVpcLatticeConfigurations(VpcLatticeConfigurationsT &&value)
CreateServiceRequest & WithTaskDefinition(TaskDefinitionT &&value)
const Aws::String & GetPlatformVersion() const
CreateServiceRequest & WithPlatformVersion(PlatformVersionT &&value)
CreateServiceRequest & WithTags(TagsT &&value)
void SetPlacementStrategy(PlacementStrategyT &&value)
bool NetworkConfigurationHasBeenSet() const
const Aws::Vector< CapacityProviderStrategyItem > & GetCapacityProviderStrategy() const
const Aws::String & GetRole() const
bool TaskDefinitionHasBeenSet() const
CreateServiceRequest & WithPlacementStrategy(PlacementStrategyT &&value)
AvailabilityZoneRebalancing GetAvailabilityZoneRebalancing() const
void SetServiceName(ServiceNameT &&value)
void SetPlatformVersion(PlatformVersionT &&value)
bool ServiceNameHasBeenSet() const
bool VolumeConfigurationsHasBeenSet() const
int GetDesiredCount() const
bool EnableECSManagedTagsHasBeenSet() const
const Aws::String & GetClientToken() const
const ServiceConnectConfiguration & GetServiceConnectConfiguration() const
const Aws::Vector< ServiceVolumeConfiguration > & GetVolumeConfigurations() const
CreateServiceRequest & WithServiceRegistries(ServiceRegistriesT &&value)
bool ServiceRegistriesHasBeenSet() const
bool LoadBalancersHasBeenSet() const
void SetSchedulingStrategy(SchedulingStrategy value)
CreateServiceRequest & WithAvailabilityZoneRebalancing(AvailabilityZoneRebalancing value)
const Aws::String & GetCluster() const
bool SchedulingStrategyHasBeenSet() const
CreateServiceRequest & WithNetworkConfiguration(NetworkConfigurationT &&value)
AvailabilityZoneRebalancing
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