AWS SDK for C++

AWS SDK for C++ Version 1.11.748

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/InfrastructureOptimization.h>
10#include <aws/ecs/model/InstanceLaunchTemplate.h>
11#include <aws/ecs/model/PropagateMITags.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace ECS {
23namespace Model {
24
34 public:
39
41
50 inline const Aws::String& GetInfrastructureRoleArn() const { return m_infrastructureRoleArn; }
51 inline bool InfrastructureRoleArnHasBeenSet() const { return m_infrastructureRoleArnHasBeenSet; }
52 template <typename InfrastructureRoleArnT = Aws::String>
53 void SetInfrastructureRoleArn(InfrastructureRoleArnT&& value) {
54 m_infrastructureRoleArnHasBeenSet = true;
55 m_infrastructureRoleArn = std::forward<InfrastructureRoleArnT>(value);
56 }
57 template <typename InfrastructureRoleArnT = Aws::String>
59 SetInfrastructureRoleArn(std::forward<InfrastructureRoleArnT>(value));
60 return *this;
61 }
63
65
74 inline const InstanceLaunchTemplate& GetInstanceLaunchTemplate() const { return m_instanceLaunchTemplate; }
75 inline bool InstanceLaunchTemplateHasBeenSet() const { return m_instanceLaunchTemplateHasBeenSet; }
76 template <typename InstanceLaunchTemplateT = InstanceLaunchTemplate>
77 void SetInstanceLaunchTemplate(InstanceLaunchTemplateT&& value) {
78 m_instanceLaunchTemplateHasBeenSet = true;
79 m_instanceLaunchTemplate = std::forward<InstanceLaunchTemplateT>(value);
80 }
81 template <typename InstanceLaunchTemplateT = InstanceLaunchTemplate>
83 SetInstanceLaunchTemplate(std::forward<InstanceLaunchTemplateT>(value));
84 return *this;
85 }
87
89
94 inline PropagateMITags GetPropagateTags() const { return m_propagateTags; }
95 inline bool PropagateTagsHasBeenSet() const { return m_propagateTagsHasBeenSet; }
96 inline void SetPropagateTags(PropagateMITags value) {
97 m_propagateTagsHasBeenSet = true;
98 m_propagateTags = value;
99 }
101 SetPropagateTags(value);
102 return *this;
103 }
105
107
112 inline const InfrastructureOptimization& GetInfrastructureOptimization() const { return m_infrastructureOptimization; }
113 inline bool InfrastructureOptimizationHasBeenSet() const { return m_infrastructureOptimizationHasBeenSet; }
114 template <typename InfrastructureOptimizationT = InfrastructureOptimization>
115 void SetInfrastructureOptimization(InfrastructureOptimizationT&& value) {
116 m_infrastructureOptimizationHasBeenSet = true;
117 m_infrastructureOptimization = std::forward<InfrastructureOptimizationT>(value);
118 }
119 template <typename InfrastructureOptimizationT = InfrastructureOptimization>
121 SetInfrastructureOptimization(std::forward<InfrastructureOptimizationT>(value));
122 return *this;
123 }
125 private:
126 Aws::String m_infrastructureRoleArn;
127
128 InstanceLaunchTemplate m_instanceLaunchTemplate;
129
131
132 InfrastructureOptimization m_infrastructureOptimization;
133 bool m_infrastructureRoleArnHasBeenSet = false;
134 bool m_instanceLaunchTemplateHasBeenSet = false;
135 bool m_propagateTagsHasBeenSet = false;
136 bool m_infrastructureOptimizationHasBeenSet = false;
137};
138
139} // namespace Model
140} // namespace ECS
141} // namespace Aws
AWS_ECS_API CreateManagedInstancesProviderConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_ECS_API CreateManagedInstancesProviderConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
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