AWS SDK for C++  0.12.9
AWS SDK for C++
VolumeInfo.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
18 
19 namespace Aws
20 {
21 namespace Utils
22 {
23 namespace Json
24 {
25  class JsonValue;
26 } // namespace Json
27 } // namespace Utils
28 namespace StorageGateway
29 {
30 namespace Model
31 {
32 
37  {
38  public:
39  VolumeInfo();
40  VolumeInfo(const Aws::Utils::Json::JsonValue& jsonValue);
41  VolumeInfo& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
42  Aws::Utils::Json::JsonValue Jsonize() const;
43 
51  inline const Aws::String& GetVolumeARN() const{ return m_volumeARN; }
52 
60  inline void SetVolumeARN(const Aws::String& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
61 
69  inline void SetVolumeARN(Aws::String&& value) { m_volumeARNHasBeenSet = true; m_volumeARN = value; }
70 
78  inline void SetVolumeARN(const char* value) { m_volumeARNHasBeenSet = true; m_volumeARN.assign(value); }
79 
87  inline VolumeInfo& WithVolumeARN(const Aws::String& value) { SetVolumeARN(value); return *this;}
88 
96  inline VolumeInfo& WithVolumeARN(Aws::String&& value) { SetVolumeARN(value); return *this;}
97 
105  inline VolumeInfo& WithVolumeARN(const char* value) { SetVolumeARN(value); return *this;}
106 
113  inline const Aws::String& GetVolumeId() const{ return m_volumeId; }
114 
121  inline void SetVolumeId(const Aws::String& value) { m_volumeIdHasBeenSet = true; m_volumeId = value; }
122 
129  inline void SetVolumeId(Aws::String&& value) { m_volumeIdHasBeenSet = true; m_volumeId = value; }
130 
137  inline void SetVolumeId(const char* value) { m_volumeIdHasBeenSet = true; m_volumeId.assign(value); }
138 
145  inline VolumeInfo& WithVolumeId(const Aws::String& value) { SetVolumeId(value); return *this;}
146 
153  inline VolumeInfo& WithVolumeId(Aws::String&& value) { SetVolumeId(value); return *this;}
154 
161  inline VolumeInfo& WithVolumeId(const char* value) { SetVolumeId(value); return *this;}
162 
163 
164  inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; }
165 
166 
167  inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
168 
169 
170  inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; }
171 
172 
173  inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); }
174 
175 
176  inline VolumeInfo& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;}
177 
178 
179  inline VolumeInfo& WithGatewayARN(Aws::String&& value) { SetGatewayARN(value); return *this;}
180 
181 
182  inline VolumeInfo& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;}
183 
190  inline const Aws::String& GetGatewayId() const{ return m_gatewayId; }
191 
198  inline void SetGatewayId(const Aws::String& value) { m_gatewayIdHasBeenSet = true; m_gatewayId = value; }
199 
206  inline void SetGatewayId(Aws::String&& value) { m_gatewayIdHasBeenSet = true; m_gatewayId = value; }
207 
214  inline void SetGatewayId(const char* value) { m_gatewayIdHasBeenSet = true; m_gatewayId.assign(value); }
215 
222  inline VolumeInfo& WithGatewayId(const Aws::String& value) { SetGatewayId(value); return *this;}
223 
230  inline VolumeInfo& WithGatewayId(Aws::String&& value) { SetGatewayId(value); return *this;}
231 
238  inline VolumeInfo& WithGatewayId(const char* value) { SetGatewayId(value); return *this;}
239 
240 
241  inline const Aws::String& GetVolumeType() const{ return m_volumeType; }
242 
243 
244  inline void SetVolumeType(const Aws::String& value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; }
245 
246 
247  inline void SetVolumeType(Aws::String&& value) { m_volumeTypeHasBeenSet = true; m_volumeType = value; }
248 
249 
250  inline void SetVolumeType(const char* value) { m_volumeTypeHasBeenSet = true; m_volumeType.assign(value); }
251 
252 
253  inline VolumeInfo& WithVolumeType(const Aws::String& value) { SetVolumeType(value); return *this;}
254 
255 
256  inline VolumeInfo& WithVolumeType(Aws::String&& value) { SetVolumeType(value); return *this;}
257 
258 
259  inline VolumeInfo& WithVolumeType(const char* value) { SetVolumeType(value); return *this;}
260 
265  inline long long GetVolumeSizeInBytes() const{ return m_volumeSizeInBytes; }
266 
271  inline void SetVolumeSizeInBytes(long long value) { m_volumeSizeInBytesHasBeenSet = true; m_volumeSizeInBytes = value; }
272 
277  inline VolumeInfo& WithVolumeSizeInBytes(long long value) { SetVolumeSizeInBytes(value); return *this;}
278 
279  private:
280  Aws::String m_volumeARN;
281  bool m_volumeARNHasBeenSet;
282  Aws::String m_volumeId;
283  bool m_volumeIdHasBeenSet;
284  Aws::String m_gatewayARN;
285  bool m_gatewayARNHasBeenSet;
286  Aws::String m_gatewayId;
287  bool m_gatewayIdHasBeenSet;
288  Aws::String m_volumeType;
289  bool m_volumeTypeHasBeenSet;
290  long long m_volumeSizeInBytes;
291  bool m_volumeSizeInBytesHasBeenSet;
292  };
293 
294 } // namespace Model
295 } // namespace StorageGateway
296 } // namespace Aws
void SetGatewayARN(const char *value)
Definition: VolumeInfo.h:173
const Aws::String & GetVolumeARN() const
Definition: VolumeInfo.h:51
VolumeInfo & WithGatewayId(Aws::String &&value)
Definition: VolumeInfo.h:230
long long GetVolumeSizeInBytes() const
Definition: VolumeInfo.h:265
void SetVolumeARN(const char *value)
Definition: VolumeInfo.h:78
VolumeInfo & WithVolumeType(const Aws::String &value)
Definition: VolumeInfo.h:253
const Aws::String & GetVolumeType() const
Definition: VolumeInfo.h:241
VolumeInfo & WithVolumeId(const Aws::String &value)
Definition: VolumeInfo.h:145
VolumeInfo & WithVolumeARN(Aws::String &&value)
Definition: VolumeInfo.h:96
VolumeInfo & WithVolumeType(Aws::String &&value)
Definition: VolumeInfo.h:256
void SetVolumeId(Aws::String &&value)
Definition: VolumeInfo.h:129
const Aws::String & GetGatewayARN() const
Definition: VolumeInfo.h:164
VolumeInfo & WithGatewayARN(Aws::String &&value)
Definition: VolumeInfo.h:179
void SetVolumeType(const Aws::String &value)
Definition: VolumeInfo.h:244
void SetGatewayId(const char *value)
Definition: VolumeInfo.h:214
VolumeInfo & WithVolumeId(Aws::String &&value)
Definition: VolumeInfo.h:153
VolumeInfo & WithGatewayId(const char *value)
Definition: VolumeInfo.h:238
VolumeInfo & WithVolumeARN(const Aws::String &value)
Definition: VolumeInfo.h:87
VolumeInfo & WithVolumeId(const char *value)
Definition: VolumeInfo.h:161
void SetVolumeARN(Aws::String &&value)
Definition: VolumeInfo.h:69
VolumeInfo & WithVolumeType(const char *value)
Definition: VolumeInfo.h:259
void SetGatewayId(Aws::String &&value)
Definition: VolumeInfo.h:206
void SetVolumeType(Aws::String &&value)
Definition: VolumeInfo.h:247
VolumeInfo & WithGatewayARN(const Aws::String &value)
Definition: VolumeInfo.h:176
VolumeInfo & WithVolumeARN(const char *value)
Definition: VolumeInfo.h:105
const Aws::String & GetGatewayId() const
Definition: VolumeInfo.h:190
VolumeInfo & WithGatewayId(const Aws::String &value)
Definition: VolumeInfo.h:222
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
const Aws::String & GetVolumeId() const
Definition: VolumeInfo.h:113
void SetGatewayARN(const Aws::String &value)
Definition: VolumeInfo.h:167
void SetVolumeId(const Aws::String &value)
Definition: VolumeInfo.h:121
VolumeInfo & WithVolumeSizeInBytes(long long value)
Definition: VolumeInfo.h:277
void SetVolumeSizeInBytes(long long value)
Definition: VolumeInfo.h:271
void SetGatewayId(const Aws::String &value)
Definition: VolumeInfo.h:198
void SetVolumeARN(const Aws::String &value)
Definition: VolumeInfo.h:60
VolumeInfo & WithGatewayARN(const char *value)
Definition: VolumeInfo.h:182
#define AWS_STORAGEGATEWAY_API
void SetVolumeId(const char *value)
Definition: VolumeInfo.h:137
void SetGatewayARN(Aws::String &&value)
Definition: VolumeInfo.h:170
JSON (JavaScript Object Notation).
void SetVolumeType(const char *value)
Definition: VolumeInfo.h:250