7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ecs/ECSRequest.h>
10#include <aws/ecs/ECS_EXPORTS.h>
11#include <aws/ecs/model/AvailabilityZoneRebalancing.h>
12#include <aws/ecs/model/CapacityProviderStrategyItem.h>
13#include <aws/ecs/model/DeploymentConfiguration.h>
14#include <aws/ecs/model/DeploymentController.h>
15#include <aws/ecs/model/LaunchType.h>
16#include <aws/ecs/model/LoadBalancer.h>
17#include <aws/ecs/model/NetworkConfiguration.h>
18#include <aws/ecs/model/PlacementConstraint.h>
19#include <aws/ecs/model/PlacementStrategy.h>
20#include <aws/ecs/model/PropagateTags.h>
21#include <aws/ecs/model/SchedulingStrategy.h>
22#include <aws/ecs/model/ServiceConnectConfiguration.h>
23#include <aws/ecs/model/ServiceRegistry.h>
24#include <aws/ecs/model/ServiceVolumeConfiguration.h>
25#include <aws/ecs/model/Tag.h>
26#include <aws/ecs/model/VpcLatticeConfiguration.h>
61 template <
typename ClusterT = Aws::String>
63 m_clusterHasBeenSet =
true;
64 m_cluster = std::forward<ClusterT>(value);
66 template <
typename ClusterT = Aws::String>
82 template <
typename ServiceNameT = Aws::String>
84 m_serviceNameHasBeenSet =
true;
85 m_serviceName = std::forward<ServiceNameT>(value);
87 template <
typename ServiceNameT = Aws::String>
108 template <
typename TaskDefinitionT = Aws::String>
110 m_taskDefinitionHasBeenSet =
true;
111 m_taskDefinition = std::forward<TaskDefinitionT>(value);
113 template <
typename TaskDefinitionT = Aws::String>
139 m_availabilityZoneRebalancingHasBeenSet =
true;
140 m_availabilityZoneRebalancing = value;
195 template <
typename LoadBalancersT = Aws::Vector<LoadBalancer>>
197 m_loadBalancersHasBeenSet =
true;
198 m_loadBalancers = std::forward<LoadBalancersT>(value);
200 template <
typename LoadBalancersT = Aws::Vector<LoadBalancer>>
205 template <
typename LoadBalancersT = LoadBalancer>
207 m_loadBalancersHasBeenSet =
true;
208 m_loadBalancers.emplace_back(std::forward<LoadBalancersT>(value));
224 template <
typename ServiceRegistriesT = Aws::Vector<ServiceRegistry>>
226 m_serviceRegistriesHasBeenSet =
true;
227 m_serviceRegistries = std::forward<ServiceRegistriesT>(value);
229 template <
typename ServiceRegistriesT = Aws::Vector<ServiceRegistry>>
234 template <
typename ServiceRegistriesT = ServiceRegistry>
236 m_serviceRegistriesHasBeenSet =
true;
237 m_serviceRegistries.emplace_back(std::forward<ServiceRegistriesT>(value));
253 m_desiredCountHasBeenSet =
true;
254 m_desiredCount = value;
270 template <
typename ClientTokenT = Aws::String>
272 m_clientTokenHasBeenSet =
true;
273 m_clientToken = std::forward<ClientTokenT>(value);
275 template <
typename ClientTokenT = Aws::String>
305 m_launchTypeHasBeenSet =
true;
306 m_launchType = value;
328 template <
typename CapacityProv
iderStrategyT = Aws::Vector<CapacityProv
iderStrategyItem>>
330 m_capacityProviderStrategyHasBeenSet =
true;
331 m_capacityProviderStrategy = std::forward<CapacityProviderStrategyT>(value);
333 template <
typename CapacityProv
iderStrategyT = Aws::Vector<CapacityProv
iderStrategyItem>>
338 template <
typename CapacityProv
iderStrategyT = CapacityProv
iderStrategyItem>
340 m_capacityProviderStrategyHasBeenSet =
true;
341 m_capacityProviderStrategy.emplace_back(std::forward<CapacityProviderStrategyT>(value));
358 template <
typename PlatformVersionT = Aws::String>
360 m_platformVersionHasBeenSet =
true;
361 m_platformVersion = std::forward<PlatformVersionT>(value);
363 template <
typename PlatformVersionT = Aws::String>
397 template <
typename RoleT = Aws::String>
399 m_roleHasBeenSet =
true;
400 m_role = std::forward<RoleT>(value);
402 template <
typename RoleT = Aws::String>
404 SetRole(std::forward<RoleT>(value));
416 template <
typename DeploymentConfigurationT = DeploymentConfiguration>
418 m_deploymentConfigurationHasBeenSet =
true;
419 m_deploymentConfiguration = std::forward<DeploymentConfigurationT>(value);
421 template <
typename DeploymentConfigurationT = DeploymentConfiguration>
436 template <
typename PlacementConstra
intsT = Aws::Vector<PlacementConstra
int>>
438 m_placementConstraintsHasBeenSet =
true;
439 m_placementConstraints = std::forward<PlacementConstraintsT>(value);
441 template <
typename PlacementConstra
intsT = Aws::Vector<PlacementConstra
int>>
446 template <
typename PlacementConstra
intsT = PlacementConstra
int>
448 m_placementConstraintsHasBeenSet =
true;
449 m_placementConstraints.emplace_back(std::forward<PlacementConstraintsT>(value));
461 template <
typename PlacementStrategyT = Aws::Vector<PlacementStrategy>>
463 m_placementStrategyHasBeenSet =
true;
464 m_placementStrategy = std::forward<PlacementStrategyT>(value);
466 template <
typename PlacementStrategyT = Aws::Vector<PlacementStrategy>>
471 template <
typename PlacementStrategyT = PlacementStrategy>
473 m_placementStrategyHasBeenSet =
true;
474 m_placementStrategy.emplace_back(std::forward<PlacementStrategyT>(value));
491 template <
typename NetworkConfigurationT = NetworkConfiguration>
493 m_networkConfigurationHasBeenSet =
true;
494 m_networkConfiguration = std::forward<NetworkConfigurationT>(value);
496 template <
typename NetworkConfigurationT = NetworkConfiguration>
516 m_healthCheckGracePeriodSecondsHasBeenSet =
true;
517 m_healthCheckGracePeriodSeconds = value;
550 m_schedulingStrategyHasBeenSet =
true;
551 m_schedulingStrategy = value;
566 template <
typename DeploymentControllerT = DeploymentController>
568 m_deploymentControllerHasBeenSet =
true;
569 m_deploymentController = std::forward<DeploymentControllerT>(value);
571 template <
typename DeploymentControllerT = DeploymentController>
600 template <
typename TagsT = Aws::Vector<Tag>>
602 m_tagsHasBeenSet =
true;
603 m_tags = std::forward<TagsT>(value);
605 template <
typename TagsT = Aws::Vector<Tag>>
607 SetTags(std::forward<TagsT>(value));
610 template <
typename TagsT = Tag>
612 m_tagsHasBeenSet =
true;
613 m_tags.emplace_back(std::forward<TagsT>(value));
630 m_enableECSManagedTagsHasBeenSet =
true;
631 m_enableECSManagedTags = value;
655 m_propagateTagsHasBeenSet =
true;
656 m_propagateTags = value;
673 m_enableExecuteCommandHasBeenSet =
true;
674 m_enableExecuteCommand = value;
696 template <
typename ServiceConnectConfigurationT = ServiceConnectConfiguration>
698 m_serviceConnectConfigurationHasBeenSet =
true;
699 m_serviceConnectConfiguration = std::forward<ServiceConnectConfigurationT>(value);
701 template <
typename ServiceConnectConfigurationT = ServiceConnectConfiguration>
716 template <
typename VolumeConfigurationsT = Aws::Vector<ServiceVolumeConfiguration>>
718 m_volumeConfigurationsHasBeenSet =
true;
719 m_volumeConfigurations = std::forward<VolumeConfigurationsT>(value);
721 template <
typename VolumeConfigurationsT = Aws::Vector<ServiceVolumeConfiguration>>
726 template <
typename VolumeConfigurationsT = ServiceVolumeConfiguration>
728 m_volumeConfigurationsHasBeenSet =
true;
729 m_volumeConfigurations.emplace_back(std::forward<VolumeConfigurationsT>(value));
740 template <
typename VpcLatticeConfigurationsT = Aws::Vector<VpcLatticeConfiguration>>
742 m_vpcLatticeConfigurationsHasBeenSet =
true;
743 m_vpcLatticeConfigurations = std::forward<VpcLatticeConfigurationsT>(value);
745 template <
typename VpcLatticeConfigurationsT = Aws::Vector<VpcLatticeConfiguration>>
750 template <
typename VpcLatticeConfigurationsT = VpcLatticeConfiguration>
752 m_vpcLatticeConfigurationsHasBeenSet =
true;
753 m_vpcLatticeConfigurations.emplace_back(std::forward<VpcLatticeConfigurationsT>(value));
770 int m_desiredCount{0};
782 DeploymentConfiguration m_deploymentConfiguration;
788 NetworkConfiguration m_networkConfiguration;
790 int m_healthCheckGracePeriodSeconds{0};
794 DeploymentController m_deploymentController;
798 bool m_enableECSManagedTags{
false};
802 bool m_enableExecuteCommand{
false};
804 ServiceConnectConfiguration m_serviceConnectConfiguration;
809 bool m_clusterHasBeenSet =
false;
810 bool m_serviceNameHasBeenSet =
false;
811 bool m_taskDefinitionHasBeenSet =
false;
812 bool m_availabilityZoneRebalancingHasBeenSet =
false;
813 bool m_loadBalancersHasBeenSet =
false;
814 bool m_serviceRegistriesHasBeenSet =
false;
815 bool m_desiredCountHasBeenSet =
false;
816 bool m_clientTokenHasBeenSet =
false;
817 bool m_launchTypeHasBeenSet =
false;
818 bool m_capacityProviderStrategyHasBeenSet =
false;
819 bool m_platformVersionHasBeenSet =
false;
820 bool m_roleHasBeenSet =
false;
821 bool m_deploymentConfigurationHasBeenSet =
false;
822 bool m_placementConstraintsHasBeenSet =
false;
823 bool m_placementStrategyHasBeenSet =
false;
824 bool m_networkConfigurationHasBeenSet =
false;
825 bool m_healthCheckGracePeriodSecondsHasBeenSet =
false;
826 bool m_schedulingStrategyHasBeenSet =
false;
827 bool m_deploymentControllerHasBeenSet =
false;
828 bool m_tagsHasBeenSet =
false;
829 bool m_enableECSManagedTagsHasBeenSet =
false;
830 bool m_propagateTagsHasBeenSet =
false;
831 bool m_enableExecuteCommandHasBeenSet =
false;
832 bool m_serviceConnectConfigurationHasBeenSet =
false;
833 bool m_volumeConfigurationsHasBeenSet =
false;
834 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