AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
NodeRangeProperty.h
1
6#pragma once
7#include <aws/batch/Batch_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/batch/model/ContainerProperties.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/batch/model/EcsProperties.h>
12#include <aws/batch/model/EksProperties.h>
13#include <aws/batch/model/ConsumableResourceProperties.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace Batch
27{
28namespace Model
29{
30
38 {
39 public:
40 AWS_BATCH_API NodeRangeProperty() = default;
43 AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
57 inline const Aws::String& GetTargetNodes() const { return m_targetNodes; }
58 inline bool TargetNodesHasBeenSet() const { return m_targetNodesHasBeenSet; }
59 template<typename TargetNodesT = Aws::String>
60 void SetTargetNodes(TargetNodesT&& value) { m_targetNodesHasBeenSet = true; m_targetNodes = std::forward<TargetNodesT>(value); }
61 template<typename TargetNodesT = Aws::String>
62 NodeRangeProperty& WithTargetNodes(TargetNodesT&& value) { SetTargetNodes(std::forward<TargetNodesT>(value)); return *this;}
64
66
69 inline const ContainerProperties& GetContainer() const { return m_container; }
70 inline bool ContainerHasBeenSet() const { return m_containerHasBeenSet; }
71 template<typename ContainerT = ContainerProperties>
72 void SetContainer(ContainerT&& value) { m_containerHasBeenSet = true; m_container = std::forward<ContainerT>(value); }
73 template<typename ContainerT = ContainerProperties>
74 NodeRangeProperty& WithContainer(ContainerT&& value) { SetContainer(std::forward<ContainerT>(value)); return *this;}
76
78
84 inline const Aws::Vector<Aws::String>& GetInstanceTypes() const { return m_instanceTypes; }
85 inline bool InstanceTypesHasBeenSet() const { return m_instanceTypesHasBeenSet; }
86 template<typename InstanceTypesT = Aws::Vector<Aws::String>>
87 void SetInstanceTypes(InstanceTypesT&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes = std::forward<InstanceTypesT>(value); }
88 template<typename InstanceTypesT = Aws::Vector<Aws::String>>
89 NodeRangeProperty& WithInstanceTypes(InstanceTypesT&& value) { SetInstanceTypes(std::forward<InstanceTypesT>(value)); return *this;}
90 template<typename InstanceTypesT = Aws::String>
91 NodeRangeProperty& AddInstanceTypes(InstanceTypesT&& value) { m_instanceTypesHasBeenSet = true; m_instanceTypes.emplace_back(std::forward<InstanceTypesT>(value)); return *this; }
93
95
99 inline const EcsProperties& GetEcsProperties() const { return m_ecsProperties; }
100 inline bool EcsPropertiesHasBeenSet() const { return m_ecsPropertiesHasBeenSet; }
101 template<typename EcsPropertiesT = EcsProperties>
102 void SetEcsProperties(EcsPropertiesT&& value) { m_ecsPropertiesHasBeenSet = true; m_ecsProperties = std::forward<EcsPropertiesT>(value); }
103 template<typename EcsPropertiesT = EcsProperties>
104 NodeRangeProperty& WithEcsProperties(EcsPropertiesT&& value) { SetEcsProperties(std::forward<EcsPropertiesT>(value)); return *this;}
106
108
112 inline const EksProperties& GetEksProperties() const { return m_eksProperties; }
113 inline bool EksPropertiesHasBeenSet() const { return m_eksPropertiesHasBeenSet; }
114 template<typename EksPropertiesT = EksProperties>
115 void SetEksProperties(EksPropertiesT&& value) { m_eksPropertiesHasBeenSet = true; m_eksProperties = std::forward<EksPropertiesT>(value); }
116 template<typename EksPropertiesT = EksProperties>
117 NodeRangeProperty& WithEksProperties(EksPropertiesT&& value) { SetEksProperties(std::forward<EksPropertiesT>(value)); return *this;}
119
121
124 inline const ConsumableResourceProperties& GetConsumableResourceProperties() const { return m_consumableResourceProperties; }
125 inline bool ConsumableResourcePropertiesHasBeenSet() const { return m_consumableResourcePropertiesHasBeenSet; }
126 template<typename ConsumableResourcePropertiesT = ConsumableResourceProperties>
127 void SetConsumableResourceProperties(ConsumableResourcePropertiesT&& value) { m_consumableResourcePropertiesHasBeenSet = true; m_consumableResourceProperties = std::forward<ConsumableResourcePropertiesT>(value); }
128 template<typename ConsumableResourcePropertiesT = ConsumableResourceProperties>
129 NodeRangeProperty& WithConsumableResourceProperties(ConsumableResourcePropertiesT&& value) { SetConsumableResourceProperties(std::forward<ConsumableResourcePropertiesT>(value)); return *this;}
131 private:
132
133 Aws::String m_targetNodes;
134 bool m_targetNodesHasBeenSet = false;
135
136 ContainerProperties m_container;
137 bool m_containerHasBeenSet = false;
138
139 Aws::Vector<Aws::String> m_instanceTypes;
140 bool m_instanceTypesHasBeenSet = false;
141
142 EcsProperties m_ecsProperties;
143 bool m_ecsPropertiesHasBeenSet = false;
144
145 EksProperties m_eksProperties;
146 bool m_eksPropertiesHasBeenSet = false;
147
148 ConsumableResourceProperties m_consumableResourceProperties;
149 bool m_consumableResourcePropertiesHasBeenSet = false;
150 };
151
152} // namespace Model
153} // namespace Batch
154} // namespace Aws
const EksProperties & GetEksProperties() const
NodeRangeProperty & WithTargetNodes(TargetNodesT &&value)
const Aws::Vector< Aws::String > & GetInstanceTypes() const
void SetTargetNodes(TargetNodesT &&value)
void SetContainer(ContainerT &&value)
AWS_BATCH_API NodeRangeProperty()=default
NodeRangeProperty & WithEcsProperties(EcsPropertiesT &&value)
NodeRangeProperty & WithConsumableResourceProperties(ConsumableResourcePropertiesT &&value)
AWS_BATCH_API NodeRangeProperty & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetInstanceTypes(InstanceTypesT &&value)
void SetConsumableResourceProperties(ConsumableResourcePropertiesT &&value)
const ConsumableResourceProperties & GetConsumableResourceProperties() const
const ContainerProperties & GetContainer() const
NodeRangeProperty & WithInstanceTypes(InstanceTypesT &&value)
NodeRangeProperty & WithContainer(ContainerT &&value)
void SetEcsProperties(EcsPropertiesT &&value)
NodeRangeProperty & AddInstanceTypes(InstanceTypesT &&value)
void SetEksProperties(EksPropertiesT &&value)
NodeRangeProperty & WithEksProperties(EksPropertiesT &&value)
AWS_BATCH_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_BATCH_API NodeRangeProperty(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetTargetNodes() const
const EcsProperties & GetEcsProperties() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue