AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
EbsInstanceBlockDevice.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/snow-device-management/SnowDeviceManagement_EXPORTS.h>
10#include <aws/snow-device-management/model/AttachmentStatus.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace SnowDeviceManagement {
22namespace Model {
23
31 public:
32 AWS_SNOWDEVICEMANAGEMENT_API EbsInstanceBlockDevice() = default;
33 AWS_SNOWDEVICEMANAGEMENT_API EbsInstanceBlockDevice(Aws::Utils::Json::JsonView jsonValue);
34 AWS_SNOWDEVICEMANAGEMENT_API EbsInstanceBlockDevice& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_SNOWDEVICEMANAGEMENT_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::Utils::DateTime& GetAttachTime() const { return m_attachTime; }
42 inline bool AttachTimeHasBeenSet() const { return m_attachTimeHasBeenSet; }
43 template <typename AttachTimeT = Aws::Utils::DateTime>
44 void SetAttachTime(AttachTimeT&& value) {
45 m_attachTimeHasBeenSet = true;
46 m_attachTime = std::forward<AttachTimeT>(value);
47 }
48 template <typename AttachTimeT = Aws::Utils::DateTime>
49 EbsInstanceBlockDevice& WithAttachTime(AttachTimeT&& value) {
50 SetAttachTime(std::forward<AttachTimeT>(value));
51 return *this;
52 }
54
56
60 inline bool GetDeleteOnTermination() const { return m_deleteOnTermination; }
61 inline bool DeleteOnTerminationHasBeenSet() const { return m_deleteOnTerminationHasBeenSet; }
62 inline void SetDeleteOnTermination(bool value) {
63 m_deleteOnTerminationHasBeenSet = true;
64 m_deleteOnTermination = value;
65 }
68 return *this;
69 }
71
73
76 inline AttachmentStatus GetStatus() const { return m_status; }
77 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
78 inline void SetStatus(AttachmentStatus value) {
79 m_statusHasBeenSet = true;
80 m_status = value;
81 }
83 SetStatus(value);
84 return *this;
85 }
87
89
92 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
93 inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
94 template <typename VolumeIdT = Aws::String>
95 void SetVolumeId(VolumeIdT&& value) {
96 m_volumeIdHasBeenSet = true;
97 m_volumeId = std::forward<VolumeIdT>(value);
98 }
99 template <typename VolumeIdT = Aws::String>
101 SetVolumeId(std::forward<VolumeIdT>(value));
102 return *this;
103 }
105 private:
106 Aws::Utils::DateTime m_attachTime{};
107
108 bool m_deleteOnTermination{false};
109
111
112 Aws::String m_volumeId;
113 bool m_attachTimeHasBeenSet = false;
114 bool m_deleteOnTerminationHasBeenSet = false;
115 bool m_statusHasBeenSet = false;
116 bool m_volumeIdHasBeenSet = false;
117};
118
119} // namespace Model
120} // namespace SnowDeviceManagement
121} // namespace Aws
EbsInstanceBlockDevice & WithStatus(AttachmentStatus value)
AWS_SNOWDEVICEMANAGEMENT_API EbsInstanceBlockDevice(Aws::Utils::Json::JsonView jsonValue)
EbsInstanceBlockDevice & WithVolumeId(VolumeIdT &&value)
AWS_SNOWDEVICEMANAGEMENT_API EbsInstanceBlockDevice & operator=(Aws::Utils::Json::JsonView jsonValue)
EbsInstanceBlockDevice & WithAttachTime(AttachTimeT &&value)
AWS_SNOWDEVICEMANAGEMENT_API EbsInstanceBlockDevice()=default
AWS_SNOWDEVICEMANAGEMENT_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue