AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
EbsInstanceBlockDeviceSpecification.h
1
6#pragma once
7#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/imagebuilder/model/EbsVolumeType.h>
10#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace imagebuilder
23{
24namespace Model
25{
26
34 {
35 public:
39 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline bool GetEncrypted() const{ return m_encrypted; }
47 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
48 inline void SetEncrypted(bool value) { m_encryptedHasBeenSet = true; m_encrypted = value; }
49 inline EbsInstanceBlockDeviceSpecification& WithEncrypted(bool value) { SetEncrypted(value); return *this;}
51
53
56 inline bool GetDeleteOnTermination() const{ return m_deleteOnTermination; }
57 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
58 inline void SetDeleteOnTermination(bool value) { m_deleteOnTerminationHasBeenSet = true; m_deleteOnTermination = value; }
61
63
66 inline int GetIops() const{ return m_iops; }
67 inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; }
68 inline void SetIops(int value) { m_iopsHasBeenSet = true; m_iops = value; }
69 inline EbsInstanceBlockDeviceSpecification& WithIops(int value) { SetIops(value); return *this;}
71
73
76 inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; }
77 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
78 inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; }
79 inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); }
80 inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); }
81 inline EbsInstanceBlockDeviceSpecification& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;}
82 inline EbsInstanceBlockDeviceSpecification& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;}
83 inline EbsInstanceBlockDeviceSpecification& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;}
85
87
90 inline const Aws::String& GetSnapshotId() const{ return m_snapshotId; }
91 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
92 inline void SetSnapshotId(const Aws::String& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = value; }
93 inline void SetSnapshotId(Aws::String&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::move(value); }
94 inline void SetSnapshotId(const char* value) { m_snapshotIdHasBeenSet = true; m_snapshotId.assign(value); }
95 inline EbsInstanceBlockDeviceSpecification& WithSnapshotId(const Aws::String& value) { SetSnapshotId(value); return *this;}
96 inline EbsInstanceBlockDeviceSpecification& WithSnapshotId(Aws::String&& value) { SetSnapshotId(std::move(value)); return *this;}
97 inline EbsInstanceBlockDeviceSpecification& WithSnapshotId(const char* value) { SetSnapshotId(value); return *this;}
99
101
104 inline int GetVolumeSize() const{ return m_volumeSize; }
105 inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
106 inline void SetVolumeSize(int value) { m_volumeSizeHasBeenSet = true; m_volumeSize = value; }
107 inline EbsInstanceBlockDeviceSpecification& WithVolumeSize(int value) { SetVolumeSize(value); return *this;}
109
111
114 inline const EbsVolumeType& GetVolumeType() const{ return m_volumeType; }
115 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
116 inline void SetVolumeType(const EbsVolumeType& value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; }
117 inline void SetVolumeType(EbsVolumeType&& value) { m_volumeTypeHasBeenSet = true; m_volumeType = std::move(value); }
119 inline EbsInstanceBlockDeviceSpecification& WithVolumeType(EbsVolumeType&& value) { SetVolumeType(std::move(value)); return *this;}
121
123
127 inline int GetThroughput() const{ return m_throughput; }
128 inline bool ThroughputHasBeenSet() const { return m_throughputHasBeenSet; }
129 inline void SetThroughput(int value) { m_throughputHasBeenSet = true; m_throughput = value; }
130 inline EbsInstanceBlockDeviceSpecification& WithThroughput(int value) { SetThroughput(value); return *this;}
132 private:
133
134 bool m_encrypted;
135 bool m_encryptedHasBeenSet = false;
136
137 bool m_deleteOnTermination;
138 bool m_deleteOnTerminationHasBeenSet = false;
139
140 int m_iops;
141 bool m_iopsHasBeenSet = false;
142
143 Aws::String m_kmsKeyId;
144 bool m_kmsKeyIdHasBeenSet = false;
145
146 Aws::String m_snapshotId;
147 bool m_snapshotIdHasBeenSet = false;
148
149 int m_volumeSize;
150 bool m_volumeSizeHasBeenSet = false;
151
152 EbsVolumeType m_volumeType;
153 bool m_volumeTypeHasBeenSet = false;
154
155 int m_throughput;
156 bool m_throughputHasBeenSet = false;
157 };
158
159} // namespace Model
160} // namespace imagebuilder
161} // namespace Aws
EbsInstanceBlockDeviceSpecification & WithKmsKeyId(const Aws::String &value)
EbsInstanceBlockDeviceSpecification & WithKmsKeyId(Aws::String &&value)
EbsInstanceBlockDeviceSpecification & WithSnapshotId(Aws::String &&value)
AWS_IMAGEBUILDER_API EbsInstanceBlockDeviceSpecification(Aws::Utils::Json::JsonView jsonValue)
EbsInstanceBlockDeviceSpecification & WithSnapshotId(const char *value)
EbsInstanceBlockDeviceSpecification & WithVolumeType(EbsVolumeType &&value)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
EbsInstanceBlockDeviceSpecification & WithSnapshotId(const Aws::String &value)
EbsInstanceBlockDeviceSpecification & WithVolumeType(const EbsVolumeType &value)
EbsInstanceBlockDeviceSpecification & WithDeleteOnTermination(bool value)
EbsInstanceBlockDeviceSpecification & WithKmsKeyId(const char *value)
AWS_IMAGEBUILDER_API EbsInstanceBlockDeviceSpecification & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue