AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
EbsBlockDevice.h
1
6#pragma once
7#include <aws/opsworks/OpsWorks_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/opsworks/model/VolumeType.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 OpsWorks
23{
24namespace Model
25{
26
36 {
37 public:
38 AWS_OPSWORKS_API EbsBlockDevice() = default;
39 AWS_OPSWORKS_API EbsBlockDevice(Aws::Utils::Json::JsonView jsonValue);
41 AWS_OPSWORKS_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
48 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
49 inline bool SnapshotIdHasBeenSet() const { return m_snapshotIdHasBeenSet; }
50 template<typename SnapshotIdT = Aws::String>
51 void SetSnapshotId(SnapshotIdT&& value) { m_snapshotIdHasBeenSet = true; m_snapshotId = std::forward<SnapshotIdT>(value); }
52 template<typename SnapshotIdT = Aws::String>
53 EbsBlockDevice& WithSnapshotId(SnapshotIdT&& value) { SetSnapshotId(std::forward<SnapshotIdT>(value)); return *this;}
55
57
62 inline int GetIops() const { return m_iops; }
63 inline bool IopsHasBeenSet() const { return m_iopsHasBeenSet; }
64 inline void SetIops(int value) { m_iopsHasBeenSet = true; m_iops = value; }
65 inline EbsBlockDevice& WithIops(int value) { SetIops(value); return *this;}
67
69
73 inline int GetVolumeSize() const { return m_volumeSize; }
74 inline bool VolumeSizeHasBeenSet() const { return m_volumeSizeHasBeenSet; }
75 inline void SetVolumeSize(int value) { m_volumeSizeHasBeenSet = true; m_volumeSize = value; }
76 inline EbsBlockDevice& WithVolumeSize(int value) { SetVolumeSize(value); return *this;}
78
80
90 inline VolumeType GetVolumeType() const { return m_volumeType; }
91 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
92 inline void SetVolumeType(VolumeType value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; }
93 inline EbsBlockDevice& WithVolumeType(VolumeType value) { SetVolumeType(value); return *this;}
95
97
100 inline bool GetDeleteOnTermination() const { return m_deleteOnTermination; }
101 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
102 inline void SetDeleteOnTermination(bool value) { m_deleteOnTerminationHasBeenSet = true; m_deleteOnTermination = value; }
103 inline EbsBlockDevice& WithDeleteOnTermination(bool value) { SetDeleteOnTermination(value); return *this;}
105 private:
106
107 Aws::String m_snapshotId;
108 bool m_snapshotIdHasBeenSet = false;
109
110 int m_iops{0};
111 bool m_iopsHasBeenSet = false;
112
113 int m_volumeSize{0};
114 bool m_volumeSizeHasBeenSet = false;
115
116 VolumeType m_volumeType{VolumeType::NOT_SET};
117 bool m_volumeTypeHasBeenSet = false;
118
119 bool m_deleteOnTermination{false};
120 bool m_deleteOnTerminationHasBeenSet = false;
121 };
122
123} // namespace Model
124} // namespace OpsWorks
125} // namespace Aws
AWS_OPSWORKS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSnapshotId(SnapshotIdT &&value)
const Aws::String & GetSnapshotId() const
void SetVolumeType(VolumeType value)
EbsBlockDevice & WithVolumeType(VolumeType value)
EbsBlockDevice & WithVolumeSize(int value)
AWS_OPSWORKS_API EbsBlockDevice()=default
AWS_OPSWORKS_API EbsBlockDevice(Aws::Utils::Json::JsonView jsonValue)
EbsBlockDevice & WithSnapshotId(SnapshotIdT &&value)
EbsBlockDevice & WithDeleteOnTermination(bool value)
EbsBlockDevice & WithIops(int value)
AWS_OPSWORKS_API EbsBlockDevice & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue