AWS SDK for C++

AWS SDK for C++ Version 1.11.796

Loading...
Searching...
No Matches
CreateManagedInstancesProviderConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/ecs/ECS_EXPORTS.h>
9#include <aws/ecs/model/AutoRepairConfiguration.h>
10#include <aws/ecs/model/InfrastructureOptimization.h>
11#include <aws/ecs/model/InstanceLaunchTemplate.h>
12#include <aws/ecs/model/PropagateMITags.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace ECS {
24namespace Model {
25
35 public:
40
42
51 inline const Aws::String& GetInfrastructureRoleArn() const { return m_infrastructureRoleArn; }
52 inline bool InfrastructureRoleArnHasBeenSet() const { return m_infrastructureRoleArnHasBeenSet; }
53 template <typename InfrastructureRoleArnT = Aws::String>
54 void SetInfrastructureRoleArn(InfrastructureRoleArnT&& value) {
55 m_infrastructureRoleArnHasBeenSet = true;
56 m_infrastructureRoleArn = std::forward<InfrastructureRoleArnT>(value);
57 }
58 template <typename InfrastructureRoleArnT = Aws::String>
60 SetInfrastructureRoleArn(std::forward<InfrastructureRoleArnT>(value));
61 return *this;
62 }
64
66
75 inline const InstanceLaunchTemplate& GetInstanceLaunchTemplate() const { return m_instanceLaunchTemplate; }
76 inline bool InstanceLaunchTemplateHasBeenSet() const { return m_instanceLaunchTemplateHasBeenSet; }
77 template <typename InstanceLaunchTemplateT = InstanceLaunchTemplate>
78 void SetInstanceLaunchTemplate(InstanceLaunchTemplateT&& value) {
79 m_instanceLaunchTemplateHasBeenSet = true;
80 m_instanceLaunchTemplate = std::forward<InstanceLaunchTemplateT>(value);
81 }
82 template <typename InstanceLaunchTemplateT = InstanceLaunchTemplate>
84 SetInstanceLaunchTemplate(std::forward<InstanceLaunchTemplateT>(value));
85 return *this;
86 }
88
90
95 inline PropagateMITags GetPropagateTags() const { return m_propagateTags; }
96 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
97 inline void SetPropagateTags(PropagateMITags value) {
98 m_propagateTagsHasBeenSet = true;
99 m_propagateTags = value;
100 }
102 SetPropagateTags(value);
103 return *this;
104 }
106
108
113 inline const InfrastructureOptimization& GetInfrastructureOptimization() const { return m_infrastructureOptimization; }
114 inline bool InfrastructureOptimizationHasBeenSet() const { return m_infrastructureOptimizationHasBeenSet; }
115 template <typename InfrastructureOptimizationT = InfrastructureOptimization>
116 void SetInfrastructureOptimization(InfrastructureOptimizationT&& value) {
117 m_infrastructureOptimizationHasBeenSet = true;
118 m_infrastructureOptimization = std::forward<InfrastructureOptimizationT>(value);
119 }
120 template <typename InfrastructureOptimizationT = InfrastructureOptimization>
122 SetInfrastructureOptimization(std::forward<InfrastructureOptimizationT>(value));
123 return *this;
124 }
126
128
133 inline const AutoRepairConfiguration& GetAutoRepairConfiguration() const { return m_autoRepairConfiguration; }
134 inline bool AutoRepairConfigurationHasBeenSet() const { return m_autoRepairConfigurationHasBeenSet; }
135 template <typename AutoRepairConfigurationT = AutoRepairConfiguration>
136 void SetAutoRepairConfiguration(AutoRepairConfigurationT&& value) {
137 m_autoRepairConfigurationHasBeenSet = true;
138 m_autoRepairConfiguration = std::forward<AutoRepairConfigurationT>(value);
139 }
140 template <typename AutoRepairConfigurationT = AutoRepairConfiguration>
142 SetAutoRepairConfiguration(std::forward<AutoRepairConfigurationT>(value));
143 return *this;
144 }
146 private:
147 Aws::String m_infrastructureRoleArn;
148
149 InstanceLaunchTemplate m_instanceLaunchTemplate;
150
152
153 InfrastructureOptimization m_infrastructureOptimization;
154
155 AutoRepairConfiguration m_autoRepairConfiguration;
156 bool m_infrastructureRoleArnHasBeenSet = false;
157 bool m_instanceLaunchTemplateHasBeenSet = false;
158 bool m_propagateTagsHasBeenSet = false;
159 bool m_infrastructureOptimizationHasBeenSet = false;
160 bool m_autoRepairConfigurationHasBeenSet = false;
161};
162
163} // namespace Model
164} // namespace ECS
165} // namespace Aws
AWS_ECS_API CreateManagedInstancesProviderConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_ECS_API CreateManagedInstancesProviderConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
CreateManagedInstancesProviderConfiguration & WithAutoRepairConfiguration(AutoRepairConfigurationT &&value)
AWS_ECS_API Aws::Utils::Json::JsonValue Jsonize() const
CreateManagedInstancesProviderConfiguration & WithInfrastructureRoleArn(InfrastructureRoleArnT &&value)
CreateManagedInstancesProviderConfiguration & WithPropagateTags(PropagateMITags value)
CreateManagedInstancesProviderConfiguration & WithInfrastructureOptimization(InfrastructureOptimizationT &&value)
CreateManagedInstancesProviderConfiguration & WithInstanceLaunchTemplate(InstanceLaunchTemplateT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue