AWS SDK for C++

AWS SDK for C++ Version 1.11.745

Loading...
Searching...
No Matches
ServiceConfiguration.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/compute-optimizer/model/AutoScalingConfiguration.h>
9#include <aws/compute-optimizer/model/ContainerConfiguration.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace ComputeOptimizer {
23namespace Model {
24
32 public:
33 AWS_COMPUTEOPTIMIZER_API ServiceConfiguration() = default;
34 AWS_COMPUTEOPTIMIZER_API ServiceConfiguration(Aws::Utils::Json::JsonView jsonValue);
35 AWS_COMPUTEOPTIMIZER_API ServiceConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline int GetMemory() const { return m_memory; }
43 inline bool MemoryHasBeenSet() const { return m_memoryHasBeenSet; }
44 inline void SetMemory(int value) {
45 m_memoryHasBeenSet = true;
46 m_memory = value;
47 }
48 inline ServiceConfiguration& WithMemory(int value) {
49 SetMemory(value);
50 return *this;
51 }
53
55
58 inline int GetCpu() const { return m_cpu; }
59 inline bool CpuHasBeenSet() const { return m_cpuHasBeenSet; }
60 inline void SetCpu(int value) {
61 m_cpuHasBeenSet = true;
62 m_cpu = value;
63 }
64 inline ServiceConfiguration& WithCpu(int value) {
65 SetCpu(value);
66 return *this;
67 }
69
71
74 inline const Aws::Vector<ContainerConfiguration>& GetContainerConfigurations() const { return m_containerConfigurations; }
75 inline bool ContainerConfigurationsHasBeenSet() const { return m_containerConfigurationsHasBeenSet; }
76 template <typename ContainerConfigurationsT = Aws::Vector<ContainerConfiguration>>
77 void SetContainerConfigurations(ContainerConfigurationsT&& value) {
78 m_containerConfigurationsHasBeenSet = true;
79 m_containerConfigurations = std::forward<ContainerConfigurationsT>(value);
80 }
81 template <typename ContainerConfigurationsT = Aws::Vector<ContainerConfiguration>>
82 ServiceConfiguration& WithContainerConfigurations(ContainerConfigurationsT&& value) {
83 SetContainerConfigurations(std::forward<ContainerConfigurationsT>(value));
84 return *this;
85 }
86 template <typename ContainerConfigurationsT = ContainerConfiguration>
87 ServiceConfiguration& AddContainerConfigurations(ContainerConfigurationsT&& value) {
88 m_containerConfigurationsHasBeenSet = true;
89 m_containerConfigurations.emplace_back(std::forward<ContainerConfigurationsT>(value));
90 return *this;
91 }
93
95
113 inline AutoScalingConfiguration GetAutoScalingConfiguration() const { return m_autoScalingConfiguration; }
114 inline bool AutoScalingConfigurationHasBeenSet() const { return m_autoScalingConfigurationHasBeenSet; }
116 m_autoScalingConfigurationHasBeenSet = true;
117 m_autoScalingConfiguration = value;
118 }
121 return *this;
122 }
124
126
129 inline const Aws::String& GetTaskDefinitionArn() const { return m_taskDefinitionArn; }
130 inline bool TaskDefinitionArnHasBeenSet() const { return m_taskDefinitionArnHasBeenSet; }
131 template <typename TaskDefinitionArnT = Aws::String>
132 void SetTaskDefinitionArn(TaskDefinitionArnT&& value) {
133 m_taskDefinitionArnHasBeenSet = true;
134 m_taskDefinitionArn = std::forward<TaskDefinitionArnT>(value);
135 }
136 template <typename TaskDefinitionArnT = Aws::String>
137 ServiceConfiguration& WithTaskDefinitionArn(TaskDefinitionArnT&& value) {
138 SetTaskDefinitionArn(std::forward<TaskDefinitionArnT>(value));
139 return *this;
140 }
142 private:
143 int m_memory{0};
144
145 int m_cpu{0};
146
147 Aws::Vector<ContainerConfiguration> m_containerConfigurations;
148
150
151 Aws::String m_taskDefinitionArn;
152 bool m_memoryHasBeenSet = false;
153 bool m_cpuHasBeenSet = false;
154 bool m_containerConfigurationsHasBeenSet = false;
155 bool m_autoScalingConfigurationHasBeenSet = false;
156 bool m_taskDefinitionArnHasBeenSet = false;
157};
158
159} // namespace Model
160} // namespace ComputeOptimizer
161} // namespace Aws
void SetAutoScalingConfiguration(AutoScalingConfiguration value)
AWS_COMPUTEOPTIMIZER_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_COMPUTEOPTIMIZER_API ServiceConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
ServiceConfiguration & WithContainerConfigurations(ContainerConfigurationsT &&value)
AWS_COMPUTEOPTIMIZER_API ServiceConfiguration()=default
const Aws::Vector< ContainerConfiguration > & GetContainerConfigurations() const
ServiceConfiguration & WithAutoScalingConfiguration(AutoScalingConfiguration value)
ServiceConfiguration & AddContainerConfigurations(ContainerConfigurationsT &&value)
AWS_COMPUTEOPTIMIZER_API ServiceConfiguration(Aws::Utils::Json::JsonView jsonValue)
void SetContainerConfigurations(ContainerConfigurationsT &&value)
AutoScalingConfiguration GetAutoScalingConfiguration() const
ServiceConfiguration & WithTaskDefinitionArn(TaskDefinitionArnT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue