AWS SDK for C++

AWS SDK for C++ Version 1.11.927

Loading...
Searching...
No Matches
VolumeInfo.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/storagegateway/StorageGateway_EXPORTS.h>
9
10#include <utility>
11
12namespace Aws {
13namespace Utils {
14namespace Json {
15class JsonValue;
16class JsonView;
17} // namespace Json
18} // namespace Utils
19namespace StorageGateway {
20namespace Model {
21
28 public:
29 AWS_STORAGEGATEWAY_API VolumeInfo() = default;
30 AWS_STORAGEGATEWAY_API VolumeInfo(Aws::Utils::Json::JsonView jsonValue);
31 AWS_STORAGEGATEWAY_API VolumeInfo& operator=(Aws::Utils::Json::JsonView jsonValue);
32 AWS_STORAGEGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const;
33
35
42 inline const Aws::String& GetVolumeARN() const { return m_volumeARN; }
43 inline bool VolumeARNHasBeenSet() const { return m_volumeARNHasBeenSet; }
44 template <typename VolumeARNT = Aws::String>
45 void SetVolumeARN(VolumeARNT&& value) {
46 m_volumeARNHasBeenSet = true;
47 m_volumeARN = std::forward<VolumeARNT>(value);
48 }
49 template <typename VolumeARNT = Aws::String>
50 VolumeInfo& WithVolumeARN(VolumeARNT&& value) {
51 SetVolumeARN(std::forward<VolumeARNT>(value));
52 return *this;
53 }
55
57
63 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
64 inline bool VolumeIdHasBeenSet() const { return m_volumeIdHasBeenSet; }
65 template <typename VolumeIdT = Aws::String>
66 void SetVolumeId(VolumeIdT&& value) {
67 m_volumeIdHasBeenSet = true;
68 m_volumeId = std::forward<VolumeIdT>(value);
69 }
70 template <typename VolumeIdT = Aws::String>
71 VolumeInfo& WithVolumeId(VolumeIdT&& value) {
72 SetVolumeId(std::forward<VolumeIdT>(value));
73 return *this;
74 }
76
78
79 inline const Aws::String& GetGatewayARN() const { return m_gatewayARN; }
80 inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; }
81 template <typename GatewayARNT = Aws::String>
82 void SetGatewayARN(GatewayARNT&& value) {
83 m_gatewayARNHasBeenSet = true;
84 m_gatewayARN = std::forward<GatewayARNT>(value);
85 }
86 template <typename GatewayARNT = Aws::String>
87 VolumeInfo& WithGatewayARN(GatewayARNT&& value) {
88 SetGatewayARN(std::forward<GatewayARNT>(value));
89 return *this;
90 }
92
94
100 inline const Aws::String& GetGatewayId() const { return m_gatewayId; }
101 inline bool GatewayIdHasBeenSet() const { return m_gatewayIdHasBeenSet; }
102 template <typename GatewayIdT = Aws::String>
103 void SetGatewayId(GatewayIdT&& value) {
104 m_gatewayIdHasBeenSet = true;
105 m_gatewayId = std::forward<GatewayIdT>(value);
106 }
107 template <typename GatewayIdT = Aws::String>
108 VolumeInfo& WithGatewayId(GatewayIdT&& value) {
109 SetGatewayId(std::forward<GatewayIdT>(value));
110 return *this;
111 }
113
115
119 inline const Aws::String& GetVolumeType() const { return m_volumeType; }
120 inline bool VolumeTypeHasBeenSet() const { return m_volumeTypeHasBeenSet; }
121 template <typename VolumeTypeT = Aws::String>
122 void SetVolumeType(VolumeTypeT&& value) {
123 m_volumeTypeHasBeenSet = true;
124 m_volumeType = std::forward<VolumeTypeT>(value);
125 }
126 template <typename VolumeTypeT = Aws::String>
127 VolumeInfo& WithVolumeType(VolumeTypeT&& value) {
128 SetVolumeType(std::forward<VolumeTypeT>(value));
129 return *this;
130 }
132
134
138 inline long long GetVolumeSizeInBytes() const { return m_volumeSizeInBytes; }
139 inline bool VolumeSizeInBytesHasBeenSet() const { return m_volumeSizeInBytesHasBeenSet; }
140 inline void SetVolumeSizeInBytes(long long value) {
141 m_volumeSizeInBytesHasBeenSet = true;
142 m_volumeSizeInBytes = value;
143 }
144 inline VolumeInfo& WithVolumeSizeInBytes(long long value) {
146 return *this;
147 }
149
151
155 inline const Aws::String& GetVolumeAttachmentStatus() const { return m_volumeAttachmentStatus; }
156 inline bool VolumeAttachmentStatusHasBeenSet() const { return m_volumeAttachmentStatusHasBeenSet; }
157 template <typename VolumeAttachmentStatusT = Aws::String>
158 void SetVolumeAttachmentStatus(VolumeAttachmentStatusT&& value) {
159 m_volumeAttachmentStatusHasBeenSet = true;
160 m_volumeAttachmentStatus = std::forward<VolumeAttachmentStatusT>(value);
161 }
162 template <typename VolumeAttachmentStatusT = Aws::String>
163 VolumeInfo& WithVolumeAttachmentStatus(VolumeAttachmentStatusT&& value) {
164 SetVolumeAttachmentStatus(std::forward<VolumeAttachmentStatusT>(value));
165 return *this;
166 }
168 private:
169 Aws::String m_volumeARN;
170
171 Aws::String m_volumeId;
172
173 Aws::String m_gatewayARN;
174
175 Aws::String m_gatewayId;
176
177 Aws::String m_volumeType;
178
179 long long m_volumeSizeInBytes{0};
180
181 Aws::String m_volumeAttachmentStatus;
182 bool m_volumeARNHasBeenSet = false;
183 bool m_volumeIdHasBeenSet = false;
184 bool m_gatewayARNHasBeenSet = false;
185 bool m_gatewayIdHasBeenSet = false;
186 bool m_volumeTypeHasBeenSet = false;
187 bool m_volumeSizeInBytesHasBeenSet = false;
188 bool m_volumeAttachmentStatusHasBeenSet = false;
189};
190
191} // namespace Model
192} // namespace StorageGateway
193} // namespace Aws
void SetVolumeARN(VolumeARNT &&value)
Definition VolumeInfo.h:45
const Aws::String & GetVolumeType() const
Definition VolumeInfo.h:119
void SetVolumeAttachmentStatus(VolumeAttachmentStatusT &&value)
Definition VolumeInfo.h:158
VolumeInfo & WithVolumeAttachmentStatus(VolumeAttachmentStatusT &&value)
Definition VolumeInfo.h:163
const Aws::String & GetVolumeAttachmentStatus() const
Definition VolumeInfo.h:155
void SetVolumeType(VolumeTypeT &&value)
Definition VolumeInfo.h:122
VolumeInfo & WithGatewayARN(GatewayARNT &&value)
Definition VolumeInfo.h:87
const Aws::String & GetGatewayId() const
Definition VolumeInfo.h:100
const Aws::String & GetVolumeARN() const
Definition VolumeInfo.h:42
void SetVolumeId(VolumeIdT &&value)
Definition VolumeInfo.h:66
VolumeInfo & WithVolumeARN(VolumeARNT &&value)
Definition VolumeInfo.h:50
AWS_STORAGEGATEWAY_API VolumeInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
VolumeInfo & WithVolumeType(VolumeTypeT &&value)
Definition VolumeInfo.h:127
VolumeInfo & WithVolumeSizeInBytes(long long value)
Definition VolumeInfo.h:144
const Aws::String & GetVolumeId() const
Definition VolumeInfo.h:63
const Aws::String & GetGatewayARN() const
Definition VolumeInfo.h:79
AWS_STORAGEGATEWAY_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_STORAGEGATEWAY_API VolumeInfo(Aws::Utils::Json::JsonView jsonValue)
AWS_STORAGEGATEWAY_API VolumeInfo()=default
void SetGatewayId(GatewayIdT &&value)
Definition VolumeInfo.h:103
void SetGatewayARN(GatewayARNT &&value)
Definition VolumeInfo.h:82
VolumeInfo & WithVolumeId(VolumeIdT &&value)
Definition VolumeInfo.h:71
void SetVolumeSizeInBytes(long long value)
Definition VolumeInfo.h:140
VolumeInfo & WithGatewayId(GatewayIdT &&value)
Definition VolumeInfo.h:108
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue