AWS SDK for C++

AWS SDK for C++ Version 1.11.812

Loading...
Searching...
No Matches
VolumeConfiguration.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/crt/cbor/Cbor.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Cbor {
16class CborValue;
17} // namespace Cbor
18} // namespace Utils
19namespace ComputeOptimizer {
20namespace Model {
21
29 public:
30 AWS_COMPUTEOPTIMIZER_API VolumeConfiguration() = default;
31 AWS_COMPUTEOPTIMIZER_API VolumeConfiguration(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
32 AWS_COMPUTEOPTIMIZER_API VolumeConfiguration& operator=(const std::shared_ptr<Aws::Crt::Cbor::CborDecoder>& decoder);
33 AWS_COMPUTEOPTIMIZER_API void CborEncode(Aws::Crt::Cbor::CborEncoder& encoder) const;
34
36
44 inline const Aws::String& GetVolumeType() const { return m_volumeType; }
45 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
46 template <typename VolumeTypeT = Aws::String>
47 void SetVolumeType(VolumeTypeT&& value) {
48 m_volumeTypeHasBeenSet = true;
49 m_volumeType = std::forward<VolumeTypeT>(value);
50 }
51 template <typename VolumeTypeT = Aws::String>
52 VolumeConfiguration& WithVolumeType(VolumeTypeT&& value) {
53 SetVolumeType(std::forward<VolumeTypeT>(value));
54 return *this;
55 }
57
59
62 inline int64_t GetVolumeSize() const { return m_volumeSize; }
63 inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
64 inline void SetVolumeSize(int64_t value) {
65 m_volumeSizeHasBeenSet = true;
66 m_volumeSize = value;
67 }
68 inline VolumeConfiguration& WithVolumeSize(int64_t value) {
69 SetVolumeSize(value);
70 return *this;
71 }
73
75
78 inline int64_t GetVolumeBaselineIOPS() const { return m_volumeBaselineIOPS; }
79 inline bool VolumeBaselineIOPSHasBeenSet() const { return m_volumeBaselineIOPSHasBeenSet; }
80 inline void SetVolumeBaselineIOPS(int64_t value) {
81 m_volumeBaselineIOPSHasBeenSet = true;
82 m_volumeBaselineIOPS = value;
83 }
86 return *this;
87 }
89
91
94 inline int64_t GetVolumeBurstIOPS() const { return m_volumeBurstIOPS; }
95 inline bool VolumeBurstIOPSHasBeenSet() const { return m_volumeBurstIOPSHasBeenSet; }
96 inline void SetVolumeBurstIOPS(int64_t value) {
97 m_volumeBurstIOPSHasBeenSet = true;
98 m_volumeBurstIOPS = value;
99 }
101 SetVolumeBurstIOPS(value);
102 return *this;
103 }
105
107
110 inline int64_t GetVolumeBaselineThroughput() const { return m_volumeBaselineThroughput; }
111 inline bool VolumeBaselineThroughputHasBeenSet() const { return m_volumeBaselineThroughputHasBeenSet; }
112 inline void SetVolumeBaselineThroughput(int64_t value) {
113 m_volumeBaselineThroughputHasBeenSet = true;
114 m_volumeBaselineThroughput = value;
115 }
118 return *this;
119 }
121
123
126 inline int64_t GetVolumeBurstThroughput() const { return m_volumeBurstThroughput; }
127 inline bool VolumeBurstThroughputHasBeenSet() const { return m_volumeBurstThroughputHasBeenSet; }
128 inline void SetVolumeBurstThroughput(int64_t value) {
129 m_volumeBurstThroughputHasBeenSet = true;
130 m_volumeBurstThroughput = value;
131 }
134 return *this;
135 }
137
139
142 inline bool GetRootVolume() const { return m_rootVolume; }
143 inline bool RootVolumeHasBeenSet() const { return m_rootVolumeHasBeenSet; }
144 inline void SetRootVolume(bool value) {
145 m_rootVolumeHasBeenSet = true;
146 m_rootVolume = value;
147 }
149 SetRootVolume(value);
150 return *this;
151 }
153 private:
154 Aws::String m_volumeType;
155
156 int64_t m_volumeSize{0};
157
158 int64_t m_volumeBaselineIOPS{0};
159
160 int64_t m_volumeBurstIOPS{0};
161
162 int64_t m_volumeBaselineThroughput{0};
163
164 int64_t m_volumeBurstThroughput{0};
165
166 bool m_rootVolume{false};
167 bool m_volumeTypeHasBeenSet = false;
168 bool m_volumeSizeHasBeenSet = false;
169 bool m_volumeBaselineIOPSHasBeenSet = false;
170 bool m_volumeBurstIOPSHasBeenSet = false;
171 bool m_volumeBaselineThroughputHasBeenSet = false;
172 bool m_volumeBurstThroughputHasBeenSet = false;
173 bool m_rootVolumeHasBeenSet = false;
174};
175
176} // namespace Model
177} // namespace ComputeOptimizer
178} // namespace Aws
VolumeConfiguration & WithVolumeBurstThroughput(int64_t value)
AWS_COMPUTEOPTIMIZER_API VolumeConfiguration(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
VolumeConfiguration & WithVolumeType(VolumeTypeT &&value)
AWS_COMPUTEOPTIMIZER_API VolumeConfiguration & operator=(const std::shared_ptr< Aws::Crt::Cbor::CborDecoder > &decoder)
VolumeConfiguration & WithVolumeSize(int64_t value)
VolumeConfiguration & WithVolumeBaselineThroughput(int64_t value)
AWS_COMPUTEOPTIMIZER_API void CborEncode(Aws::Crt::Cbor::CborEncoder &encoder) const
VolumeConfiguration & WithVolumeBurstIOPS(int64_t value)
VolumeConfiguration & WithVolumeBaselineIOPS(int64_t value)
AWS_COMPUTEOPTIMIZER_API VolumeConfiguration()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String