AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
NodePropertyOverride.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/batch/model/ConsumableResourceProperties.h>
9#include <aws/batch/model/ContainerOverrides.h>
10#include <aws/batch/model/EcsPropertiesOverride.h>
11#include <aws/batch/model/EksPropertiesOverride.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <aws/core/utils/memory/stl/AWSVector.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Batch {
25namespace Model {
26
36 public:
37 AWS_BATCH_API NodePropertyOverride() = default;
40 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
51 inline const Aws::String& GetTargetNodes() const { return m_targetNodes; }
52 inline bool TargetNodesHasBeenSet() const { return m_targetNodesHasBeenSet; }
53 template <typename TargetNodesT = Aws::String>
54 void SetTargetNodes(TargetNodesT&& value) {
55 m_targetNodesHasBeenSet = true;
56 m_targetNodes = std::forward<TargetNodesT>(value);
57 }
58 template <typename TargetNodesT = Aws::String>
59 NodePropertyOverride& WithTargetNodes(TargetNodesT&& value) {
60 SetTargetNodes(std::forward<TargetNodesT>(value));
61 return *this;
62 }
64
66
69 inline const ContainerOverrides& GetContainerOverrides() const { return m_containerOverrides; }
70 inline bool ContainerOverridesHasBeenSet() const { return m_containerOverridesHasBeenSet; }
71 template <typename ContainerOverridesT = ContainerOverrides>
72 void SetContainerOverrides(ContainerOverridesT&& value) {
73 m_containerOverridesHasBeenSet = true;
74 m_containerOverrides = std::forward<ContainerOverridesT>(value);
75 }
76 template <typename ContainerOverridesT = ContainerOverrides>
77 NodePropertyOverride& WithContainerOverrides(ContainerOverridesT&& value) {
78 SetContainerOverrides(std::forward<ContainerOverridesT>(value));
79 return *this;
80 }
82
84
88 inline const EcsPropertiesOverride& GetEcsPropertiesOverride() const { return m_ecsPropertiesOverride; }
89 inline bool EcsPropertiesOverrideHasBeenSet() const { return m_ecsPropertiesOverrideHasBeenSet; }
90 template <typename EcsPropertiesOverrideT = EcsPropertiesOverride>
91 void SetEcsPropertiesOverride(EcsPropertiesOverrideT&& value) {
92 m_ecsPropertiesOverrideHasBeenSet = true;
93 m_ecsPropertiesOverride = std::forward<EcsPropertiesOverrideT>(value);
94 }
95 template <typename EcsPropertiesOverrideT = EcsPropertiesOverride>
96 NodePropertyOverride& WithEcsPropertiesOverride(EcsPropertiesOverrideT&& value) {
97 SetEcsPropertiesOverride(std::forward<EcsPropertiesOverrideT>(value));
98 return *this;
99 }
101
103
107 inline const Aws::Vector<Aws::String>& GetInstanceTypes() const { return m_instanceTypes; }
108 inline bool InstanceTypesHasBeenSet() const { return m_instanceTypesHasBeenSet; }
109 template <typename InstanceTypesT = Aws::Vector<Aws::String>>
110 void SetInstanceTypes(InstanceTypesT&& value) {
111 m_instanceTypesHasBeenSet = true;
112 m_instanceTypes = std::forward<InstanceTypesT>(value);
113 }
114 template <typename InstanceTypesT = Aws::Vector<Aws::String>>
115 NodePropertyOverride& WithInstanceTypes(InstanceTypesT&& value) {
116 SetInstanceTypes(std::forward<InstanceTypesT>(value));
117 return *this;
118 }
119 template <typename InstanceTypesT = Aws::String>
120 NodePropertyOverride& AddInstanceTypes(InstanceTypesT&& value) {
121 m_instanceTypesHasBeenSet = true;
122 m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value));
123 return *this;
124 }
126
128
132 inline const EksPropertiesOverride& GetEksPropertiesOverride() const { return m_eksPropertiesOverride; }
133 inline bool EksPropertiesOverrideHasBeenSet() const { return m_eksPropertiesOverrideHasBeenSet; }
134 template <typename EksPropertiesOverrideT = EksPropertiesOverride>
135 void SetEksPropertiesOverride(EksPropertiesOverrideT&& value) {
136 m_eksPropertiesOverrideHasBeenSet = true;
137 m_eksPropertiesOverride = std::forward<EksPropertiesOverrideT>(value);
138 }
139 template <typename EksPropertiesOverrideT = EksPropertiesOverride>
140 NodePropertyOverride& WithEksPropertiesOverride(EksPropertiesOverrideT&& value) {
141 SetEksPropertiesOverride(std::forward<EksPropertiesOverrideT>(value));
142 return *this;
143 }
145
147
151 return m_consumableResourcePropertiesOverride;
152 }
153 inline bool ConsumableResourcePropertiesOverrideHasBeenSet() const { return m_consumableResourcePropertiesOverrideHasBeenSet; }
154 template <typename ConsumableResourcePropertiesOverrideT = ConsumableResourceProperties>
155 void SetConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT&& value) {
156 m_consumableResourcePropertiesOverrideHasBeenSet = true;
157 m_consumableResourcePropertiesOverride = std::forward<ConsumableResourcePropertiesOverrideT>(value);
158 }
159 template <typename ConsumableResourcePropertiesOverrideT = ConsumableResourceProperties>
160 NodePropertyOverride& WithConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT&& value) {
161 SetConsumableResourcePropertiesOverride(std::forward<ConsumableResourcePropertiesOverrideT>(value));
162 return *this;
163 }
165 private:
166 Aws::String m_targetNodes;
167
168 ContainerOverrides m_containerOverrides;
169
170 EcsPropertiesOverride m_ecsPropertiesOverride;
171
172 Aws::Vector<Aws::String> m_instanceTypes;
173
174 EksPropertiesOverride m_eksPropertiesOverride;
175
176 ConsumableResourceProperties m_consumableResourcePropertiesOverride;
177 bool m_targetNodesHasBeenSet = false;
178 bool m_containerOverridesHasBeenSet = false;
179 bool m_ecsPropertiesOverrideHasBeenSet = false;
180 bool m_instanceTypesHasBeenSet = false;
181 bool m_eksPropertiesOverrideHasBeenSet = false;
182 bool m_consumableResourcePropertiesOverrideHasBeenSet = false;
183};
184
185} // namespace Model
186} // namespace Batch
187} // namespace Aws
AWS_BATCH_API NodePropertyOverride()=default
AWS_BATCH_API NodePropertyOverride & operator=(Aws::Utils::Json::JsonView jsonValue)
NodePropertyOverride & WithInstanceTypes(InstanceTypesT &&value)
const EcsPropertiesOverride & GetEcsPropertiesOverride() const
const Aws::Vector< Aws::String > & GetInstanceTypes() const
NodePropertyOverride & AddInstanceTypes(InstanceTypesT &&value)
const ConsumableResourceProperties & GetConsumableResourcePropertiesOverride() const
NodePropertyOverride & WithEksPropertiesOverride(EksPropertiesOverrideT &&value)
NodePropertyOverride & WithEcsPropertiesOverride(EcsPropertiesOverrideT &&value)
void SetEcsPropertiesOverride(EcsPropertiesOverrideT &&value)
const ContainerOverrides & GetContainerOverrides() const
NodePropertyOverride & WithConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT &&value)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
void SetConsumableResourcePropertiesOverride(ConsumableResourcePropertiesOverrideT &&value)
NodePropertyOverride & WithTargetNodes(TargetNodesT &&value)
NodePropertyOverride & WithContainerOverrides(ContainerOverridesT &&value)
void SetEksPropertiesOverride(EksPropertiesOverrideT &&value)
void SetContainerOverrides(ContainerOverridesT &&value)
const EksPropertiesOverride & GetEksPropertiesOverride() const
void SetInstanceTypes(InstanceTypesT &&value)
AWS_BATCH_API NodePropertyOverride(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue